Skip to main content

Wave webhook

Register Wave Webhooks to receive real-time Arrival notifications from your customers.

Configure a Wave Webhook

In the Webhooks section of your Canvas account while creating a Webhook, select Wave as the Event type in the dropdown.

You can also configure a Wave Webhook through Config API (Information on using the Config API for registering a Webhook can be found here.)

If you’d like to Create a Destination using Config API, When creating or editing a Project you can add Hello Order Webhooks within the webhooks property by setting the type to wave in the request.

Example of adding a Wave Webhook:

"webhooks": [{
"type": "wave",
"url": "<webhook URL goes here>"
}]

Webhook request JSON structure

JSON request for a simple Wave event

{
   "notificationType":"wave",
   "notificationId":"73cbdf0c-5523-46ec-bc15-c9ad362b2a85",
   "projectId": "1111111-2222-3333-4444-555555555555",
   "installRef":"c92f4a32dc35282d4471b42993f809fa",
   "eventTime":"2018-09-02T00:08:16.000Z",
   "destinationId":"ABCD",
   "receivedAt":"2018-09-02T00:22:43.816Z",
   "customEventMetaData":{
      "eKey1":"eValue1"
   }
}

JSON request for a Wave event when the location is passed in the API request

{
   "notificationType":"wave",
   "notificationId":"73cbdf0c-5523-46ec-bc15-c9ad362b2a85",
   "projectId": "1111111-2222-3333-4444-555555555555",
   "installRef":"c92f4a32dc35282d4471b42993f809fa",
   "eventTime":"2018-09-02T00:08:16.000Z",
   "destinationId":"ABCD",
   "location":{
      "longitude":144.98173087835312,
      "latitude":-37.819805462370944,
      "speed":10.12,
      "bearing":45.34,
      "horizontalAccuracy":100
   },
   "receivedAt":"2018-09-02T00:22:43.816Z",
   "zones":[
      {
         "id":"ffece0a9-fd21-4148-892e-0a61d01a6bd4",
         "name":"Melbourne Cricket Ground Gate 1",
         "destinationId":"ABCD",
         "customData":{
            "key1":"value1",
            "key2":"value2"
         },
         "tags":[
            "tag1",
            "tag2"
         ],
         "fence":{
            "id":"80fc36ad-ee72-4450-ad96-b3fadfc26cb4",
            "name":"Melbourne Cricket Ground Gate 1"
         }
      }
   ],
   "customEventMetaData":{
      "eKey1":"eValue1"
   }
}

Wave Webhook field description

FieldTypeDescriptionExample
notificationTypeStringThis field denotes the type of notification being relayed from our servers to yours. For a Wave event, the type will be “wave”."wave"
notificationIdStringThe unique identifier of the Wave record."cf3ce604-adc2-494a-a41c-e19ded044c7d"
projectIdStringThe identifier of the project with which the API is signed within the header."751cf7a6-394b-4e8a-b09d-444ed520c3e5"
installRefStringA randomly issued installation reference, not tied to any personally identifiable data (PID) on the user’s device."a7684ffd-2221-432c-9cb9-25fd241df39f"
destinationIdStringThe ID associated with the location setup in Canvas for the Zone"Store1234"
customEventMetaDataJSON ObjectKey/Value pairs passed from the application to Bluedot Point SDK. This will not be returned as part of the request if no data set on the Mobile SDK.{"key1": "value1"}
eventTimeStringUTC date and time of the Entry/Exit in ISO format on the device."2021-02-02T02:25:47.000Z"
receivedAtStringRecords the time the event reaches the Bluedot platform."2021-02-02T02:25:47.000Z"
locationJSON ObjectThe location details were sent as part of the Wave API request.
location.longitudeNumberLongitude component of the coordinate the current Wave event.144.981730
location.latitudeNumberLatitude component of the coordinate the current Wave event.-37.819805
location.speedNumberThe travel speed of the device at the time of the Wave event reported as meters per second.10
location.bearingNumberThe travel bearing of the device at the time the Wave event reported in degrees.120
location.horizontalAccuracyNumberThe accuracy of the location coordinates at the time the Wave event reported in meters.10
zonesJSON ArrayThe Zones inside of the latitude and longitude of the location coordinates update in the Wave API request.
zones.idStringThe unique identifier of the zone that location reported in the Wave event is inside of."cf3ce604-adc2-494a-a41c-e19ded044c7d"
zones.nameStringThe name of the zone that the location reported in the Wave event is inside of."Zone Name"
zones.customDataJSON ObjectKey/Value pair of Location-specific data added to the Zone. This will not be returned as part of the request if no data set for the Zone.{"key1": "value1"}
zones.tagsArrayThe tags added to a Zone in Canvas.["tag1","tag2"]
zones.fenceJSON ObjectThe Fence inside of the latitude and longitude of the location coordinates update in the Wave API request.
fence.idStringThe unique identifier of the fence that location reported in the Wave event is inside of."cf3ce604-adc2-494a-a41c-e19ded044c7d"
fence.nameStringThe name of the fence that the location reported in the Wave event is inside of."Fence name"