---
title: "Update webhook"
method: PUT
path: "/webhooks/{id}"
tags: ["Webhooks"]
---

# Update webhook

`PUT /webhooks/{id}`

Update an existing webhook's configuration. All fields are optional.

**gigstack Connect:** Update webhooks for other teams using the `team` parameter.

## Path parameters

- `id` string, required

## Query parameters

- `team` string

## Request body

- WebhookUpdateInput
  - `url` string, url, nullable — HTTPS endpoint URL to receive webhook events
  - `events` string[], nullable — Array of event types to subscribe to
  - `description` string, nullable — Optional description of the webhook purpose
  - `status` 'active' | 'inactive', nullable — Webhook status - active or inactive

## Response `200`

Webhook updated successfully

- object
  - `success` boolean
  - `message` string
  - `data` ApiPublicWebhook
    - `id` string, required — Unique webhook identifier
    - `url` string, url, required — HTTPS endpoint URL to receive webhook events
    - `events` string[], required — Array of event types to subscribe to
    - `status` 'active' | 'inactive', required — Webhook status - active or inactive
    - `description` string, nullable — Optional description of the webhook purpose
    - `owner` string, required — User ID who created the webhook
    - `created_at` number, required — Unix timestamp (milliseconds) of webhook creation

## Other responses

- `400` — Invalid webhook data
- `401` — Unauthorized
- `404` — Webhook not found
- `500` — Internal Server Error

---

[API](https://skmtc.dev/disruptive-learning/apis/gigstack-api-v2.md) · [All operations](https://skmtc.dev/disruptive-learning/apis/gigstack-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/disruptive-learning/gigstack-api-v2/revisions/5cf53ffd7580/schema)
