---
title: "Update a webhook"
method: PATCH
path: "/v2/webhooks/{teamId}/{webhookId}"
---

# Update a webhook

`PATCH /v2/webhooks/{teamId}/{webhookId}`

Updates mutable fields. Changing `url` resets verification and re-runs the handshake.

## Path parameters

- `teamId` string, uuid, required
- `webhookId` string, uuid, required

## Request body

- WebhookUpdate — Partial update. Changing `url` resets verification and re-runs the handshake.
  - `name` string
  - `description` string, nullable
  - `url` string, uri
  - `enabled` boolean

## Response `200`

The updated webhook.

- WebhookWithVerification — A registered webhook endpoint.
  - `id` string, uuid, required
  - `name` string, required
  - `description` string, nullable
  - `url` string, uri, required — Endpoint events are delivered to.
  - `team_id` string, uuid, required
  - `enabled` boolean, required — Disabled webhooks are skipped at delivery time.
  - `verified` boolean, required — True once the endpoint has completed the verification handshake.
  - `verified_at` string, date-time, nullable
  - `verification_token` string — Stable token replayed to the endpoint (as the `micro_hook_token` query param) during the verification handshake. The endpoint may check it to confirm the request originated from Micro.
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, nullable
  - `verification` WebhookVerification — Status of the verification handshake enqueued by this request. The handshake runs asynchronously in the dispatcher; poll the webhook (its `verified` flag flips to true on success) to observe the outcome.
    - `status` 'pending', required — Always `pending` at the moment of the response — the dispatcher has been asked to run the handshake but has not reported back yet.

## Other responses

- `400` — Request validation failed. Inspect `error.errors` for field-level details.
- `401` — Missing or invalid credentials.
- `403` — Authenticated but not permitted to perform this action.
- `404` — Resource or route does not exist.
- `409` — Request conflicts with current state (e.g., duplicate or stale write).

---

[API](https://skmtc.net/micro-so/apis/prism.md) · [All operations](https://skmtc.net/micro-so/apis/prism/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/micro-so/prism/versions/558afa74332e/schema)
