Webhooks
GET
/v1/orgs/{org_id}/webhooksList Webhooks
Runtime, CI or Admin tokenscope: readoperation_id: webhooks.list
Authentication
Any bearer token belonging to the org can read this endpoint.
SDK install
pip install znyx-sdknpm install @znyx/sdkPath parameters
| Name | Type | Required | Description |
|---|---|---|---|
| org_id#path | string | required | — |
Header parameters
| Name | Type | Required | Description |
|---|---|---|---|
| X-API-Key#header | string | null | optional | — |
| authorization#header | string | null | optional | — |
Responses
| Status | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Response schema
idrequiredstring
org_idrequiredstring
urlrequiredstring
eventsrequiredstring[]
is_activerequiredboolean
created_atrequiredstring
has_secretrequiredboolean
Errors & what triggers them
| Code | Trigger | Fix |
|---|---|---|
| 401 | Missing or expired Authorization header. | — |
| 403 | Token does not have org access (wrong org_id, or insufficient role). | — |
| 404 | Resource does not exist in this org. | — |
Notes & examples
What's in the response
Each entry returns url, events, is_active, created_at, and a has_secret boolean — not the secret itself. The raw secret is only available at creation time and rotate time.
If you need to verify webhooks are still delivering, hit POST /v1/orgs/{org_id}/webhooks/{id}/test — it sends a synthetic event to the URL and returns the target's HTTP status.
Request
curl -X GET 'https://api.znyx.ai/v1/orgs/00000000-0000-0000-0000-000000000000/webhooks' \ -H 'Authorization: Bearer $ZNYX_TOKEN'
Response
application/json
Successful Response
[
{
"id": "string",
"org_id": "string",
"url": "string",
"events": [
"string"
],
"is_active": false,
"created_at": "string",
"has_secret": false
}
]Schema: WebhookResponse[]