# List an endpoint's deliveries

Source: https://docs.coderhelm.com/api/reference/webhook-endpoints/list-webhook-deliveries

`GET /api/webhooks/endpoints/{endpoint_id}/deliveries`

The endpoint's deliveries, newest first, each with every attempt. Kept 14 days.

## Authentication

A team API key: `Authorization: Bearer chk_...`. The key needs the `webhooks` scope. See [Authentication](https://docs.coderhelm.com/api/authentication).

## Parameters

### Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `endpoint_id` | string | yes | The endpoint's id. |

### Query parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `status` | string | no | `pending`, `failed`, `ok` or `all` (default). |
| `limit` | integer | no | 1 to 100, default 25. |

## Responses

### 200

The deliveries.

Headers: `RateLimit-Limit`, `RateLimit-Remaining`, `RateLimit-Reset`.

### 401

The key is missing, malformed, revoked or expired, or the person who made it left the team.

### 403

The key lacks the scope this endpoint needs (`missing_scope`).

### 404

No such endpoint on this team.

### 429

Over the key's rate limit (`rate_limited`), or, for endpoints that start work, over the team's monthly token limit (`token_limit_reached`).

Headers: `RateLimit-Limit`, `RateLimit-Remaining`, `RateLimit-Reset`, `Retry-After`.

### 500

Something failed on CoderHelm's side. Safe to retry reads.

## Example request

cURL:

```bash
curl -X GET 'https://api.coderhelm.com/api/webhooks/endpoints/ep_01jbendpt4a7b0c3d6e9f2g5h8/deliveries' \
  -H "Authorization: Bearer $CODERHELM_API_KEY"
```

TypeScript:

```ts
const res = await fetch("https://api.coderhelm.com/api/webhooks/endpoints/ep_01jbendpt4a7b0c3d6e9f2g5h8/deliveries", {
  method: 'GET',
  headers: {
    Authorization: `Bearer ${process.env.CODERHELM_API_KEY}`,
  },
});
if (!res.ok) {
  const { error, code } = await res.json();
  throw new Error(`${res.status} ${code}: ${error}`);
}
const data = await res.json();
```

Python:

```python
import os
import requests

headers = {
    "Authorization": f"Bearer {os.environ['CODERHELM_API_KEY']}",
}
res = requests.request("GET", "https://api.coderhelm.com/api/webhooks/endpoints/ep_01jbendpt4a7b0c3d6e9f2g5h8/deliveries", headers=headers)
if not res.ok:
    raise RuntimeError(f"{res.status_code}: {res.json().get('error')}")
data = res.json()
```

## Example response

```json
{
  "deliveries": [
    {
      "attempts": [
        {
          "at": "2026-10-26T14:31:47.901Z",
          "code": 200,
          "duration_ms": 87,
          "error": ""
        }
      ],
      "created_at": "2026-10-26T14:31:47.780Z",
      "event": "run.completed",
      "event_id": "evt_01JBEVNT8M1N4P7Q0R3S6T9V2W",
      "id": "01JBDLVR5T8V1W4X7Y0Z3A6B9C",
      "next_retry_at": null,
      "outcome": "Delivered (200)",
      "reason": "",
      "reason_fix": "",
      "reason_message": "",
      "status": "handled"
    }
  ]
}
```
