Create a webhook

This creates a new webhook subscription.

The following delivery mode types are supported:

Delivery ModeDescription
SendAndForgetThe webhook request will not wait for a response to consider the request successful. It will not be retried if it fails.
WaitForAckThe 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 nameDescription
messagesGet a notification for all messages sent by the devices.
alerts.speedingGet a notification if the tracker exceeds the speed you set.
alerts.sosGet a notification if the SOS button in the face of the tracker is pressed.
alerts.lowBatteryGet a notification if the tracker battery falls below the percentage you set.
alerts.boundaryEntryGet a notification as soon as one of your trackers enters one of your boundaries.
alerts.boundaryExitGet a notification as soon as one of your trackers exits one of your boundaries.
alerts.movementGet a notification if the tracker moves. It might trigger by accident in the case of GPS drifting.
alerts.ignitionOnGet 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.ignitionOffGet 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.tripStartedGet 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.tripFinishedGet a notification when your tracker has completed a trip. For more immediacy, a boundary alert can be used instead.
alerts.tripExceedsDistanceGet a notification when a tracker is on a trip that exceeds the distance you set.
alerts.tripExceedsDurationGet a notification when a tracker is on a trip that exceeds the duration you set.
alerts.stopExceedsDurationGet a notification when a tracker is stopped for longer than the duration you set.
alerts.pluggedExternalPowerSourceGet a notification when the tracker is connected to a power source.
alerts.unpluggedExternalPowerSourceGet a notification when the tracker is disconnected from a power source.
alerts.deviceOnlineGet a notification when the tracker is online.
alerts.deviceOfflineGet a notification when the tracker is offline.
alerts.lightSensorTamperStartGet a notification when the tracker rear light sensor is exposed to light. This alert only applies to GL500 series trackers.
alerts.lightSensorTamperEndGet a notification when the tracker rear light sensor has been removed from light. This alert only applies to GL500 series trackers.
device.behavior.confirmedGet a notification when a behavior sent to the tracker has been confirmed.
device.behavior.canceledGet a notification when a behavior sent to the tracker has been canceled.
device.behavior.expiredGet a notification when a behavior sent to the tracker has expired.
device.behavior.failedGet a notification when a behavior sent to the tracker has failed.
device.onlineGet a notification when a device is reporting and online.
device.offline.12hGet a notification when a device hasn't reported in 12+ hours.
device.offline.24hGet a notification when a device hasn't reported in 24+ hours.
device.active.nogpsfix.30minGet a notification when an active device hasn't been reporting with a valid GPS fix for at least 30 mins.
boundary.createdGet a notification when a boundary has been created in the account.
boundary.updatedGet a notification when a boundary has been updated in the account.
boundary.deletedGet 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": {}
      }
    }
  }
Language
Authorization
OAuth2
URL
Click Try It! to start a request and see the response here!