namespace WebService.ServiceModel
open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
[<AllowNullLiteral>]
type ApiServiceResponse() =
member val Description:String = null with get,set
member val Heading:String = null with get,set
member val WasSuccessful:Boolean = new Boolean() with get,set
member val ModelState:Object = null with get,set
[<Flags>]
type IntegrationProviderType =
| None = 0
| EA = 1
| IlluminaHubProtectMe = 2
| MyLegalHand = 3
| AccidentAngels = 4
| EmergencyServices = 5
| MightyMobile = 6
| Pulsit = 7
| Bolt = 8
[<AllowNullLiteral>]
type SystemUserProductAttachmentData() =
member val Id:Int32 = new Int32() with get,set
member val FileName:String = null with get,set
member val MainFileUrl:String = null with get,set
member val ThumbnailUrl:String = null with get,set
member val IsVideo:Boolean = new Boolean() with get,set
member val IsImage:Boolean = new Boolean() with get,set
member val IsPdf:Boolean = new Boolean() with get,set
[<AllowNullLiteral>]
type SystemUserProductData() =
member val IntegrationType:IntegrationProviderType = new IntegrationProviderType() with get,set
member val ProductId:Int32 = new Int32() with get,set
member val Name:String = null with get,set
member val NameAfrikaans:String = null with get,set
member val PanicId:Int64 = new Int64() with get,set
member val UserHasProduct:Boolean = new Boolean() with get,set
member val CanActivate:Boolean = new Boolean() with get,set
member val Enquired:Boolean = new Boolean() with get,set
member val DashImage:String = null with get,set
member val ShowOnDash:Boolean = new Boolean() with get,set
member val ActionUrl:String = null with get,set
member val Attachments:ResizeArray<SystemUserProductAttachmentData> = new ResizeArray<SystemUserProductAttachmentData>() with get,set
member val DescriptionEng:String = null with get,set
member val SummaryEng:String = null with get,set
member val DescriptionAfr:String = null with get,set
member val SummaryAfr:String = null with get,set
[<AllowNullLiteral>]
type DependentData() =
member val DependentId:Int32 = new Int32() with get,set
member val FirstName:String = null with get,set
member val Surname:String = null with get,set
member val MobileNumber:String = null with get,set
member val Email:String = null with get,set
member val IdNumber:String = null with get,set
[<AllowNullLiteral>]
type LoginData() =
member val SystemUserId:Int32 = new Int32() with get,set
member val RefreshToken:String = null with get,set
member val FirstName:String = null with get,set
member val IsDependent:Boolean = new Boolean() with get,set
member val FullName:String = null with get,set
member val AllProducts:ResizeArray<SystemUserProductData> = new ResizeArray<SystemUserProductData>() with get,set
member val UserProducts:ResizeArray<SystemUserProductData> = new ResizeArray<SystemUserProductData>() with get,set
member val OtherProducts:ResizeArray<SystemUserProductData> = new ResizeArray<SystemUserProductData>() with get,set
member val ContactNumber:String = null with get,set
member val Dependents:ResizeArray<DependentData> = new ResizeArray<DependentData>() with get,set
member val UnreadMessageCount:Int32 = new Int32() with get,set
member val PendingFeedbackIds:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set
[<AllowNullLiteral>]
type ConfirmOtpResponse() =
inherit ApiServiceResponse()
member val Data:LoginData = null with get,set
member val MustSetPin:Boolean = new Boolean() 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 ConfirmOtp() =
inherit ApiServiceRequest()
member val SystemUserId:Int32 = new Int32() with get,set
member val Otp:String = null with get,set
member val UtcOffset:Int32 = new Int32() 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 /jsv/reply/ConfirmOtp HTTP/1.1
Host: galaxymobile.api.dev.86degrees.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
SystemUserId: 0,
Otp: String,
UtcOffset: 0,
ApiKey: String,
Latitude: 0,
Longitude: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Data:
{
SystemUserId: 0,
RefreshToken: String,
FirstName: String,
IsDependent: False,
FullName: String,
AllProducts:
[
{
IntegrationType: 0,
ProductId: 0,
Name: String,
NameAfrikaans: String,
PanicId: 0,
UserHasProduct: False,
CanActivate: False,
Enquired: False,
DashImage: String,
ShowOnDash: False,
ActionUrl: String,
Attachments:
[
{
Id: 0,
FileName: String,
MainFileUrl: String,
ThumbnailUrl: String,
IsVideo: False,
IsImage: False,
IsPdf: False
}
],
DescriptionEng: String,
SummaryEng: String,
DescriptionAfr: String,
SummaryAfr: String
}
],
UserProducts:
[
{
IntegrationType: 0,
ProductId: 0,
Name: String,
NameAfrikaans: String,
PanicId: 0,
UserHasProduct: False,
CanActivate: False,
Enquired: False,
DashImage: String,
ShowOnDash: False,
ActionUrl: String,
Attachments:
[
{
Id: 0,
FileName: String,
MainFileUrl: String,
ThumbnailUrl: String,
IsVideo: False,
IsImage: False,
IsPdf: False
}
],
DescriptionEng: String,
SummaryEng: String,
DescriptionAfr: String,
SummaryAfr: String
}
],
OtherProducts:
[
{
IntegrationType: 0,
ProductId: 0,
Name: String,
NameAfrikaans: String,
PanicId: 0,
UserHasProduct: False,
CanActivate: False,
Enquired: False,
DashImage: String,
ShowOnDash: False,
ActionUrl: String,
Attachments:
[
{
Id: 0,
FileName: String,
MainFileUrl: String,
ThumbnailUrl: String,
IsVideo: False,
IsImage: False,
IsPdf: False
}
],
DescriptionEng: String,
SummaryEng: String,
DescriptionAfr: String,
SummaryAfr: String
}
],
ContactNumber: String,
Dependents:
[
{
DependentId: 0,
FirstName: String,
Surname: String,
MobileNumber: String,
Email: String,
IdNumber: String
}
],
UnreadMessageCount: 0,
PendingFeedbackIds:
[
0
]
},
MustSetPin: False,
Description: String,
Heading: String,
WasSuccessful: False,
ModelState: {}
}