VerifyDevicePosition
Verifies the integrity of the device's position by determining if it was reported behind a proxy, and by comparing it to an inferred position estimated based on the device's state.
Note
The Location Integrity SDK provides enhanced
features related to device verification, and it is available for use by request.
To get access to the SDK, contact Sales Support
Request Syntax
POST /tracking/v0/trackers/TrackerName
/positions/verify HTTP/1.1
Content-type: application/json
{
"DeviceState": {
"Accuracy": {
"Horizontal": number
},
"CellSignals": {
"LteCellDetails": [
{
"CellId": number
,
"LocalId": {
"Earfcn": number
,
"Pci": number
},
"Mcc": number
,
"Mnc": number
,
"NetworkMeasurements": [
{
"CellId": number
,
"Earfcn": number
,
"Pci": number
,
"Rsrp": number
,
"Rsrq": number
}
],
"NrCapable": boolean
,
"Rsrp": number
,
"Rsrq": number
,
"Tac": number
,
"TimingAdvance": number
}
]
},
"DeviceId": "string
",
"Ipv4Address": "string
",
"Position": [ number
],
"SampleTime": "string
",
"WiFiAccessPoints": [
{
"MacAddress": "string
",
"Rss": number
}
]
},
"DistanceUnit": "string
"
}
URI Request Parameters
The request uses the following URI parameters.
- TrackerName
-
The name of the tracker resource to be associated with verification request.
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
[-._\w]+
Required: Yes
Request Body
The request accepts the following data in JSON format.
- DeviceState
-
The device's state, including position, IP address, cell signals and Wi-Fi access points.
Type: DeviceState object
Required: Yes
- DistanceUnit
-
The distance unit for the verification request.
Default Value:
Kilometers
Type: String
Valid Values:
Kilometers | Miles
Required: No
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"DeviceId": "string",
"DistanceUnit": "string",
"InferredState": {
"Accuracy": {
"Horizontal": number
},
"DeviationDistance": number,
"Position": [ number ],
"ProxyDetected": boolean
},
"ReceivedTime": "string",
"SampleTime": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- DeviceId
-
The device identifier.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 100.
Pattern:
[-._\p{L}\p{N}]+
- DistanceUnit
-
The distance unit for the verification response.
Type: String
Valid Values:
Kilometers | Miles
- InferredState
-
The inferred state of the device, given the provided position, IP address, cellular signals, and Wi-Fi- access points.
Type: InferredState object
- ReceivedTime
-
The timestamp for when the tracker resource received the device position in ISO 8601
format: YYYY-MM-DDThh:mm:ss.sssZ
.Type: Timestamp
- SampleTime
-
The timestamp at which the device's position was determined. Uses ISO 8601
format: YYYY-MM-DDThh:mm:ss.sssZ
.Type: Timestamp
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
The request was denied because of insufficient access or permissions. Check with an administrator to verify your permissions.
HTTP Status Code: 403
- InternalServerException
-
The request has failed to process because of an unknown server error, exception, or failure.
HTTP Status Code: 500
- ResourceNotFoundException
-
The resource that you've entered was not found in your AWS account.
HTTP Status Code: 404
- ThrottlingException
-
The request was denied because of request throttling.
HTTP Status Code: 429
- ValidationException
-
The input failed to meet the constraints specified by the AWS service.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: