logo
logo

Webhooks execution modes

Webhook is a method provided by the delivery service to make requests to web applications such as rebuilding or initiating a site build for a static site generator (SSG).

The content delivery feature implements different execution modes which determine how and when to execute the webhooks.

OnEnd

OnEnd is the default execution mode. In this mode, the webhook executes at the end of the publishing job after caches are purged. If the webhook definition includes a body, it is sent verbatim as the body of the webhook request. You can set a custom header on the webhook definition to change the content type of the request if the body is anything other than plain text (such as JSON or XML).

Requests to the webhook endpoint are debounced to reduce the number of requests to the endpoint and smooth over several small changes.

OnUpdate

OnUpdate works the same way as OnEnd but includes into the body of the webhook request the entity changes made that caused the webhook to execute. This mode does not allow a custom body on the webhook definition.

To avoid sending large requests, the entity changes are sent in batches across several webhook requests. Each batch is de-duplicated so that repeat events are not sent in a single request. The body sent is in JSON format. You can include JSON data into the body by populating the bodyInclude field of the webhook definition.

Tip

You can find details of the request format in the webhooks API section.

Can we improve this article ? Provide feedback