post

POST /v2/webhooks — Create webhook

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Notes

  • payloadVersion defaults to "v2" when omitted. Pass "v1" explicitly to create a legacy webhook.
  • When authentication: true, a 64-character hex signing secret is generated and returned once in the credentials field of the response. Store it securely — it cannot be retrieved again.
  • Attempting to register a URL that already belongs to another webhook for the same affiliate returns 409 Conflict.
  • webhookInterests must contain only recognized event types from the event dictionary. Unrecognised values return 400 with an unrecognised field listing the invalid types.

Required role

affiliate_super_admin

Request body

FieldTypeRequiredDescription
namestringHuman-readable label
urlstringHTTPS endpoint to deliver events to
authenticationbooleanEnable HMAC signing. Secret returned once on creation
payloadVersionstring"v1" or "v2". Defaults to "v2"
webhookInterestsstring[]Array of event type strings to subscribe to
enabledbooleanInitial enabled state. Defaults to true

Response 201

{
  "id": "webhook::abc123",
  "name": "Order sync",
  "url": "https://api.example.com/webhooks/orders",
  "authentication": true,
  "payloadVersion": "v2",
  "webhookInterests": ["order_created", "order_submitted"],
  "status": "enabled",
  "isEnabled": true,
  "credentials": "a3f2...64hexchars"
}

The credentials field only appears on creation (and after secret rotation). It is not stored in plaintext after this response.

Language
LoadingLoading…
Response
Click Try It! to start a request and see the response here!