API reference
Webhooks
Signed POSTs to your endpoint for events of a team or project. Pro feature.
GET
/v1/webhooks/eventsThe event types#
- Credential
- An API key or a dashboard session
- Roles
- Any role
Response
200object
eventsobject[]typestringdescriptionstring
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 500 | internal: an unexpected failure |
Example
curl "https://api.ibel.ai/v1/webhooks/events" \
-H "Authorization: Bearer $KEY"GET
/v1/webhooksThe team's webhooks#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin, developer
Parameters
projectstringqueryonly this project's
Response
200object
webhooksWebhook[]idstring (uuid)urlstringdescriptionstringeventsstring[]projectobject | nullnamestringkindstring
enabledbooleandisabled_reasonstring | nullsecret_hintstringconsecutive_failuresintegerlast_delivery_atstring (date-time) | nulllast_statusstring | nullcreated_atstring (date-time)updated_atstring (date-time)
limitintegerplanstring
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 500 | internal: an unexpected failure |
Example
curl "https://api.ibel.ai/v1/webhooks" \
-H "Authorization: Bearer $KEY"POST
/v1/webhooksCreate a webhook (the secret is shown once)#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Request bodyapplication/json
urlstringrequiredan https address that resolves to a public address
eventsstring[]requiredevent types, or ["*"]
projectstringa project's name; omit for the whole team
descriptionstring
Response
200Webhook
idstring (uuid)urlstringdescriptionstringeventsstring[]projectobject | nullnamestringkindstring
enabledbooleandisabled_reasonstring | nullsecret_hintstringconsecutive_failuresintegerlast_delivery_atstring (date-time) | nulllast_statusstring | nullcreated_atstring (date-time)updated_atstring (date-time)secretstring
Errors
| Status | Description |
|---|---|
| 400 | Bad request: bad_url, bad_events, bad_description, bad_json |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden, plan_required (the plan's webhook limit) |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X POST "https://api.ibel.ai/v1/webhooks" \
-H "Authorization: Bearer $KEY" \
-d '{"url":"…","events":["…"]}'GET
/v1/webhooks/{id}One webhook#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin, developer
Parameters
idstringpathrequiredwebhook id
Response
200Webhook
idstring (uuid)urlstringdescriptionstringeventsstring[]projectobject | nullnamestringkindstring
enabledbooleandisabled_reasonstring | nullsecret_hintstringconsecutive_failuresintegerlast_delivery_atstring (date-time) | nulllast_statusstring | nullcreated_atstring (date-time)updated_atstring (date-time)
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY"DELETE
/v1/webhooks/{id}Delete a webhook#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Parameters
idstringpathrequiredwebhook id
Response
200object
deletedboolean
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X DELETE "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY"PATCH
/v1/webhooks/{id}Change a webhook or re-enable it#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Parameters
idstringpathrequiredwebhook id
Request bodyapplication/json
urlstringeventsstring[]descriptionstringenabledboolean
Response
200Webhook
idstring (uuid)urlstringdescriptionstringeventsstring[]projectobject | nullnamestringkindstring
enabledbooleandisabled_reasonstring | nullsecret_hintstringconsecutive_failuresintegerlast_delivery_atstring (date-time) | nulllast_statusstring | nullcreated_atstring (date-time)updated_atstring (date-time)
Errors
| Status | Description |
|---|---|
| 400 | Bad request: bad_url, bad_events, bad_enabled, nothing_to_change |
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X PATCH "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903" \
-H "Authorization: Bearer $KEY" \
-d '{"url":"…","events":["…"],"description":"…","enabled":true}'POST
/v1/webhooks/{id}/rotate-secretA new signing secret (shown once)#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Parameters
idstringpathrequiredwebhook id
Response
200Webhook
idstring (uuid)urlstringdescriptionstringeventsstring[]projectobject | nullnamestringkindstring
enabledbooleandisabled_reasonstring | nullsecret_hintstringconsecutive_failuresintegerlast_delivery_atstring (date-time) | nulllast_statusstring | nullcreated_atstring (date-time)updated_atstring (date-time)secretstring
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X POST "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903/rotate-secret" \
-H "Authorization: Bearer $KEY"POST
/v1/webhooks/{id}/testSend a ping now#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Parameters
idstringpathrequiredwebhook id
Response
200WebhookDeliveryFull
idintegerevent_idstring (uuid)eventstringstatusstringone of
pending,ok,failedattemptsintegermax_attemptsintegerresponse_statusinteger | nullduration_msinteger | nullerrorstring | nullcreated_atstring (date-time)delivered_atstring (date-time) | nullnext_attempt_atstring (date-time) | nullredelivery_ofinteger | nullrequestobjectheadersobjectbodystringtruncatedboolean
responseobject | nullstatusintegerheadersobjectbodystring | null
historyobject[]
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X POST "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903/test" \
-H "Authorization: Bearer $KEY"GET
/v1/webhooks/{id}/deliveriesThe delivery log#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin, developer
Parameters
idstringpathrequiredwebhook id
statusstringqueryok, failed or pending
one of
ok,failed,pendinglimitintegerquery1 to 100
beforeintegerquerya delivery id, for the next page
Response
200object
deliveriesWebhookDelivery[]idintegerevent_idstring (uuid)eventstringstatusstringone of
pending,ok,failedattemptsintegermax_attemptsintegerresponse_statusinteger | nullduration_msinteger | nullerrorstring | nullcreated_atstring (date-time)delivered_atstring (date-time) | nullnext_attempt_atstring (date-time) | nullredelivery_ofinteger | null
next_beforeinteger | null
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903/deliveries" \
-H "Authorization: Bearer $KEY"GET
/v1/webhooks/{id}/deliveries/{did}One delivery with its request and response#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin, developer
Parameters
idstringpathrequiredwebhook id
didstringpathrequireddelivery id
Response
200WebhookDeliveryFull
idintegerevent_idstring (uuid)eventstringstatusstringone of
pending,ok,failedattemptsintegermax_attemptsintegerresponse_statusinteger | nullduration_msinteger | nullerrorstring | nullcreated_atstring (date-time)delivered_atstring (date-time) | nullnext_attempt_atstring (date-time) | nullredelivery_ofinteger | nullrequestobjectheadersobjectbodystringtruncatedboolean
responseobject | nullstatusintegerheadersobjectbodystring | null
historyobject[]
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903/deliveries/did" \
-H "Authorization: Bearer $KEY"POST
/v1/webhooks/{id}/deliveries/{did}/redeliverSend the same event again#
- Credential
- An API key or a dashboard session
- Roles
- owner, admin
Parameters
idstringpathrequiredwebhook id
didstringpathrequireddelivery id
Response
200WebhookDeliveryFull
idintegerevent_idstring (uuid)eventstringstatusstringone of
pending,ok,failedattemptsintegermax_attemptsintegerresponse_statusinteger | nullduration_msinteger | nullerrorstring | nullcreated_atstring (date-time)delivered_atstring (date-time) | nullnext_attempt_atstring (date-time) | nullredelivery_ofinteger | nullrequestobjectheadersobjectbodystringtruncatedboolean
responseobject | nullstatusintegerheadersobjectbodystring | null
historyobject[]
Errors
| Status | Description |
|---|---|
| 401 | unauthorized: missing, invalid, expired or revoked credential |
| 403 | Not allowed: forbidden |
| 404 | Not found: not_found |
| 500 | internal: an unexpected failure |
Example
curl -X POST "https://api.ibel.ai/v1/webhooks/88e2fe1d-6d75-4de5-8c8f-27380ec66903/deliveries/did/redeliver" \
-H "Authorization: Bearer $KEY"