GalaxyMobile Client API

<back to all web services

UserLoginRequest

The following routes are available for this service:
POST/user/loginCheck that the user exists on Galaxy and set up their account and services.
namespace BusinessLogic.Entities

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

    type IntegrationProviderType =
        | None = 0
        | EA = 1
        | IlluminaHubProtectMe = 2
        | MyLegalHand = 3
        | AccidentAngels = 4
        | EmergencyServices = 5
        | MightyMobile = 6
        | Pulsit = 7
        | Bolt = 8

    [<AllowNullLiteral>]
    type UserProductAttachmentData() = 
        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 UserProductData() = 
        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 DashImageUrl:String = null with get,set
        member val ActionUrl:String = null with get,set
        member val Attachments:ResizeArray<UserProductAttachmentData> = new ResizeArray<UserProductAttachmentData>() 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() = 
        ///<summary>
        ///Dependent's Galaxy Id used for referring to or deleting.
        ///</summary>
        [<ApiMember(Description="Dependent's Galaxy Id used for referring to or deleting.", IsRequired=true)>]
        member val DependentId:Int32 = new Int32() with get,set

        ///<summary>
        ///Dependent's first name.
        ///</summary>
        [<ApiMember(Description="Dependent's first name.", IsRequired=true)>]
        member val FirstName:String = null with get,set

        ///<summary>
        ///Dependent's surname.
        ///</summary>
        [<ApiMember(Description="Dependent's surname.", IsRequired=true)>]
        member val Surname:String = null with get,set

        ///<summary>
        ///Dependent's mobile contact number.
        ///</summary>
        [<ApiMember(Description="Dependent's mobile contact number.", IsRequired=true)>]
        member val MobileNumber:String = null with get,set

        ///<summary>
        ///Dependent's email address.
        ///</summary>
        [<ApiMember(Description="Dependent's email address.", IsRequired=true)>]
        member val Email:String = null with get,set

        ///<summary>
        ///Depdendent's ID number.
        ///</summary>
        [<ApiMember(Description="Depdendent's ID number.", IsRequired=true)>]
        member val IdNumber:String = null with get,set

    [<AllowNullLiteral>]
    type UserLoginResponse() = 
        inherit ApiServiceResponse()
        ///<summary>
        ///List of products the user has access to.
        ///</summary>
        [<ApiMember(Description="List of products the user has access to.")>]
        member val UserProductInformation:ResizeArray<UserProductData> = new ResizeArray<UserProductData>() with get,set

        ///<summary>
        ///List of all dependents linked to this user.
        ///</summary>
        [<ApiMember(Description="List of all dependents linked to this user.")>]
        member val Dependents:ResizeArray<DependentData> = new ResizeArray<DependentData>() 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

    [<AllowNullLiteral>]
    type UserLoginRequest() = 
        inherit ApiServiceRequest()
        ///<summary>
        ///ID Number of the user to log in.
        ///</summary>
        [<ApiMember(Description="ID Number of the user to log in.", IsRequired=true)>]
        member val IdNumber:String = null with get,set

F# UserLoginRequest 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 /user/login HTTP/1.1 
Host: galaxymobile.api.client.prod.86degrees.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	IdNumber: String,
	ApiKey: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	UserProductInformation: 
	[
		{
			IntegrationType: 0,
			ProductId: 0,
			Name: String,
			NameAfrikaans: String,
			DashImageUrl: String,
			ActionUrl: String,
			Attachments: 
			[
				{
					FileName: String,
					MainFileUrl: String,
					ThumbnailUrl: String,
					IsVideo: False,
					IsImage: False,
					IsPdf: False
				}
			],
			DescriptionEng: String,
			SummaryEng: String,
			DescriptionAfr: String,
			SummaryAfr: String
		}
	],
	Dependents: 
	[
		{
			DependentId: 0,
			FirstName: String,
			Surname: String,
			MobileNumber: String,
			Email: String,
			IdNumber: String
		}
	],
	Description: String,
	Heading: String,
	WasSuccessful: False,
	ModelState: {}
}