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, "MultiPolygon": [ [ [ [ number ] ] ] ], "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 circle, a polygon, or a multipolygon. Polygon and MultiPolygon geometries can be defined using their respective parameters, or encoded in Geobuf format using the Geobuf parameter. Including multiple geometry types in the same request will return a validation error.

Note

The geofence Polygon and MultiPolygon formats support a maximum of 1,000 total vertices. The 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.sss

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.sss

Type: Timestamp

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

HTTP Status Code: 403

ConflictException

HTTP Status Code: 409

InternalServerException

HTTP Status Code: 500

ResourceNotFoundException

HTTP Status Code: 404

ThrottlingException

HTTP Status Code: 429

ValidationException

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: