Webhooks

Webhooks

Webhooks make it possible for your application to be notified of important system events, as soon as these take place within Onfleet.

While you are generally able to create as many webhook entries as you'd like, remember that a single webhook always targets a single trigger. The following triggers are available:

ID

Name

Description

Includes

Limitations

0

taskStarted

Task started by worker.

taskId, data.task

None

1

taskEta

Worker ETA less than or equal to threshold value provided, in seconds.

taskId, data.task, etaSeconds

Limit of 10 webhooks. Each will fire once per task, at most once every 30 seconds, when threshold is met.

2

taskArrival

Worker arriving, at or closer than threshold value provided, in meters.

taskId, data.task, distance

Limit of 10 webhooks. Each will fire once per task, at most once every 30 seconds, when threshold is met.

3

taskCompleted

Task completed by worker.

taskId, data.task

None

4

taskFailed

Task failed.

taskId, data.task

None

5

workerDuty

Worker status changed (0 for off-duty, 1 for on-duty).

workerId, status, data.worker

None

6

taskCreated

New task created.

taskId, data.task

Does not include tasks created via task import from the Onfleet dashboard.

7

taskUpdated

Task updated, including:

Updated completionDetails (including distance, location, added timestamps, added completion/failure notes)

When attachment ids are received under completionDetails field (This includes signature, photos)

Recipient feedback has been received(when feedback field is updated)

taskId, data.task

None

8

taskDeleted

Task deleted.

taskId, data.task

None

9

taskAssigned

Task assigned to worker.

taskId, data.task

None

10

taskUnassigned

Task unassigned from worker.

taskId, data.task

None

12

taskDelayed

Task is delay time is greater than or equal to threshold value provided, in seconds.

taskId, data.task, delay

Limit of 10 webhooks, applies only to active tasks, will only fire once.

13

taskCloned

Task cloned via dashboard or API. Note that the taskCreated trigger will not fire when a task is cloned.

taskId, data.task

None

14

smsRecipientResponseMissed

Recipient responds to a notification via SMS, but the organization is unable to handle it at that time.

from, to, body

None

15

workerCreated

A new worker has been created.

adminId, workerId, actionContext , triggerId,triggerName, taskId,data.worker, time

None

16

workerDeleted

A worker has been deleted.

adminId, workerId, actionContext , triggerId,triggerName, taskId,data.worker, time

None.

17

SMSRecipientOptOut

When a recipient replied "STOP" to opt out of SMS communications.

recipient, timestamp, SMS, triggerId, triggerName,time

None.

18

autoDispatchJobCompleted

When Team Auto-Dispatch calculation is completed.

actionContext, adminId, data.dispatch, dispatchId, taskId, time, triggerId, triggerName, workerId

None.

Webhooks can be maintained via dashboard or API. All standard, non-validation requests from Onfleet to you are made via POST.

In addition to the properties from the Includes column above, the JSON body we will POST to your url will include a time property along with triggerId and triggerName so you may overload the same url on your application as required. In addition, full objects will be provided in the data property, as relevant. Note that all other properties not relevant to the trigger may be provided as null.