# GET /v2/webhooks/{id}/deliveries

**Delivery history**

Returns the most-recent deliveries (pings and fires) for a webhook, newest-first. Useful for diagnosing failures and verifying signatures. The full request body is not included; we keep them small.

## Plan access

- **Plan access.** Included on every plan.
- **Cadence.** Hobby 5m · Pro 1m · Scale 1m · Enterprise 1m.
- **Capacity.** Hobby 5 · Pro 25 · Scale 100 · Enterprise unlimited.

## Query / path parameters

| Name | In | Type | Required | Description |
|------|----|----|----------|-------------|
| `id` | path | string | yes | Webhook id. Example: `wh_smRsF3-z36o`. |
| `status` | query | string | no | Filter by delivery status. Enum: `pending`, `delivered`, `permanent_failure`. |
| `limit` | query | integer | no | Page size. Max 100. Default: `50`. |
| `cursor` | query | string | no | Opaque cursor. |

## Status codes

- **200** — Page of deliveries with `as_of`, `count`, `next_cursor`, and `deliveries`.
- **404** — Webhook not found.

## Sample response

```json
{
  "as_of": "2026-05-14T11:41:01.000Z",
  "count": 2,
  "next_cursor": null,
  "deliveries": [
    {
      "id": "dlv_yKt4Ne92PqQXmZ",
      "webhook_id": "wh_smRsF3-z36o",
      "event": "webhook.fired",
      "target_url": "https://your-app.example.com/webhooks/tickerbot",
      "attempt": 1,
      "status": "delivered",
      "next_attempt_at": 1778721240,
      "last_status_code": 200,
      "last_error": null,
      "created_at": 1778721180,
      "delivered_at": 1778721181
    }
  ]
}
```

## Examples

### Recent deliveries

Request:

```shell
curl "https://api.tickerbot.io/v2/webhooks/wh_smRsF3-z36o/deliveries?limit=2" \
  -H "Authorization: Bearer YOUR_KEY"
```

Response (`200`):

```json
{
  "as_of": "2026-05-14T11:41:01.000Z",
  "count": 2,
  "next_cursor": null,
  "deliveries": [
    {
      "id": "dlv_yKt4Ne92PqQXmZ",
      "webhook_id": "wh_smRsF3-z36o",
      "event": "webhook.fired",
      "target_url": "https://your-app.example.com/webhooks/tickerbot",
      "attempt": 1,
      "status": "delivered",
      "next_attempt_at": 1778721240,
      "last_status_code": 200,
      "last_error": null,
      "created_at": 1778721180,
      "delivered_at": 1778721181
    }
  ]
}
```

## Notes

- After 5 consecutive failed attempts, the delivery is marked `permanent_failure` and the parent webhook is flipped to `disabled`.
- Retry schedule: 30s, 2m, 10m, 1h, 6h (5 retries → 6 total POSTs). See /api/endpoints/webhooks for full delivery semantics.

---

Interactive sandbox + parameter editor: https://tickerbot.io/api/endpoints/webhooks/deliveries
