Scopes
A request that subscribes to an event whose read scope the credential lacks gets
403 insufficient_scope with required_scopes naming what is missing.
Endpoints
Create a webhook
Send an
Idempotency-Key header to make retries of the create call safe; a replay returns the webhook without the secret.
Limits: 5 webhooks per workspace for an app in development, 100 once the app is approved; 500 per workspace in total. Creation is rate limited per app and per workspace.
Change a webhook
is_active to true on a webhook that was switched off after a failure streak clears consecutive_failures and last_error. Changing form_id re-checks the current events against the new filter.
The delivery log
page, per_page (max 100), event (one catalog event), status (success or failed). Payload data is not kept in the log; event_id and object_id let you look the record up.
The webhook object
The secret is only returned by
POST. Store it; it is what you verify signatures with.