Enter geofence - triggered when a user enters a specific geographical location expressed as longitude, latitude and radius in meters.
Exit geofence - triggered when a user leaves the specific geographical location.
Enter beacon - triggered when a user enters into the range of a specific BLE beacon.
HTTPS protocol only
OAuth 2.0 authentication scheme
UTF-8 encoding
The client must include a User-Agent header, Content-Type header and JSON payload.
The API provides endpoints and client credentials for both integration and production environments
The API supports a way to identify the calling app. We propose to include APP_KEY request header, for example:
X-App-Key: “yourproject-prod” or similar
The API uses conventional HTTP response codes to indicate success or failure of an API request.
Status 200 - call successful
Status 4xx - client errors
Status 5xx - internal server errors
JSON body = [{
"event_id" : "123e4567-e89b-12d3-a456-426652340000",
"t" : 1626254802012,
"st": 1626254913412,
"user_pseudo_id": "001122334455deeff",
"user_id" : "hashed-email-here",
"event_name" : "enter_beacon",
"geo_category": "beacon",
"geo_item": "store-7-cashier-beacon-1",
"geo_item_id": "e4a7",
"geo_latitude": null,
"geo_longitude": null,
"geo_accuracy": null,
"device_type": "iPhone",
"device_model": "iPhone 11",
"os": "iOS",
"os_version": "14.6",
"lang": "es",
"location_status" : "always",
"session": 16,
"app_status": "foreground",
"app_version" : "1.2",
"moca_version": "3.6.0"
"dwell_time": null,
“user_properties” : {
key1: value2
hey2: value2
...
}
}]