export class ApiServiceRequest implements IServiceRequest, IHasApiKey, IHasDeviceInfo
{
/** @description The API Key required for authentication */
// @ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)
public apiKey: string;
/** @description Latitude of the user making this request */
// @ApiMember(DataType="double", Description="Latitude of the user making this request")
public latitude: number;
/** @description Longitude of the user making this request */
// @ApiMember(DataType="double", Description="Longitude of the user making this request")
public longitude: number;
public constructor(init?: Partial<ApiServiceRequest>) { (Object as any).assign(this, init); }
}
export class ApiServiceResponse implements IServiceResponse
{
/** @description Information about the response. */
// @ApiMember(Description="Information about the response.", IsRequired=true)
public description: string;
/** @description Heading or summary of the response. */
// @ApiMember(Description="Heading or summary of the response.", IsRequired=true)
public heading: string;
/** @description Did the intended operation for this response complete successfully? */
// @ApiMember(DataType="boolean", Description="Did the intended operation for this response complete successfully?", IsRequired=true)
public wasSuccessful: boolean;
public responseStatus: ResponseStatus;
public constructor(init?: Partial<ApiServiceResponse>) { (Object as any).assign(this, init); }
}
export class ClientData
{
public firstName: string;
public surname: string;
public email: string;
public mobileNumber: string;
public address1: string;
public address2: string;
public city: string;
public dateOfBirth: string;
public sourceOfIncome: string;
public constructor(init?: Partial<ClientData>) { (Object as any).assign(this, init); }
}
export class LoginData
{
public systemUserId: number;
public refreshToken: string;
public hasActivePanicCover: boolean;
public accountInArrears: boolean;
public updateClientInformation: boolean;
public nextPanicDate: string;
public panicReference: string;
public clientData: ClientData;
public constructor(init?: Partial<LoginData>) { (Object as any).assign(this, init); }
}
export class AutoLoginResponse extends ApiServiceResponse
{
public data: LoginData;
public constructor(init?: Partial<AutoLoginResponse>) { super(init); (Object as any).assign(this, init); }
}
export class AutoLogin extends ApiServiceRequest
{
public utcOffset: number;
public systemUserId: number;
public refreshToken: string;
public constructor(init?: Partial<AutoLogin>) { super(init); (Object as any).assign(this, init); }
}
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /json/reply/AutoLogin HTTP/1.1
Host: legalguard-api-dev.happen.zone
Accept: application/json
Content-Type: application/json
Content-Length: length
{"utcOffset":0,"systemUserId":0,"refreshToken":"String","apiKey":"String","latitude":0,"longitude":0}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"data":{"systemUserId":0,"refreshToken":"String","hasActivePanicCover":false,"accountInArrears":false,"updateClientInformation":false,"nextPanicDate":"String","panicReference":"String","clientData":{"firstName":"String","surname":"String","email":"String","mobileNumber":"String","address1":"String","address2":"String","city":"String","dateOfBirth":"String","sourceOfIncome":"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"}}}