# Update a webhook endpoint (/ar/api-reference/webhook-endpoints/updateWebhookEndpoint)

Updates a webhook endpoint. You can update the URL, description, enabled events, status, or metadata.

## PATCH /webhook-endpoints/{id}

### Parameters

- `id` (string, in: path, required) — Webhook endpoint ID

### Request body (required)

Content type: `application/json`

- `url` (string) — The URL to send webhook events to. Must be https.
- `description` (string) — Human-readable description for the endpoint
- `enabledEvents` (Array<string>) — List of event types to subscribe to. Use ['*'] for all events.
- `status` (enum("enabled" | "disabled")) — Endpoint status
- `metadata` (object) — Custom metadata key-value pairs

### Responses

#### 200 — Webhook endpoint updated

Content type: `application/json`

- `id` (string, required) — Unique identifier
- `object` (string, required) — Object type
- `url` (string, required) — The URL to send webhook events to
- `description` (string | null) — Human-readable description
- `status` (enum("enabled" | "disabled"), required) — Endpoint status
- `enabledEvents` (Array<string>, required) — List of enabled event types. Use ['*'] for all events.
- `livemode` (boolean, required) — Whether the endpoint exists in live mode (true) or test mode (false)
- `secret` (string) — Signing secret used to verify webhook deliveries. Only returned when the endpoint is created or its secret is rotated. Store it securely: it cannot be retrieved later.
- `metadata` (object, required) — Custom metadata
- `createdAt` (string (date-time), required) — Creation timestamp
- `updatedAt` (string (date-time), required) — Last update timestamp

#### 404 — Webhook endpoint not found