Webhooks

Update a webhook subscription

Deprecated. Use PATCH /v1/accounts/{account_id}/webhooks/{webhook_id}, which behaves identically.

Updates the fields present in the body — url, events, active, account_relationship — and leaves the rest untouched.

  • events: replaces the whole list, it does not add to it, so an event left out of it stops being delivered.
  • active: setting it to false stops deliveries without discarding the delivery history. A subscription we turned off ourselves (deactivated_by: beel) needs a successful test delivery before it can be turned back on. Turning a subscription back on counts towards the limit of 10 active subscriptions, and is rejected with 400 WEBHOOK_ACTIVE_SUBSCRIPTION_LIMIT_REACHED when ten are already active.
  • Signing secret: not touched here. Rotate it with POST /v1/accounts/{account_id}/webhooks/{webhook_id}/secret.

Retires on 9 December 2026. See the migration guide for what moved where and what changes when you switch.

patch/v1/webhooks/{webhook_id}

Request

  • Base URL: https://app.beel.es/api
  • URL: https://app.beel.es/api/v1/webhooks/{webhook_id}
  • Auth: HTTP bearer

Path parameters

webhook_idstring uuid required

Request body

urlstring uri nullable

New HTTPS endpoint URL.

eventsWebhookEventTypeEnum[] nullable

New list of event types to subscribe to.

activeboolean nullable

Enable or disable the webhook subscription.

account_relationship'own' | 'managed' | 'all'

Which accounts a subscription receives events from — the same vocabulary as the account_relationship field in every delivered event envelope. One term to ask for events, the same term to route them on arrival.

  • own (default) — only your own account.
  • managed — only accounts you manage (accounts you provisioned). Whether you actually receive them also depends on the management relationship granting data visibility; a billing-only relationship does not.
  • all — both.

A delivered event is always own or managed (never all): its account_relationship, alongside account_id and account_external_ref, tells you which account it belongs to.

Example request

{
  "url": "https://yourapp.com/webhooks/beel"
}

Response

Webhook subscription updated

successboolean required

Example response

{
  "success": true,
  "meta": {
    "timestamp": "2025-01-15T10:30:00Z",
    "request_id": "4bf92f3577b34da6a3ce929d0e0e4736"
  }
}

Changes