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.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using WebService.ClientServiceModel.User;
using WebService.ClientServiceModel.Base;
using CommonService.Api.Models.Base;
using BusinessLogic.Entities;

namespace BusinessLogic.Entities
{
    public enum IntegrationProviderType
    {
        None = 0,
        EA = 1,
        IlluminaHubProtectMe = 2,
        MyLegalHand = 3,
        AccidentAngels = 4,
        EmergencyServices = 5,
        MightyMobile = 6,
        Pulsit = 7,
        Bolt = 8,
    }

}

namespace CommonService.Api.Models.Base
{
    public partial class ApiServiceResponse
        : IServiceResponse
    {
        public virtual string Description { get; set; }
        public virtual string Heading { get; set; }
        public virtual bool WasSuccessful { get; set; }
        public virtual Object ModelState { get; set; }
    }

}

namespace WebService.ClientServiceModel.Base
{
    public partial class ApiServiceRequest
        : IServiceRequest, IHasApiKey
    {
        ///<summary>
        ///The API Key required for authentication
        ///</summary>
        [ApiMember(DataType="string", Description="The API Key required for authentication", IsRequired=true)]
        public virtual string ApiKey { get; set; }
    }

}

namespace WebService.ClientServiceModel.User
{
    public partial class 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)]
        public virtual int DependentId { get; set; }

        ///<summary>
        ///Dependent's first name.
        ///</summary>
        [ApiMember(Description="Dependent's first name.", IsRequired=true)]
        public virtual string FirstName { get; set; }

        ///<summary>
        ///Dependent's surname.
        ///</summary>
        [ApiMember(Description="Dependent's surname.", IsRequired=true)]
        public virtual string Surname { get; set; }

        ///<summary>
        ///Dependent's mobile contact number.
        ///</summary>
        [ApiMember(Description="Dependent's mobile contact number.", IsRequired=true)]
        public virtual string MobileNumber { get; set; }

        ///<summary>
        ///Dependent's email address.
        ///</summary>
        [ApiMember(Description="Dependent's email address.", IsRequired=true)]
        public virtual string Email { get; set; }

        ///<summary>
        ///Depdendent's ID number.
        ///</summary>
        [ApiMember(Description="Depdendent's ID number.", IsRequired=true)]
        public virtual string IdNumber { get; set; }
    }

    public partial class UserLoginRequest
        : ApiServiceRequest
    {
        ///<summary>
        ///ID Number of the user to log in.
        ///</summary>
        [ApiMember(Description="ID Number of the user to log in.", IsRequired=true)]
        public virtual string IdNumber { get; set; }
    }

    public partial class UserLoginResponse
        : ApiServiceResponse
    {
        public UserLoginResponse()
        {
            UserProductInformation = new List<UserProductData>{};
            Dependents = new List<DependentData>{};
        }

        ///<summary>
        ///List of products the user has access to.
        ///</summary>
        [ApiMember(Description="List of products the user has access to.")]
        public virtual List<UserProductData> UserProductInformation { get; set; }

        ///<summary>
        ///List of all dependents linked to this user.
        ///</summary>
        [ApiMember(Description="List of all dependents linked to this user.")]
        public virtual List<DependentData> Dependents { get; set; }
    }

    public partial class UserProductAttachmentData
    {
        public virtual string FileName { get; set; }
        public virtual string MainFileUrl { get; set; }
        public virtual string ThumbnailUrl { get; set; }
        public virtual bool IsVideo { get; set; }
        public virtual bool IsImage { get; set; }
        public virtual bool IsPdf { get; set; }
    }

    public partial class UserProductData
    {
        public UserProductData()
        {
            Attachments = new List<UserProductAttachmentData>{};
        }

        public virtual IntegrationProviderType IntegrationType { get; set; }
        public virtual int ProductId { get; set; }
        public virtual string Name { get; set; }
        public virtual string NameAfrikaans { get; set; }
        public virtual string DashImageUrl { get; set; }
        public virtual string ActionUrl { get; set; }
        public virtual List<UserProductAttachmentData> Attachments { get; set; }
        public virtual string DescriptionEng { get; set; }
        public virtual string SummaryEng { get; set; }
        public virtual string DescriptionAfr { get; set; }
        public virtual string SummaryAfr { get; set; }
    }

}

C# UserLoginRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

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: application/xml
Content-Type: application/xml
Content-Length: length

<UserLoginRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.User">
  <ApiKey xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.Base">String</ApiKey>
  <IdNumber>String</IdNumber>
</UserLoginRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<UserLoginResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ClientServiceModel.User">
  <Description xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Description>
  <Heading xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">String</Heading>
  <ModelState xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base" />
  <WasSuccessful xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">false</WasSuccessful>
  <Dependents>
    <DependentData>
      <DependentId>0</DependentId>
      <Email>String</Email>
      <FirstName>String</FirstName>
      <IdNumber>String</IdNumber>
      <MobileNumber>String</MobileNumber>
      <Surname>String</Surname>
    </DependentData>
  </Dependents>
  <UserProductInformation>
    <UserProductData>
      <ActionUrl>String</ActionUrl>
      <Attachments>
        <UserProductAttachmentData>
          <FileName>String</FileName>
          <IsImage>false</IsImage>
          <IsPdf>false</IsPdf>
          <IsVideo>false</IsVideo>
          <MainFileUrl>String</MainFileUrl>
          <ThumbnailUrl>String</ThumbnailUrl>
        </UserProductAttachmentData>
      </Attachments>
      <DashImageUrl>String</DashImageUrl>
      <DescriptionAfr>String</DescriptionAfr>
      <DescriptionEng>String</DescriptionEng>
      <IntegrationType>None</IntegrationType>
      <Name>String</Name>
      <NameAfrikaans>String</NameAfrikaans>
      <ProductId>0</ProductId>
      <SummaryAfr>String</SummaryAfr>
      <SummaryEng>String</SummaryEng>
    </UserProductData>
  </UserProductInformation>
</UserLoginResponse>