Mercedes.Auth.API

<back to all web services

LoginRequest

The following routes are available for this service:
POST/v1/loginProcess GAS Authentication
namespace Mercedes.Auth.API.ServiceModel

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    type LoginStatus =
        | Authenticated = 0
        | NotAuthenticated = 1
        | Error = 2

    [<AllowNullLiteral>]
    type LoginResponse() = 
        member val RedirectUrl:String = null with get,set
        member val IsAuthenticated:Boolean = new Boolean() with get,set
        member val UserToken:String = null with get,set
        member val UserId:String = null with get,set
        member val UserRoleId:ResizeArray<Int32> = null with get,set
        member val DefaultRetailer:String = null with get,set
        member val LoginStatus:LoginStatus = new LoginStatus() with get,set
        member val UserRoleRedirect:String = null with get,set
        member val DefaultVehicleType:String = null with get,set
        member val EntitlementGroup:ResizeArray<String> = null with get,set

    [<AllowNullLiteral>]
    type LoginRequest() = 
        interface IPost
        ///<summary>
        ///GAS AuthCode
        ///</summary>
        [<ApiMember(Description="GAS AuthCode")>]
        member val AuthCode:String = null with get,set

        ///<summary>
        ///GAS ErrorCode
        ///</summary>
        [<ApiMember(Description="GAS ErrorCode")>]
        member val ErrorCode:String = null with get,set

        ///<summary>
        ///Client Id
        ///</summary>
        [<ApiMember(Description="Client Id")>]
        member val ClientId:String = null with get,set

        ///<summary>
        ///Secret
        ///</summary>
        [<ApiMember(Description="Secret")>]
        member val Secret:String = null with get,set

        ///<summary>
        ///Callback Url
        ///</summary>
        [<ApiMember(Description="Callback Url")>]
        member val CallbackUrl:String = null with get,set

        ///<summary>
        ///Redirect Url
        ///</summary>
        [<ApiMember(Description="Redirect Url")>]
        member val RedirectUrl:String = null with get,set

F# LoginRequest 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 /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
	]
}