| POST | /principal/check |
|---|
namespace WebService.AppApi.Models
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ApiServiceResponse() =
///<summary>
///Information about the response.
///</summary>
[<ApiMember(Description="Information about the response.", IsRequired=true)>]
member val Description:String = null with get,set
///<summary>
///Heading or summary of the response.
///</summary>
[<ApiMember(Description="Heading or summary of the response.", IsRequired=true)>]
member val Heading:String = null with get,set
///<summary>
///Did the intended operation for this response complete successfully?
///</summary>
[<ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)>]
member val WasSuccessful:Boolean = new Boolean() with get,set
member val ResponseStatus:ResponseStatus = null with get,set
[<AllowNullLiteral>]
type PrincipalAppSync() =
member val PrincipalId:Int32 = new Int32() with get,set
member val LastUpdated:String = null with get,set
[<AllowNullLiteral>]
type UnitOfMeasureData() =
member val Id:Int32 = new Int32() with get,set
member val Name:String = null with get,set
[<AllowNullLiteral>]
type AuthRuleData() =
member val FromValue:Double = new Double() with get,set
member val ToValue:Double = new Double() with get,set
member val Allow:Boolean = new Boolean() with get,set
member val AuthRequired:Boolean = new Boolean() with get,set
member val Region:String = null with get,set
member val Channel:String = null with get,set
member val UnitOfMeasure:UnitOfMeasureData = null with get,set
[<AllowNullLiteral>]
type PrincipalAuthRuleData() =
member val PrincipalId:Int32 = new Int32() with get,set
member val ValueAuthRules:ResizeArray<AuthRuleData> = new ResizeArray<AuthRuleData>() with get,set
member val UnitAuthRules:ResizeArray<AuthRuleData> = new ResizeArray<AuthRuleData>() with get,set
[<AllowNullLiteral>]
type CheckPrincipalsResponse() =
inherit ApiServiceResponse()
member val PrincipalsToUpdate:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set
member val PrincipalAppSyncData:ResizeArray<PrincipalAppSync> = new ResizeArray<PrincipalAppSync>() with get,set
member val AuthRules:ResizeArray<PrincipalAuthRuleData> = new ResizeArray<PrincipalAuthRuleData>() with get,set
[<AllowNullLiteral>]
type ApiServiceRequest() =
///<summary>
///The API Key required for authentication
///</summary>
[<ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)>]
member val ApiKey:String = null with get,set
///<summary>
///Latitude of the user making this request
///</summary>
[<ApiMember(DataType="double", Description="Latitude of the user making this request")>]
member val Latitude:Double = new Double() with get,set
///<summary>
///Longitude of the user making this request
///</summary>
[<ApiMember(DataType="double", Description="Longitude of the user making this request")>]
member val Longitude:Double = new Double() with get,set
[<AllowNullLiteral>]
type CheckPrincipals() =
inherit ApiServiceRequest()
member val Principals:ResizeArray<PrincipalAppSync> = new ResizeArray<PrincipalAppSync>() with get,set
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 /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
}
}
}