Antel Merchandiser App API

<back to all web services

CheckPrincipals

Requires Authentication
The following routes are available for this service:
POST/principal/check
import java.math.*
import java.util.*
import net.servicestack.client.*


open class CheckPrincipals : ApiServiceRequest()
{
    var Principals:ArrayList<PrincipalAppSync> = ArrayList<PrincipalAppSync>()
}

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 PrincipalAppSync
{
    var PrincipalId:Int? = null
    var LastUpdated:String? = null
}

open class CheckPrincipalsResponse : ApiServiceResponse()
{
    var PrincipalsToUpdate:ArrayList<Int> = ArrayList<Int>()
    var PrincipalAppSyncData:ArrayList<PrincipalAppSync> = ArrayList<PrincipalAppSync>()
    var AuthRules:ArrayList<PrincipalAuthRuleData> = ArrayList<PrincipalAuthRuleData>()
}

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 PrincipalAuthRuleData
{
    var PrincipalId:Int? = null
    var ValueAuthRules:ArrayList<AuthRuleData> = ArrayList<AuthRuleData>()
    var UnitAuthRules:ArrayList<AuthRuleData> = ArrayList<AuthRuleData>()
}

open class AuthRuleData
{
    var FromValue:Double? = null
    var ToValue:Double? = null
    var Allow:Boolean? = null
    var AuthRequired:Boolean? = null
    var Region:String? = null
    var Channel:String? = null
    var UnitOfMeasure:UnitOfMeasureData? = null
}

open class UnitOfMeasureData
{
    var Id:Int? = null
    var Name:String? = null
}

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

{
	Principals: 
	[
		{
			PrincipalId: 0,
			LastUpdated: String
		}
	],
	ApiKey: String,
	Latitude: 0,
	Longitude: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	PrincipalsToUpdate: 
	[
		0
	],
	PrincipalAppSyncData: 
	[
		{
			PrincipalId: 0,
			LastUpdated: String
		}
	],
	AuthRules: 
	[
		{
			PrincipalId: 0,
			ValueAuthRules: 
			[
				{
					
				}
			],
			UnitAuthRules: 
			[
				{
					
				}
			]
		}
	],
	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
		}
	}
}