Webhook Events

Custom rates updated

A creator's custom rates on a campaign were set, changed or reset. changeSource is campaign_edit when a campaign edit reset some (a removed payout, or its new value applied to them too). Like any terms change, the new values apply to every unpaid window of that creator at once; changes to the campaign itself arrive as campaign.updated. Read the creator's full terms with GET /campaigns/{id}/custom-rates/{creatorId}.

postWebhookcampaign.custom_rates_updated

Headers

webhook-idstring required
Example:whevt_A1b2C3d4E5f6

The event id; the same on every retry of this event. Dedupe on it.

webhook-timestampstring required
Example:1790332496

Unix seconds of this delivery attempt (re-signed on every retry). Reject values more than 5 minutes off.

webhook-signaturestring required
Example:v1,K5oZfzN95Z9UVu1EsfQmfVNQhnkZ2pj9o9NDN/H/pI4=

Space-separated v1,<base64 HMAC-SHA256 of "<webhook-id>.<webhook-timestamp>.<body>"> signatures, one per active signing secret (two during a rotation). Verify with any Standard Webhooks library.

Payload

idstring required

Event id; the webhook-id header. The same on every retry: dedupe on it.

type'campaign.custom_rates_updated' required
timestampstring date-time required

When the change happened

organizationIdstring required

Response

Any 2xx within 15 seconds acknowledges the event. Anything else, a timeout or a redirect is retried (10 attempts over about 3 days); 410 disables the endpoint.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.