Antel Merchandiser App API

<back to all web services

UserLogin

The following routes are available for this service:
POST/user/login
import java.math.*
import java.util.*
import net.servicestack.client.*


open class UserLogin : ApiServiceRequest()
{
    var EmailAddress:String? = null
    var Password:String? = null
    var UtcOffset:Int? = null
    /**
    * The user's push token - used for push messages.
    */
    @ApiMember(Description="The user's push token - used for push messages.")
    var PushPlayerId:String? = null

    /**
    * Refresh token used to auto login the user.
    */
    @ApiMember(Description="Refresh token used to auto login the user.")
    var RefreshToken:String? = null
}

open class ApiServiceRequest : IServiceRequest, IHasApiKey, IHasDeviceInfo
{
    /**
    * The API Key required for authentication
    */
    @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
    var ApiKey:String? = null

    /**
    * Latitude of the user making this request
    */
    @ApiMember(DataType="double", Description="Latitude of the user making this request")
    var Latitude:Double? = null

    /**
    * Longitude of the user making this request
    */
    @ApiMember(DataType="double", Description="Longitude of the user making this request")
    var Longitude:Double? = null
}

open class UserLoginResponse : ApiServiceResponse()
{
    var Data:LoginData? = null
}

open class ApiServiceResponse : IServiceResponse
{
    /**
    * Information about the response.
    */
    @ApiMember(Description="Information about the response.", IsRequired=true)
    var Description:String? = null

    /**
    * Heading or summary of the response.
    */
    @ApiMember(Description="Heading or summary of the response.", IsRequired=true)
    var Heading:String? = null

    /**
    * Did the intended operation for this response complete successfully?
    */
    @ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)
    var WasSuccessful:Boolean? = null

    var ResponseStatus:ResponseStatus? = null
}

open class LoginData
{
    var SystemUserId:Int? = null
    var ClientId:Int? = null
    var VatValue:BigDecimal? = null
    var RefreshToken:String? = null
    var FriendlyName:String? = null
    var Outlets:ArrayList<OutletData> = ArrayList<OutletData>()
    var UpliftRequestSyncInterval:Int? = null
    var EnableReturnOfStock:Boolean? = null
    var EnableTimeKeeping:Boolean? = null
    var EnableCustomerComplaintForm:Boolean? = null
    var ClientLogoUrl:String? = null
    var ClientColor:String? = null
    var ClientName:String? = null
}

open class OutletData
{
    var Id:Int? = null
    var Name:String? = null
    var LastRequestedDate:String? = null
    var HasGeneralUpliftRequest:Boolean? = null
    var UpliftRequestCount:Int? = null
    var AssignedPrincipalIds:ArrayList<Int> = ArrayList<Int>()
    var AssignedRegions:ArrayList<OutletRegionData> = ArrayList<OutletRegionData>()
    var Channel:String? = null
    var NextScheduledDate:String? = null
}

open class OutletRegionData
{
    var PrincipalId:Int? = null
    var Region:String? = null
}

Kotlin UserLogin 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/login HTTP/1.1 
Host: returnit-api-dev.happen.zone 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	EmailAddress: String,
	Password: String,
	UtcOffset: 0,
	PushPlayerId: String,
	RefreshToken: String,
	ApiKey: String,
	Latitude: 0,
	Longitude: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Data: 
	{
		SystemUserId: 0,
		ClientId: 0,
		VatValue: 0,
		RefreshToken: String,
		FriendlyName: String,
		Outlets: 
		[
			{
				
			}
		],
		UpliftRequestSyncInterval: 0,
		EnableReturnOfStock: False,
		EnableTimeKeeping: False,
		EnableCustomerComplaintForm: False,
		ClientLogoUrl: String,
		ClientColor: String,
		ClientName: String
	},
	Description: String,
	Heading: String,
	WasSuccessful: False,
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	}
}