Skip to content

Create a geofence
Legacy

Request

⚠️ Legacy endpoint. Android only. Geofence configuration is now managed through blueprints. Use the blueprints endpoints (/api/v2/blueprints/) to create and manage geofences going forward.

Creates a new geofence and optionally applies it to a list of devices in a single request. Returns the newly created Geofence object (HTTP 201) with the assigned UUID; the devices field allows immediate application to specific devices at creation time, a capability not available through the separate /geofence/ path endpoints.

Security
esper_cloud_api_apiKey
Path
enterprise_idstring, (uuid)required

A UUID string identifying the enterprise.

Body*/*required
namestring(Geofence name)

Name of the geofence

descriptionstring(Geofence description)

A description about the geofence

latitudestring, (decimal)(Geofence latitude)

Latitude corresponding to the geofence

longitudestring, (decimal)(Geofence longitude)

Longitude corresponding to the geofence

radiusinteger(Geofence radius)

The radius within which the geofence should be applied

radius_unitstring(Unit of radius)

The unit in which the radius is taken, eg - kilometers, meters etc

Enum:"KILOMETERS""METERS""MILES"
device_actionsArray of strings(Device Actions)

The actions to be performed on the device

Items Enum:"LOCK_DOWN""BEEP"
devicesArray of strings(List of device ids)

List of ids of devices on which the geofence is to be applied

cURL
curl -i -X POST \
  'https://api.esper.io/_mock/openapi/v0/enterprise/{enterprise_id}/create-apply-geo-fence/' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: */*' \
  -d '{
    "name": "string",
    "description": "string",
    "latitude": "string",
    "longitude": "string",
    "radius": 0,
    "radius_unit": "KILOMETERS",
    "device_actions": [
      "LOCK_DOWN"
    ],
    "devices": [
      "string"
    ]
  }'

Responses

successful operation

Bodyapplication/json
idstring, (uuid)(Geofence id)read-only

id of the geofence

namestring(Geofence name)required

Name of the geofence

descriptionstring(Geofence description)

A description about the geofence

enterprisestring, (uuid)(Enterprise id)read-only

id of the enterprise resource

latitudestring, (decimal)(Geofence latitude)required

Latitude corresponding to the geofence

longitudestring, (decimal)(Geofence longitude)required

Longitude corresponding to the geofence

radiusinteger(Geofence radius)

The radius within which the geofence should be applied

radius_unitstring(Unit of radius)

The unit in which the radius is taken, eg - kilometers, meters etc

Enum:"KILOMETERS""METERS""MILES"
device_actionsArray of strings(Device Actions)

The actions to be performed on the device

Items Enum:"LOCK_DOWN""BEEP"
device_countinteger(Device count)read-only

Number of devices

created_bystring(Created by)read-only

The user who created the geofence

created_onstring, (date-time)(Creation date and time)read-only

Date and time of when the geofence was created

updated_onstring, (date-time)(Updation date and time)read-only

Date and time of when the geofence was updated

Response
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "description": "string", "enterprise": "796caaf9-a7de-4817-9ffa-39d04bf83de9", "latitude": "string", "longitude": "string", "radius": 0, "radius_unit": "KILOMETERS", "device_actions": [ "LOCK_DOWN" ], "device_count": 0, "created_by": "string", "created_on": "2019-08-24T14:15:22Z", "updated_on": "2019-08-24T14:15:22Z" }