| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| ApplianceId | query | Guid | Yes | Guid of the Appliance this Device is Registering under. |
| DeviceId | query | Guid | Yes | Guid of the Device. If empty the Device will be inserted, if provided the device will be updated. |
| ManufacturerDeviceNumber | query | string | No | The Device manufacturers number. |
| MacAddress | query | string | No | The Device MAC Address. |
| ModelName | query | string | Yes | The Device Model Name. |
| FormFactor | query | string | Yes | The Device Form, e.g Phone | Tablet. |
| Brand | query | string | No | The Device Brand. |
| Dimensions | query | string | No | The Device Dimensions (Height x Width x Depth). |
| DisplayResolutionWidthPixels | query | int | No | The Device display resolution width in pixels. |
| DisplayResolutionHeightPixels | query | int | No | The Device display resolution height in pixels. |
| DisplaySizeWidthInches | query | decimal | No | The Device display width size in inches. |
| DisplaySizeHeightInches | query | decimal | No | The Device display height size in inches. |
| OperatingSystem | query | string | No | The Device operating system. |
| OperatingSystemVersion | query | string | No | The Device operating system version. |
| IpAddress | query | string | No | The Device IP Address. |
| Notes | query | string | No | Any Notes about the device. |
| TotalMemorySize | query | string | No | Total memory size available (in bytes). |
| CellularProviderName | query | string | No | The Network provider name. |
| ISOCountryCode | query | string | No | The ISO Country Code of the country the device is currently located in. |
| MobileCountryCode | query | string | No | The Mobile Country Code the device is currently located in. |
| MobileNetworkCode | query | string | No | The Mobile Network Code the device is currently using. |
| LanguageCodeIdentifier | query | string | No | The Language Code Identifier that represents the language used on the device. |
| LastKnownTimeZone | query | string | No | The name of the Timezone the device was last used in. |
| LastKnownTimeZoneOffset | query | string | No | The UTC Offset of the Timezone the device was last used in. Formatted as +-##:## |
| Latitude | query | double | Yes | The latitude the device was last located at. |
| Longitude | query | double | Yes | The longitude the device was last located at. |
| InstanceSeed | query | int | Yes | The current value of InstanceSeed that the device has stored. |
| InstanceCounterLastValue | query | int | Yes | The current value of InstanceCounterLastValue that the device has stored |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DeviceId | query | Guid | No | Guid representing the saved Device |
| DeviceType | query | DeviceTypeModel | No | Details of the Type of Device |
| CurrentHistory | query | DeviceHistoryModel | No | Current saved settings of the Device |
| ModelName | query | string | Yes | The Device Model Name. |
| ModelNumber | query | string | No | The Device model number. |
| SerialNumber | query | string | No | The Device serial number. |
| ManufacturerDeviceNumber | query | string | No | The Device manufacturers number. |
| MacAddress | query | string | No | The Device MAC Address. |
| InstanceSeed | query | int | Yes | The current value of InstanceSeed that the device has stored. If InstanceCounterLastValue has gone over 99999, this will contain a new seed value for the device. |
| InstanceCounterLastValue | query | int | Yes | The current value of InstanceCounterLastValue that the device has stored |
| ResponseStatus | query | ResponseStatus | No | ServiceStack ResponseStatus. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DeviceTypeId | query | Guid | No | Guid representing the saved Device Type |
| DeviceClassId | query | Guid | No | Guid representing the saved Device Class |
| DeviceClassName | query | string | No | The Device Class Name |
| Brand | query | string | No | The Device Brand. |
| ModelName | query | string | Yes | The Device Model Name. |
| FormFactor | query | string | No | The Device Form, e.g Phone | Tablet. |
| Dimensions | query | string | No | The Device Dimensions (Height x Width x Depth). |
| DisplayResolutionWidthPixels | query | int | No | The Device display resolution width in pixels. |
| DisplayResolutionHeightPixels | query | int | No | The Device display resolution height in pixels. |
| DisplaySizeWidthInches | query | decimal | No | The Device display width size in inches. |
| DisplaySizeHeightInches | query | decimal | No | The Device display height size in inches. |
| Name | Parameter | Data Type | Required | Description |
|---|---|---|---|---|
| DeviceHistoryId | query | Guid | No | Guid representing the current Device History |
| PrimaryDeviceHistoryDeviceConfigurationId | query | Guid | No | Guid representing the current Device History Device Configuration record. |
| DeviceName | query | string | No | The Device name. |
| OperatingSystem | query | string | No | The Device operating system. |
| OperatingSystemVersion | query | string | No | The Device operating system version. |
| IpAddress | query | string | No | The Device IP Address. |
| Notes | query | string | No | Any Notes about the device. |
| TotalMemorySize | query | string | No | Total memory size available (in bytes). |
| CellularProviderName | query | string | No | The Network provider name. |
| MobileCountryCode | query | string | No | The Mobile Country Code the device is currently located in. |
| MobileNetworkCode | query | string | No | The Mobile Network Code the device is currently using. |
| LanguageCodeIdentifier | query | string | No | The Language Code Identifier that represents the language used on the device. |
| Latitude | query | double | No | The latitude the device was last located at. |
| Longitude | query | double | No | The longitude the device was last located at. |
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/RegisterDevice HTTP/1.1
Host: pfapi.pstpf.com.au
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ManufacturerDeviceNumber: String,
MacAddress: String,
ModelName: String,
FormFactor: String,
Brand: String,
Dimensions: String,
DisplayResolutionWidthPixels: 0,
DisplayResolutionHeightPixels: 0,
DisplaySizeWidthInches: 0,
DisplaySizeHeightInches: 0,
OperatingSystem: String,
OperatingSystemVersion: String,
IpAddress: String,
Notes: String,
TotalMemorySize: 0,
CellularProviderName: String,
ISOCountryCode: String,
MobileCountryCode: String,
MobileNetworkCode: String,
LanguageCodeIdentifier: String,
LastKnownTimeZone: String,
LastKnownTimeZoneOffset: String,
Latitude: 0,
Longitude: 0,
InstanceSeed: 0,
InstanceCounterLastValue: 0
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
DeviceType:
{
DeviceClassName: String,
Brand: String,
ModelName: String,
FormFactor: String,
Dimensions: String,
DisplayResolutionWidthPixels: 0,
DisplayResolutionHeightPixels: 0,
DisplaySizeWidthInches: 0,
DisplaySizeHeightInches: 0
},
CurrentHistory:
{
DeviceName: String,
OperatingSystem: String,
OperatingSystemVersion: String,
IpAddress: String,
Notes: String,
TotalMemorySize: 0,
CellularProviderName: String,
MobileCountryCode: String,
MobileNetworkCode: String,
LanguageCodeIdentifier: String,
Latitude: 0,
Longitude: 0
},
ModelName: String,
ModelNumber: String,
SerialNumber: String,
ManufacturerDeviceNumber: String,
MacAddress: String,
InstanceSeed: 0,
InstanceCounterLastValue: 0,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}