---
title: "Update a webhook endpoint"
method: POST
path: "/v1/webhook_endpoints/{webhook_endpoint}"
---

# Update a webhook endpoint

`POST /v1/webhook_endpoints/{webhook_endpoint}`

Updates the webhook endpoint. You may edit the `url`, the list of `enabled_events`, and the status of your endpoint.

## Path parameters

- `webhook_endpoint` string, required

## Response `200`

Successful response.

- WebhookEndpoint — You can configure [webhook endpoints](https://docs.stripe.com/webhooks/) via the API to be notified about events that happen in your Stripe account or connected accounts. Most users configure webhooks from [the dashboard](https://dashboard.stripe.com/webhooks), which provides a user interface for registering and testing your webhook endpoints. Related guide: [Setting up webhooks](https://docs.stripe.com/webhooks/configure)
  - `api_version` string, nullable — The API version events are rendered as for this webhook endpoint.
  - `application` string, nullable — The ID of the associated Connect application.
  - `created` integer, required — Time at which the object was created. Measured in seconds since the Unix epoch.
  - `description` string, nullable — An optional description of what the webhook is used for.
  - `enabled_events` string[], required — The list of events to enable for this endpoint. `['*']` indicates that all events are enabled, except those that require explicit selection.
  - `id` string, required — Unique identifier for the object.
  - `livemode` boolean, required — Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
  - `metadata` object, required — Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
  - `object` 'webhook_endpoint', required — String representing the object's type. Objects of the same type share the same value.
  - `secret` string — The endpoint's secret, used to generate [webhook signatures](https://docs.stripe.com/webhooks/signatures). Only returned at creation.
  - `status` string, required — The status of the webhook. It can be `enabled` or `disabled`.
  - `url` string, required — The URL of the webhook endpoint.

## Other responses

- `default` — Error response.

## Changes

> 20 revisions in range; 3 not diffed, 1 could not be searched.

- **2025-07-22** `c4dc6dbe947e` — 1 info
  - added the optional property `error/payment_intent/latest_charge/anyOf[subschema #2: Charge]/payment_method_details/anyOf[subschema #1: payment_method_details]/cashapp/transaction_id` to the response with the `default` status
- **2025-05-22** `2df8ec106d35` — 1 breaking
  - removed the enum value `invoice.payment.paid` of the request property `enabled_events/items/`
  - …this revision’s changelog is incomplete
- …earlier changes not shown

[Full history](https://skmtc.dev/stripe/apis/spec3/changes/v1/webhook_endpoints/:webhook_endpoint/post.md)

---

[API](https://skmtc.dev/stripe/apis/spec3.md) · [All operations](https://skmtc.dev/stripe/apis/spec3/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/stripe/spec3/revisions/c4dc6dbe947e/schema)
