import java.math.*
import java.util.*
import net.servicestack.client.*
open class ConfirmOtp : ApiServiceRequest()
{
var SystemUserId:Int? = null
var Otp:String? = null
var UtcOffset:Int? = null
}
open class ApiServiceRequest : IServiceRequest, IHasApiKey, IHasDeviceInfo, IHasClientId
{
/**
* 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 ConfirmOtpResponse : ApiServiceResponse()
{
var Data:LoginData? = null
var MustSetPin:Boolean? = null
}
open class ApiServiceResponse : IServiceResponse
{
var Description:String? = null
var Heading:String? = null
var WasSuccessful:Boolean? = null
var ModelState:Object? = null
}
open class LoginData
{
var SystemUserId:Int? = null
var RefreshToken:String? = null
var FirstName:String? = null
var IsDependent:Boolean? = null
var FullName:String? = null
var AllProducts:ArrayList<SystemUserProductData> = ArrayList<SystemUserProductData>()
var UserProducts:ArrayList<SystemUserProductData> = ArrayList<SystemUserProductData>()
var OtherProducts:ArrayList<SystemUserProductData> = ArrayList<SystemUserProductData>()
var ContactNumber:String? = null
var Dependents:ArrayList<DependentData> = ArrayList<DependentData>()
var UnreadMessageCount:Int? = null
var PendingFeedbackIds:ArrayList<Int> = ArrayList<Int>()
}
open class SystemUserProductData
{
var IntegrationType:IntegrationProviderType? = null
var ProductId:Int? = null
var Name:String? = null
var NameAfrikaans:String? = null
var PanicId:Long? = null
var UserHasProduct:Boolean? = null
var CanActivate:Boolean? = null
var Enquired:Boolean? = null
var DashImage:String? = null
var ShowOnDash:Boolean? = null
var ActionUrl:String? = null
var Attachments:ArrayList<SystemUserProductAttachmentData> = ArrayList<SystemUserProductAttachmentData>()
var DescriptionEng:String? = null
var SummaryEng:String? = null
var DescriptionAfr:String? = null
var SummaryAfr:String? = null
}
@Flags()
enum class IntegrationProviderType(val value:Int)
{
@SerializedName("0") None(0),
@SerializedName("1") Ea(1),
@SerializedName("2") IlluminaHubProtectMe(2),
@SerializedName("3") MyLegalHand(3),
@SerializedName("4") AccidentAngels(4),
@SerializedName("5") EmergencyServices(5),
@SerializedName("6") MightyMobile(6),
@SerializedName("7") Pulsit(7),
@SerializedName("8") Bolt(8),
}
open class SystemUserProductAttachmentData
{
var Id:Int? = null
var FileName:String? = null
var MainFileUrl:String? = null
var ThumbnailUrl:String? = null
var IsVideo:Boolean? = null
var IsImage:Boolean? = null
var IsPdf:Boolean? = null
}
open class DependentData
{
var DependentId:Int? = null
var FirstName:String? = null
var Surname:String? = null
var MobileNumber:String? = null
var Email:String? = null
var IdNumber:String? = null
}
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: {}
}