> ## Documentation Index
> Fetch the complete documentation index at: https://docs.teel.finance/llms.txt
> Use this file to discover all available pages before exploring further.

# Update subscription

> Update a webhook subscription

All fields are optional — any field you omit stays unchanged. Returns the updated subscription. Pausing stops new deliveries from being enqueued; in-flight retries continue.

<Info>**Scope** `webhooks:write` · rate-limited</Info>

## Headers

<ParamField header="Authorization" type="string" required>
  API key.
</ParamField>

## Path parameters

<ParamField path="id" type="string" required>
  Subscription UUID.
</ParamField>

## Request body

<ParamField body="url" type="string">
  New endpoint URL. Same validation rules as [Create](/api-reference/webhooks/subscriptions/create).
</ParamField>

<ParamField body="events" type="string[]">
  New event allow-list. Replaces the existing list.
</ParamField>

<ParamField body="status" type="string">
  `active` or `paused`. `disabled` is reserved for ops-side use and not user-settable.
</ParamField>

<ParamField body="label" type="string">
  New label.
</ParamField>

## Response

Same shape as one row on [List subscriptions](/api-reference/webhooks/subscriptions/list).

<ResponseExample>
  ```json 200 theme={null}
  {
    "id": "1c84203c-b4e3-40de-83a9-51bc0d9c991f",
    "url": "https://hooks.example.com/teel",
    "events": ["payout.created", "payout.status.updated"],
    "status": "paused",
    "secretPrefix": "whsec_Pdt_BP",
    "label": "Production receiver",
    "lastSuccessAt": "2026-05-27T09:31:02Z",
    "lastFailureAt": null,
    "createdAt": "2026-05-27T09:30:00Z",
    "updatedAt": "2026-05-27T10:15:00Z"
  }
  ```
</ResponseExample>
