# Delete a webhook

> Deletes the webhook and drops its waiting deliveries.

`DELETE /v1/webhooks/{id}`

Deletes the webhook and drops its waiting deliveries.

Needs a key with the `webhooks:manage` scope. [Keys and scopes](https://usebluebot.com/docs/concepts/api-keys)

## Path parameters

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | Yes | The webhook’s id. Starts with `wh_` |

## Example

```bash
curl -X DELETE "https://usebluebot.com/api/v1/webhooks/wh_1Hq2LxW9cVbN3mKpRtYs0a" \
  -H "Authorization: Bearer $BLUEBOT_API_KEY"
```

```ts
import BlueBot from '@usebluebot/sdk';

const client = new BlueBot({ apiKey: process.env.BLUEBOT_API_KEY });

const result = await client.webhooks.delete('wh_1Hq2LxW9cVbN3mKpRtYs0a');
console.log(result);
```

```python
import os
from bluebot import BlueBot

client = BlueBot(api_key=os.environ["BLUEBOT_API_KEY"])

result = client.webhooks.delete("wh_1Hq2LxW9cVbN3mKpRtYs0a")
print(result)
```

## Response

`200`: It is gone.

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `id` | string | Yes |   |
| `object` | "webhook" | Yes |   |
| `deleted` | true | Yes |   |

The answer, `200`:

```json
{
  "id": "wh_1Hq2LxW9cVbN3mKpRtYs0a",
  "object": "webhook",
  "deleted": true
}
```

## Errors

Every refusal has the same envelope and a page of its own. These are the ones this operation can give.

| Code                                                    | Status | What it means                                                                                                                               |
| ------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| [`unauthorized`](https://usebluebot.com/docs/errors/unauthorized)             | 401    | The request carried no key, or a key BlueBot doesn’t know: mistyped, revoked, or a test key sent to the live API.                           |
| [`insufficient_scope`](https://usebluebot.com/docs/errors/insufficient_scope) | 403    | The key doesn’t carry the scope the endpoint needs. Each endpoint’s reference names its scope.                                              |
| [`rate_limited`](https://usebluebot.com/docs/errors/rate_limited)             | 429    | Too many requests. A key may make 120 requests a minute. The `RateLimit` header says how many are left, and `Retry-After` how long to wait. |
| [`internal`](https://usebluebot.com/docs/errors/internal)                     | 500    | Something went wrong on BlueBot’s side. It was reported. Send the request again; with an Idempotency-Key that is always safe.               |
| [`not_found`](https://usebluebot.com/docs/errors/not_found)                   | 404    | There is no such thing on this account. Ids are prefixed by kind, so a message id starts with `msg_`.                                       |

## Try it
