List events
GET/v1/events
Events of the last 30 days, OLDEST first, limited to the types this key can read — the same events webhooks deliver, without data. Catch up after downtime with createdSince and nextCursor, then GET the objects you need.
Permissions: any valid key · Kind: read · Cost: 1 unit
Path parameters
None.
Query parameters
| Field | Type | Required | Description |
|---|---|---|---|
type |
"trip.created" | "trip.updated" | "trip.archived" | "trip.restored" | "trip.published" | "trip.unpublished" | "trip.deleted" | "trip.itinerary.updated" | "quote.created" | "quote.updated" | "quote.sent" | "quote.accepted" | "quote.rejected" | "quote.deleted" | "traveler.added" | "traveler.updated" | "traveler.removed" | "trip.contact.updated" | "document.created" | "document.updated" | "document.deleted" | ||
createdSince |
datetime | ||
limit |
integer | 1–100, default 25 | |
cursor |
string | max 500 chars |
Response 200
| Field | Type | Required | Description |
|---|---|---|---|
object |
"list" | yes | |
data |
object[] | yes | |
data[].object |
"event" | yes | |
data[].id |
uuid | yes | |
data[].type |
"trip.created" | "trip.updated" | "trip.archived" | "trip.restored" | "trip.published" | "trip.unpublished" | "trip.deleted" | "trip.itinerary.updated" | "quote.created" | "quote.updated" | "quote.sent" | "quote.accepted" | "quote.rejected" | "quote.deleted" | "traveler.added" | "traveler.updated" | "traveler.removed" | "trip.contact.updated" | "document.created" | "document.updated" | "document.deleted" | "ping" | yes | |
data[].createdAt |
string | yes | |
data[].subject |
object | yes | |
data[].subject.object |
"trip" | "quote" | "traveler" | "contact" | "document" | "endpoint" | yes | |
data[].subject.id |
uuid | yes | |
data[].subject.tripId |
uuid | null | yes | |
data[].changed |
string[] | yes | The API fields that changed (names only). |
nextCursor |
string | null | yes |
Errors
Errors are problem details. Besides the refusals described above, any call like this one can return:
invalid_request— Invalid requestunauthorized— Missing or invalid API keyinsufficient_scope— Missing permissionrate_limited— Rate limit reached