POST | /v1/login | Process GAS Authentication |
---|
export enum LoginStatus
{
Authenticated = 'Authenticated',
NotAuthenticated = 'NotAuthenticated',
Error = 'Error',
}
export class LoginResponse
{
public RedirectUrl: string;
public IsAuthenticated: boolean;
public UserToken: string;
public UserId: string;
public UserRoleId: number[];
public DefaultRetailer: string;
public LoginStatus: LoginStatus;
public UserRoleRedirect: string;
public DefaultVehicleType: string;
public EntitlementGroup: string[];
public constructor(init?: Partial<LoginResponse>) { (Object as any).assign(this, init); }
}
export class LoginRequest implements IPost
{
/** @description GAS AuthCode */
// @ApiMember(Description="GAS AuthCode")
public AuthCode: string;
/** @description GAS ErrorCode */
// @ApiMember(Description="GAS ErrorCode")
public ErrorCode: string;
/** @description Client Id */
// @ApiMember(Description="Client Id")
public ClientId: string;
/** @description Secret */
// @ApiMember(Description="Secret")
public Secret: string;
/** @description Callback Url */
// @ApiMember(Description="Callback Url")
public CallbackUrl: string;
/** @description Redirect Url */
// @ApiMember(Description="Redirect Url")
public RedirectUrl: string;
public constructor(init?: Partial<LoginRequest>) { (Object as any).assign(this, init); }
}
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 /v1/login HTTP/1.1
Host: prod-api-auth-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
AuthCode: String,
ErrorCode: String,
ClientId: String,
Secret: String,
CallbackUrl: String,
RedirectUrl: String
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { RedirectUrl: String, IsAuthenticated: False, UserToken: String, UserId: String, UserRoleId: [ 0 ], DefaultRetailer: String, LoginStatus: Authenticated, UserRoleRedirect: String, DefaultVehicleType: String, EntitlementGroup: [ String ] }