Skip to main content
POST
Create webhook

Authorizations

API-Key
string
header
required

Your public API key. Identifies the partner making the request.

API-Sign
string
header
required

HMAC signature over the request, computed with your private key.

API-Nonce
string
header
required

Monotonically increasing nonce included in the request signature.

Body

application/json

Request to register a new webhook destination.

The owning tenant is derived from the authenticated caller. There is no account identifier in the request.

url
string
required

HTTPS destination URL. Must be reachable from the webhooks service and serve a valid TLS certificate.

Required string length: 8 - 2048
events
enum<string>[]
required

Events the webhook should be subscribed to. Required and must be non-empty: partners must opt in explicitly to avoid silent fan-out when new event types are added.

Required array length: 1 - 100 elements

Event type supported by the webhooks API.

Available options:
quote.executed,
quote.cancelled,
quote.execution_failed,
user.closed,
user.disabled,
conversion.deposit_completed,
conversion.deposit_failed,
conversion.deposit_held,
conversion.withdrawal_completed,
conversion.withdrawal_failed,
conversion.quote_execution_failed,
conversion.travel_rule_blocked,
transaction.swap,
transaction.price_trigger_swap,
transaction.earn_reward,
transaction.deposit,
transaction.withdrawal,
transaction.transfer,
conversion.quote_executed,
funds.deposit_received,
funds.deposit_held,
funds.deposit_credited,
funds.deposit_returned,
funds.deposit_failed,
verification.requirements_updated,
verification.updated,
price_trigger_swap.executed,
price_trigger_swap.execution_failed,
price_trigger_swap.cancelled,
price_trigger_swap.created,
price_trigger_swap.failed,
funds.withdrawal_held,
funds.withdrawal_complete,
funds.withdrawal_failed,
recurring_swap.created,
recurring_swap.executed,
recurring_swap.execution_failed,
recurring_swap.cancelled,
recurring_swap.failed,
recurring_swap.paused,
recurring_swap.resumed,
transaction.recurring_swap
description
string

Optional free-form label, shown in the operator portal. Max 500 chars.

Maximum string length: 500
disabled
boolean

Create the webhook in a disabled state. Omit (or pass false) to start delivering immediately; pass true to register the endpoint without delivering any events until it is re-enabled via UpdateWebhook.

Response

Successful response

Response from CreateWebhook.

The signing secret is returned in plaintext exactly once. Partners must persist it before discarding the response; it cannot be re-read later.

data
object
required

Data envelope returned exactly once after a successful CreateWebhook. Mirrors the webhook representation field-for-field and adds the one-time signing secret as a peer field.