PutGeofence - Amazon Location Service

PutGeofence

Stores a geofence geometry in a given geofence collection, or updates the geometry of an existing geofence if a geofence ID is included in the request.

Request Syntax

PUT /geofencing/v0/collections/CollectionName/geofences/GeofenceId HTTP/1.1 Content-type: application/json { "GeofenceProperties": { "string" : "string" }, "Geometry": { "Circle": { "Center": [ number ], "Radius": number }, "Geobuf": blob, "Polygon": [ [ [ number ] ] ] } }

URI Request Parameters

The request uses the following URI parameters.

CollectionName

The geofence collection to store the geofence in.

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: [-._\w]+

Required: Yes

GeofenceId

An identifier for the geofence. For example, ExampleGeofence-1.

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: [-._\p{L}\p{N}]+

Required: Yes

Request Body

The request accepts the following data in JSON format.

GeofenceProperties

Associates one of more properties with the geofence. A property is a key-value pair stored with the geofence and added to any geofence event triggered with that geofence.

Format: "key" : "value"

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 3 items.

Key Length Constraints: Minimum length of 1. Maximum length of 20.

Value Length Constraints: Minimum length of 1. Maximum length of 40.

Required: No

Geometry

Contains the details to specify the position of the geofence. Can be a polygon, a circle or a polygon encoded in Geobuf format. Including multiple selections will return a validation error.

Note

The geofence polygon format supports a maximum of 1,000 vertices. The Geofence Geobuf format supports a maximum of 100,000 vertices.

Type: GeofenceGeometry object

Required: Yes

Response Syntax

HTTP/1.1 200 Content-type: application/json { "CreateTime": "string", "GeofenceId": "string", "UpdateTime": "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.

CreateTime

The timestamp for when the geofence was created in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sssZ

Type: Timestamp

GeofenceId

The geofence identifier entered in the request.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 100.

Pattern: [-._\p{L}\p{N}]+

UpdateTime

The timestamp for when the geofence was last updated in 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

ConflictException

The request was unsuccessful because of a conflict.

HTTP Status Code: 409

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: