Cochrane+ App API

<back to all web services

BackgroundLocationReceived

The following routes are available for this service:
POST/location/background
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using WebService.ServiceModel;
using CommonService.Api.Models.Base;

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.ServiceModel
{
    public partial class ActivityData
    {
        public virtual string type { get; set; }
        public virtual int confidence { get; set; }
    }

    public partial class BackgroundLocationReceived
        : IHasApiKey
    {
        public virtual string ApiKey { get; set; }
        public virtual LocationData location { get; set; }
    }

    public partial class BatteryData
    {
        public virtual double level { get; set; }
        public virtual bool is_charging { get; set; }
    }

    public partial class CoordsData
    {
        public virtual double speed { get; set; }
        public virtual double longitude { get; set; }
        public virtual double latitude { get; set; }
        public virtual double accuracy { get; set; }
        public virtual double altitude { get; set; }
        public virtual double heading { get; set; }
    }

    public partial class ExtrasData
    {
        public virtual int systemUserId { get; set; }
        public virtual Guid deviceId { get; set; }
    }

    public partial class LocationData
    {
        public virtual CoordsData coords { get; set; }
        public virtual ExtrasData extras { get; set; }
        public virtual bool is_moving { get; set; }
        public virtual double odometer { get; set; }
        public virtual string uuid { get; set; }
        public virtual ActivityData activity { get; set; }
        public virtual BatteryData battery { get; set; }
        public virtual DateTime timestamp { get; set; }
    }

}

C# BackgroundLocationReceived 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 /location/background HTTP/1.1 
Host: cochraneplus-api-dev.happen.zone 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<BackgroundLocationReceived xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/WebService.ServiceModel">
  <ApiKey>String</ApiKey>
  <location>
    <activity>
      <confidence>0</confidence>
      <type>String</type>
    </activity>
    <battery>
      <is_charging>false</is_charging>
      <level>0</level>
    </battery>
    <coords>
      <accuracy>0</accuracy>
      <altitude>0</altitude>
      <heading>0</heading>
      <latitude>0</latitude>
      <longitude>0</longitude>
      <speed>0</speed>
    </coords>
    <extras>
      <deviceId>00000000-0000-0000-0000-000000000000</deviceId>
      <systemUserId>0</systemUserId>
    </extras>
    <is_moving>false</is_moving>
    <odometer>0</odometer>
    <timestamp>0001-01-01T00:00:00</timestamp>
    <uuid>String</uuid>
  </location>
</BackgroundLocationReceived>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ApiServiceResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CommonService.Api.Models.Base">
  <Description>String</Description>
  <Heading>String</Heading>
  <ModelState />
  <WasSuccessful>false</WasSuccessful>
</ApiServiceResponse>