Richemont.Booster2.PublicApi

<back to all web services

CreateUserAuth

Requires Authentication
The following routes are available for this service:
POST/user/{brand}/{userId}/authorizeCreate the authorization for the given external user and for the given POS CodesThe 'CreateUserAuth' API is not implemented for internal users
import Foundation
import ServiceStack

public class CreateUserAuth : Codable
{
    /**
    * User's UserID (GUID). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'
    */
    // @ApiMember(Description="User's UserID (GUID). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'", IsRequired=true)
    public var userId:String

    /**
    * Brand Trigram, e.g. CAR, IWC, VAC
    */
    // @ApiMember(Description="Brand Trigram, e.g. CAR, IWC, VAC", IsRequired=true)
    public var brand:String

    /**
    * Authorization requests for the provided user
    */
    // @ApiMember(Description="Authorization requests for the provided user", IsRequired=true)
    public var authRequests:[AuthRequest] = []

    required public init(){}
}

public class AuthRequest : Codable
{
    /**
    * POS Code (only for external users)
    */
    // @ApiMember(Description="POS Code (only for external users)", IsRequired=true)
    public var posCode:String

    /**
    * Roles for users (GUIDs). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'
    */
    // @ApiMember(Description="Roles for users (GUIDs). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'", IsRequired=true)
    public var roles:[String] = []

    required public init(){}
}

public class CreateUserAuthResponse : Codable
{
    required public init(){}
}


Swift CreateUserAuth DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /user/{brand}/{userId}/authorize HTTP/1.1 
Host: dev-api-booster.richemont.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	userId: String,
	brand: String,
	authRequests: 
	[
		{
			posCode: String,
			roles: 
			[
				00000000000000000000000000000000
			]
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	
}