HAREPOST docs Get a key ➔

Look up deliveries

Read delivery status and the full attempt history for your account.

Every send is recorded. Use these endpoints to check what happened to a delivery, page through your history, and inspect each attempt.

Get one delivery

GET https://api.harepost.com/v1/deliveries/{queue_id}
Authorization: Bearer hp_live_YOUR_KEY

Returns the delivery and its full attempt history:

{
  "queue_id": "hr_9f2a81k2",
  "target": "https://your-app.com/webhook",
  "method": "POST",
  "status": "delivered",
  "last_status": 200,
  "idempotency_key": "ord_123-paid",
  "created_at": "2026-06-10T14:22:10Z",
  "updated_at": "2026-06-10T14:22:12Z",
  "attempts": [
    {
      "attempt": 1,
      "outcome": "delivered",
      "http_status": 200,
      "latency_ms": 84,
      "error": null,
      "created_at": "2026-06-10T14:22:12Z"
    }
  ]
}

Here attempts is an array, one entry per delivery attempt, in order. A delivery you do not own returns 404.

List deliveries

GET https://api.harepost.com/v1/deliveries
Authorization: Bearer hp_live_YOUR_KEY

Returns your deliveries, newest first:

{
  "data": [
    {
      "queue_id": "hr_9f2a81k2",
      "target": "https://your-app.com/webhook",
      "method": "POST",
      "status": "delivered",
      "attempts": 1,
      "last_status": 200,
      "idempotency_key": "ord_123-paid",
      "created_at": "2026-06-10T14:22:10Z",
      "updated_at": "2026-06-10T14:22:12Z"
    }
  ],
  "next_cursor": null
}

In the list, attempts is a count. In the single-delivery response above, attempts is the full array. The list gives you the shape of your traffic; fetch one delivery for its attempt detail.

Query parameters

ParameterNotes
statusFilter by status: queued, delivered, retrying, rejected, or dead_letter.
limitResults per page, 1 to 100. Defaults to 25.
cursorPass the next_cursor from the previous response to get the next page.

Paging

When more results are available, next_cursor holds a value; when you have reached the end, it is null. Pass the cursor on the next request to continue:

curl "https://api.harepost.com/v1/deliveries?status=dead_letter&limit=50&cursor=2026-06-10T14:22:10Z" \
  -H "Authorization: Bearer hp_live_YOUR_KEY"

Status codes

CodeMeaning
200Success.
400Invalid status filter.
401Missing or invalid API key.
404The delivery does not exist or is not on your account.