List webhook subscriptions
Lists every webhook subscription in your organization, one per target URL, with its event types and whether it is confirmed and enabled. Not paginated. Signing secrets are left out; read one from GET /hooks/subscriptions/{subscriptionId}/secret.
Authorization
apiKey API key as Bearer token: Authorization: Bearer
In: header
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://terac.com/api/external/v2/hooks/subscriptions"{
"data": [
{
"id": "string",
"target_url": "string",
"event_types": [
"submission.status.change"
],
"is_enabled": true,
"confirmed_at": "string",
"disabled_at": "string",
"disabled_reason": "string",
"created_at": "string",
"updated_at": "string"
}
]
}{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}{
"error": {
"code": "UNAUTHORIZED",
"message": "API key required. Include Authorization: Bearer <key> header."
}
}{
"error": {
"code": "FORBIDDEN",
"message": "This account is not permitted to use the API."
}
}{
"code": "NOT_FOUND",
"message": "Not found",
"issues": []
}{
"error": {
"code": "RATE_LIMITED",
"message": "Rate limit exceeded. Retry after 61 seconds."
}
}{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}List subscribable webhook event types GET
Lists the event types a webhook subscription can receive, each with a description. Read this rather than hardcoding a list: new event types are added without a breaking change, and appear here first.
Create a webhook subscription POST
Creates a webhook subscription for one target URL and returns its signing secret. Created unconfirmed, so it receives nothing until you call the confirm endpoint and Terac's ping to target_url returns 2xx. A URL that already has a subscription returns 409; patch that one's event_types instead.