| POST | /user/{brand}/{userId}/authorize | Create the authorization for the given external user and for the given POS Codes | The 'CreateUserAuth' API is not implemented for internal users |
|---|
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Richemont.Booster2.PublicApi.Security.ServiceModel;
namespace Richemont.Booster2.PublicApi.Security.ServiceModel
{
public partial class AuthRequest
{
public AuthRequest()
{
roles = new List<Guid>{};
}
///<summary>
///POS Code (only for external users)
///</summary>
[ApiMember(Description="POS Code (only for external users)", IsRequired=true)]
public virtual string posCode { get; set; }
///<summary>
///Roles for users (GUIDs). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'
///</summary>
[ApiMember(Description="Roles for users (GUIDs). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'", IsRequired=true)]
public virtual List<Guid> roles { get; set; }
}
public partial class CreateUserAuth
{
public CreateUserAuth()
{
authRequests = new List<AuthRequest>{};
}
///<summary>
///User's UserID (GUID). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'
///</summary>
[ApiMember(Description="User's UserID (GUID). E.g. '731cd7f3-a781-48bf-b43d-310273895ce2'", IsRequired=true)]
public virtual string userId { get; set; }
///<summary>
///Brand Trigram, e.g. CAR, IWC, VAC
///</summary>
[ApiMember(Description="Brand Trigram, e.g. CAR, IWC, VAC", IsRequired=true)]
public virtual string brand { get; set; }
///<summary>
///Authorization requests for the provided user
///</summary>
[ApiMember(Description="Authorization requests for the provided user", IsRequired=true)]
public virtual List<AuthRequest> authRequests { get; set; }
}
public partial class CreateUserAuthResponse
{
}
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=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
{
}