Skip to main content

Webhooks

Trigger instant notifications to other web applications, ensuring real-time updates whenever specific events occur.

Written by Trackdesk Team

Feature update history

  • 27/05/24: added webhooks for conversion status changed and settlement created.

  • 24/05/26: added Affiliate tier changed, Affiliate ticket created, Affiliate ticket updated, and Coupon created events.

Webhooks enable seamless communication between our platform and other web applications, ensuring instant notifications are sent whenever specific events occur.

Types of events

The following events can be triggered via webhooks.

Affiliate created

This event is triggered when a new affiliate is created. The sent webhook contains information about the affiliate.

Affiliate status changed

This event is triggered every time the affiliate status is changed after registration. The sent webhook contains information about the affiliate and the status that was changed.

Affiliate tier changed

This event is triggered when an affiliate moves between tiers (via Tier Automation, manual change, or any other path). The payload contains the affiliate's email and public ID, the original tier name, and the new tier name.

Affiliate ticket created

This event is triggered when an affiliate submits a new ticket via the affiliate ticketing system. The payload contains the affiliate's account email, the affiliate's source public ID, and the ticket details (ID, status, field answers, note, timestamps).

Affiliate ticket updated

This event is triggered when an affiliate ticket is updated (status change, note added, and so on). The payload contains the same fields as "Affiliate ticket created", reflecting the ticket's new state.

Click created

This event is triggered when a new click is created. The sent webhook contains information about the click.

Conversion created

This event is triggered when a new conversion is created. The sent webhook contains information about the conversion.

Conversion status changed

This event is triggered when a conversion status is changed. The sent webhook contains information about the conversion.

Coupon created

This event is triggered when a new coupon is created. The payload contains the coupon ID, code, revenue origin ID, the full affiliate object, and the offer the coupon belongs to.

Settlement created

This event is triggered when a settlement is created. The sent webhook contains information about the settlement.

Delivery details

  • Webhooks are sent as HTTP POST requests with Content-Type: application/json.

  • Delivery is asynchronous. Events are queued and dispatched by a background worker, so the action that triggered the event isn't blocked waiting for your endpoint to respond.

  • Failed deliveries are retried automatically with exponential backoff. Your endpoint should respond with a 2xx status to acknowledge receipt; any other status (or a timeout) counts as a failure.

  • Payloads contain the entity using public IDs (not internal UUIDs). For "status changed" events, the payload includes both the original and the new status.

How to set up a webhook

Webhooks can be set up by navigating to Tools β†’ Webhooks.

To add a webhook, click Add a new webhook.

Select one or more Event types and fill in the Webhook URL to which the webhook will be sent.

Next, create the webhook by clicking the Add a new webhook button.

Webhooks can be created, listed, and deleted from this page. Existing webhooks cannot be edited in place; to change a webhook's URL or event types, delete it and create a new one. There is no enable/disable toggle: a saved webhook is always active until it's deleted.

Did this answer your question?