Skip to content

/v1/webhook-endpoints (POST)

POST
/v1/webhook-endpoints
curl --request POST \
--url http://localhost:8787/v1/webhook-endpoints \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "eventTypes": [ "reservation.created" ], "url": "https://example.com" }'
Media typeapplication/json
object
eventTypes
required
Array<string>
>= 1 items
Allowed values: reservation.created reservation.confirmed reservation.cancelled payment.succeeded payment.failed refund.created
url
required
string format: uri

The signing secret is shown EXACTLY ONCE here — save it now. Losing it means deleting and re-creating the endpoint, never a re-display (domain/webhook/signing.ts).

Media typeapplication/json
object
createdAt
required
string
enabled
required
boolean
eventTypes
required
Array<string>
Allowed values: reservation.created reservation.confirmed reservation.cancelled payment.succeeded payment.failed refund.created
failureCount
required
integer
id
required
string format: uuid
lastFailureAt
required
string | null
lastSuccessAt
required
string | null
secret
required
string
url
required
string
Example
{
"eventTypes": [
"reservation.created"
]
}

No API key context resolved for this request.

Media typeapplication/problem+json
object
code
required
string
Allowed values: webhook_endpoint_not_found
detail
required
string
status
required
number
title
required
string
type
required
string
Example
{
"code": "webhook_endpoint_not_found"
}