This creates a new webhook subscription.
The following delivery mode types are supported:
Delivery Mode | Description |
---|---|
SendAndForget | The webhook request will not wait for a response to consider the request successful. It will not be retried if it fails. |
WaitForAck | The webhook request waits for a 200 response to consider the request successful and if not, it will retry the request every 15 minutes for one hour. |
The following subscription types are supported:
Subscription name | Description |
---|---|
messages | Get a notification for all messages sent by the devices. |
alerts.speeding | Get a notification if the tracker exceeds the speed you set. |
alerts.sos | Get a notification if the SOS button in the face of the tracker is pressed. |
alerts.lowBattery | Get a notification if the tracker battery falls below the percentage you set. |
alerts.boundaryEntry | Get a notification as soon as one of your trackers enters one of your boundaries. |
alerts.boundaryExit | Get a notification as soon as one of your trackers exits one of your boundaries. |
alerts.movement | Get a notification if the tracker moves. It might trigger by accident in the case of GPS drifting. |
alerts.ignitionOn | Get a notification when the engine of the vehicle your tracker is attached to is turned ON. This alert only applies to OBD and hard-wired trackers. |
alerts.ignitionOff | Get a notification when the engine of the vehicle your tracker is attached to is turned OFF. This alert only applies to OBD and hard-wired trackers. |
alerts.tripStarted | Get a notification when a trip is in progress. This notification is not immediate as it requires more time to make sure there's an actual trip in progress and not just movement. If you need immediate alerts, you may use the movement alert or setup a boundary. |
alerts.tripFinished | Get a notification when your tracker has completed a trip. For more immediacy, a boundary alert can be used instead. |
alerts.tripExceedsDistance | Get a notification when a tracker is on a trip that exceeds the distance you set. |
alerts.tripExceedsDuration | Get a notification when a tracker is on a trip that exceeds the duration you set. |
alerts.stopExceedsDuration | Get a notification when a tracker is stopped for longer than the duration you set. |
alerts.pluggedExternalPowerSource | Get a notification when the tracker is connected to a power source. |
alerts.unpluggedExternalPowerSource | Get a notification when the tracker is disconnected from a power source. |
alerts.deviceOnline | Get a notification when the tracker is online. |
alerts.deviceOffline | Get a notification when the tracker is offline. |
alerts.lightSensorTamperStart | Get a notification when the tracker rear light sensor is exposed to light. This alert only applies to GL500 series trackers. |
alerts.lightSensorTamperEnd | Get a notification when the tracker rear light sensor has been removed from light. This alert only applies to GL500 series trackers. |
device.behavior.confirmed | Get a notification when a behavior sent to the tracker has been confirmed. |
device.behavior.canceled | Get a notification when a behavior sent to the tracker has been canceled. |
device.behavior.expired | Get a notification when a behavior sent to the tracker has expired. |
device.behavior.failed | Get a notification when a behavior sent to the tracker has failed. |
device.online | Get a notification when a device is reporting and online. |
device.offline.12h | Get a notification when a device hasn't reported in 12+ hours. |
device.offline.24h | Get a notification when a device hasn't reported in 24+ hours. |
device.active.nogpsfix.30min | Get a notification when an active device hasn't been reporting with a valid GPS fix for at least 30 mins. |
boundary.created | Get a notification when a boundary has been created in the account. |
boundary.updated | Get a notification when a boundary has been updated in the account. |
boundary.deleted | Get a notification when a boundary has been deleted in the account. |
When an event corresponding to the subscrition is received, a post request will be sent to the specified webhook.
The payload for this request will depend on the subscription type.
For messages, the payload will be a Message
object. The example below shows the definition of a message object payload:
{
"messageId": "cb44ad2a-6096-4a37-93a9-41b4882593e9",
"imei": "015181000393760",
"type": "GTVGN",
"sendTime": "2020-02-25T18:09:10.000Z",
"gpsUTCTime": "20200225180852",
"latitude": 26.111229,
"longitude": -81.757925,
"odoMileage": 2918.4,
"speed": 0,
"batteryPercentage": 88,
"ignition": "ON"
}
Only messages of type GTVGN
(ignition on) or GTVGF
(ignition off) will contain the ignition
property.
For alerts, the payload will be an Alert
object. The example below shows the definition of an Alert
object payload:
{
"alertId": "8419426291",
"alertType": "Movement",
"imei": "015181000393760",
"created": "2022-12-15T00:13:08.826Z",
"sendTime": "2022-12-15T00:10:55.000Z",
"userId": "421681e5-72b7-4f45-a996-95b336eb59f8",
"messageId": "3553c526-3d28-4ba8-88f5-54f54977cd46",
"address": "2216 44th St SW, Naples, FL 34116",
"value": "0.8",
"latitude": 26.187517,
"longitude": -81.696086,
"isBuffer": false,
"clientId": 128
}
Alerts of type ignitionOn
, ignitionOff
, sos
, pluggedExternalPowerSource
, unpluggedExternalPowerSource
and deviceOnline
will not contain the value
property.
Alerts of type deviceOffline
will contain the time device has been offline (in hours / days / month) in the value
property. Exemple: 5 hours
, 4 days
, 1 month
Alerts of type speeding
and movement
will contain the speed in the value
property
Alerts of type lowBattery
will contain the battery percentage in the value
property
Alerts of type boundaryEntry
and boundaryExit
will contain the boundary identifier in the value
property
Alerts of type tripStarted
, tripFinished
, tripExceedsDistance
, tripExceedsDuration
and stopExceedsDuration
will contain a json object in the value
property.
The object will contain the trip identifier, the distance in meters and the duration in seconds. The example below shows the definition of this object:
{
"tripId": "866710531",
"distance": "5",
"duration": "30"
}
For behaviors, the payload will be a Behavior
object. The example below shows the definition of a behavior object payload:
{
"imei": "015181003316628",
"createDate": "2023-01-17T15:23:27.404Z",
"sentTime": "2023-01-17T15:24:00.302Z",
"confirmedDate": "2023-01-17T15:30:05.546Z",
"responseDate": "2023-01-17T15:31:22.201Z",
"transmissionType": "listener",
"name": "REBOOT",
"tag": "REBOOT",
"taskId": "3e0405a9-c8d2-4394-ba41-252348402752",
"status": "confirmed",
"description": "Reboot",
"parameterValues": []
}
For tasks, the payload will be an object containing the task id. The example below shows the definition the payload:
{
"taskId": "3e0405a9-c8d2-4394-ba41-252348402752",
"status": "confirmed"
}
For device.online, device.offline.12h, device.offline.24h and device.active.nogpsfix.30min, the payload will be an object with the device status:
{
"gpsAccuracy": "1",
"cellId": "0678B810",
"messageId": "94c1725d-7184-4121-8dcb-87094c129ba2",
"azimuth": "0",
"reportType": "0",
"odoMileage": "7892.6",
"speed": "0.0",
"latitude": "47.803363",
"longitude": "-117.554475",
"gpsUTCTime": "20230203190846",
"batteryPercentage": "10",
"created": "2023-02-04T10:05:55.000Z",
"sendTime": "2023-02-04T10:05:53.000Z",
"address": "1515 50th Court, Vero Beach, Florida 32966",
"clientId": 128,
"imei": "015181003316628"
}
For boundaries, the payload will be an object with the boundary and the userId corresponding to the user creating / updating / deleting the boundary:
{
"boundary":
{
"boundaryId": 402492,
"name": "New Boundary",
"created": "2022-09-06T14:42:14.674Z",
"modified": "2022-09-06T14:43:24.854Z",
"location": "4631 Arboretum Cir, Naples, FL 34112, USA",
"color": "#f39c12",
"status": "deleted",
"geometry":
{
"type": "Feature",
"geometry":
{
"type": "Polygon",
"coordinates":
[
[
[
-81.78607236640737,
26.104138143987456
],
[
-81.75972234550242,
26.110381100978422
],
[
-81.78487073678956,
26.11593011621036
],
[
-81.78693067327723,
26.104831822336685
]
]
]
},
"properties": {}
}
}
}