BatchEvaluateGeofences - Amazon Location Service

BatchEvaluateGeofences

Evaluates device positions against the geofence geometries from a given geofence collection.

This operation always returns an empty response because geofences are asynchronously evaluated. The evaluation determines if the device has entered or exited a geofenced area, and then publishes one of the following events to Amazon EventBridge:

  • ENTER if Amazon Location determines that the tracked device has entered a geofenced area.

  • EXIT if Amazon Location determines that the tracked device has exited a geofenced area.

Note

The last geofence that a device was observed within is tracked for 30 days after the most recent device position update.

Note

Geofence evaluation uses the given device position. It does not account for the optional Accuracy of a DevicePositionUpdate.

Note

The DeviceID is used as a string to represent the device. You do not need to have a Tracker associated with the DeviceID.

Request Syntax

POST /geofencing/v0/collections/CollectionName/positions HTTP/1.1 Content-type: application/json { "DevicePositionUpdates": [ { "Accuracy": { "Horizontal": number }, "DeviceId": "string", "Position": [ number ], "PositionProperties": { "string" : "string" }, "SampleTime": "string" } ] }

URI Request Parameters

The request uses the following URI parameters.

CollectionName

The geofence collection used in evaluating the position of devices against its geofences.

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.

DevicePositionUpdates

Contains device details for each device to be evaluated against the given geofence collection.

Type: Array of DevicePositionUpdate objects

Array Members: Minimum number of 1 item. Maximum number of 10 items.

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "Errors": [ { "DeviceId": "string", "Error": { "Code": "string", "Message": "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.

Errors

Contains error details for each device that failed to evaluate its position against the given geofence collection.

Type: Array of BatchEvaluateGeofencesError objects

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: