Update a webhook endpoint

​

Change any subset of url, description, status, event_types, filters, payload, authentication and signing.legacy_signature; omitted fields are unchanged. status: disabled stops deliveries (test sends still go out). Events that occur while the endpoint is disabled are not queued for it and cannot be recovered. Deliveries that were already queued are marked failed and can be re-queued with recover after you re-enable the endpoint. With the same authentication.type, an omitted secret keeps the stored one; a new type needs its secret. A stored secret never follows a new destination: changing url needs header_value / password / client_secret again, and changing authentication.token_url needs client_secret again (400 INVALID_AUTH_CONFIG). Every change is written to the activity log.

OAuth scopes
  • webhooks:write

Path Parameters

Body·

required
application/json
  • Receiver authentication. header sends a custom header; basic sends HTTP Basic; oauth2_client_credentials fetches a token (client_secret_post) and sends it as a Bearer token.

    Receiver authentication. header sends a custom header; basic sends HTTP Basic; oauth2_client_credentials fetches a token (client_secret_post) and sends it as a Bearer token.

  • Free-text label (at most 500 characters).

  • Properties: 2
  • Properties: 4
  • Properties: 1
  • disabled endpoints receive no new deliveries.

  • HTTPS URL of your receiver (at most 2048 characters). The host must be a public DNS name: IP literals, single-label and local names, and hosts that resolve to private addresses are rejected with INVALID_WEBHOOK_URL.

Responses

  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
  • application/json
Request Example for patch/v2/webhook_endpoints/{id}
curl https://api.brellium.dev/v2/webhook_endpoints/123e4567-e89b-12d3-a456-426614174000 \
  --request PATCH \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
  --data '{
  "url": "https://hooks.example.com/brellium",
  "description": "Production EHR sync",
  "status": "enabled",
  "event_types": [
    "audit.completed"
  ],
  "filters": {
    "question_set_ids": [
      ""
    ],
    "audit_results": "all"
  },
  "payload": {
    "fields": [
      "data.documentId"
    ],
    "result_format": "normalized",
    "responses_filter": "all",
    "include_informational_questions": true
  },
  "authentication": {
    "type": "none"
  },
  "signing": {
    "legacy_signature": true
  }
}'
{
  "id": "123e4567-e89b-12d3-a456-426614174000",
  "object": "webhook_endpoint",
  "org_id": "string",
  "url": "https://hooks.example.com/brellium",
  "description": "Production EHR sync",
  "status": "enabled",
  "disabled_reason": "manual",
  "disabled_at": null,
  "event_types": [
    "audit.completed"
  ],
  "filters": {
    "question_set_ids": [
      "123e4567-e89b-12d3-a456-426614174000"
    ],
    "audit_results": "all"
  },
  "payload": {
    "format": "standard_v1",
    "fields": [
      "data.documentId",
      "data.result",
      "responses",
      "responses.query",
      "responses.answer",
      "responses.context"
    ],
    "result_format": "normalized",
    "responses_filter": "all",
    "include_informational_questions": false
  },
  "authentication": {
    "type": "none"
  },
  "signing": {
    "secret_hint": "a1B2",
    "legacy_signature": false,
    "previous_secret_expires_at": null
  },
  "failing_since": null,
  "created_at": "2026-09-24T02:34:54.489Z",
  "updated_at": "2026-09-24T02:34:54.489Z"
}
Brellium API