Gravv docs
Docs Agent Sign in Get API keys

List webhook event history

Lists the webhook delivery records for your business, newest first. There is one record for each event Gravv sent you. Sandbox and live keys see separate records. You can combine all filters.

GEThttps://api.gravv.xyz/v1/webhooks/history

Query Parameters

Exact transaction ID stored with the event. For transfers it is the first of associated_transactions, not the transfer reference.

Event category: transfer, inflow, account, applications.accounts, external_account, cards, collection or customer. A full event type such as transfer.status.completed matches nothing and returns an empty list.

Delivery status. Any other value returns an empty list, not an error.

Possible values: pending, processing, sent, failed, retrying

Records created at or after this time. Send RFC3339 (2026-10-01T00:00:00Z), a date (2026-10-01, read as 00:00 UTC) or a datetime without a zone (read as UTC).

Records created at or before this time, in the same formats. A date alone means 00:00 of that day, so the day itself is left out. It must not be before start_date.

Records per page. The API lowers a value over 100 to 100, and 0 means the default.

Page number, starting at 1

Responses

Status Description
200 A page of delivery records
400 The request failed, for example start_date must not be after end_date.

200 response

Delivery records, newest first. Empty when nothing matches.

Delivery record ID. Use it with the detail, calls and send routes.

Transaction ID stored with the event, when there is one. For a transfer event it is the first of associated_transactions, not the transfer reference. For a collection event it is the collection transaction_id.

The event category, such as transfer or cards. The full event type is in the detail route's payload.event_type.

URL path of your endpoint at the last attempt. Empty before the first attempt.

Always POST

Possible values: POST

Delivery status. A delivery moves from pending to processing, then to sent on a 2xx or to retrying on a failure. After the last allowed attempt it is failed.

Possible values: pending, processing, sent, failed, retrying

Last HTTP status from your endpoint. Null until your endpoint responds. 0 when an attempt failed before Gravv made any call, for example because no webhook URL is set or the URL is not https.

When Gravv recorded the event

Time of the last failed attempt. The API leaves it out until an attempt fails.

The page size used, after the default and the cap of 100

Current page, starting at 1

Number of matching records

Number of pages. 0 when there are no records.

{
"data": {
"items": [
  {
    "id": "0b3c2f4e-7c1a-4e0e-9a51-2f7d1c9e8a10",
    "transaction_id": "5d1e7a3b-2c4f-4b8e-9d6a-1f0e3c2b7a95",
    "event_type": "transfer",
    "status": "sent",
    "path": "/hooks/gravv",
    "http_method": "POST",
    "response_status_code": 200,
    "created_at": "2026-10-13T09:15:02.481263Z"
  },
  {
    "id": "8f6d2a1c-3b5e-4c7d-8e9f-0a1b2c3d4e5f",
    "event_type": "cards",
    "status": "retrying",
    "path": "/hooks/gravv",
    "http_method": "POST",
    "response_status_code": 500,
    "created_at": "2026-10-13T09:10:44.102938Z",
    "last_attempt": "2026-10-13T09:11:15.330127Z"
  }
],
"items_per_page": 50,
"page": 1,
"total_items": 2,
"total_pages": 1
},
"error": null
}

400 response

{
"data": null,
"error": "invalid limit parameter: must be a valid integer"
}

Authorization

  • ApiKeyAuth
Was this page helpful?
ESC