---
title: "Update a webhook"
method: PUT
path: "/api/projects/{id}/integrations/{intId}"
tags: ["Integrations"]
---

# Update a webhook

`PUT /api/projects/{id}/integrations/{intId}`

## Request

- Base URL: `https://dosai.pro`
- URL: `https://dosai.pro/api/projects/{id}/integrations/{intId}`
- Auth: HTTP bearer

## Request body

- IntegrationCreate
  - `name` string, required
  - `type` string
  - `url` string, required
  - `events` string[]
  - `headers` object
  - `is_active` boolean

## Response `200`

Updated integration, wrapped in `data`.

- object
  - `data` Integration, required
    - `id` string, uuid
    - `project_id` string, uuid
    - `name` string
    - `type` string
    - `url` string
    - `is_active` boolean
    - `events` string[]
    - `created_at` string, date-time
    - `updated_at` string, date-time

## Other responses

- `400`: Validation failed.
- `401`: Missing, invalid, expired or revoked key.
- `403`: Not allowed. Distinguish by `code`: `INSUFFICIENT_SCOPE` (read-only key attempted a mutation), `API_KEY_PROJECT_SCOPE` (project-scoped key reached outside its project), `FORBIDDEN` (the user's role on this project is too low), `ACCOUNT_BANNED`.
- `404`: No such resource, or it belongs to another account.
- `429`: Too many requests. 120/min per key overall, plus a stricter per-endpoint budget. Retry after the number of seconds in Retry-After.

---

[API](https://skmtc.dev/dosai/apis/dos-ai-public-api.md) · [All operations](https://skmtc.dev/dosai/apis/dos-ai-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dosai/apis/dos-ai-public-api/revisions/38ce5f4e8f50?raw)
