v1

latestOpenAPI 3.0.02026-07-26870415.2 KB
reservations

List reservations

Returns cursor-paginated PMS reservations for a workspace, ordered by arrival date (most recent first by default). Filter by status or listing_id to narrow the result set. Reservations are synced from the workspace's PMS integration (Hostaway, Guesty, Airbnb, etc.). Airbnb reservations include airbnb_payment when normalized Airbnb payout, fee, and tax amounts are available. To sort by departure or booking creation time, use /v1/contacts/{id}/reservations for a contact-scoped view.

get/v1/reservations

Query parameters

workspace_idstring required

Workspace to query.

Example:j57demo8f8x7c9v0n2q4r6t8y1u3i5o
limitinteger

Page size. Defaults to 20. Max 100.

cursorstring

Pagination cursor returned as next_cursor on the previous page.

order'asc' | 'desc'

Sort direction over arrival date. Defaults to desc (most recent arrivals first).

statusstring

Filter by reservation status. Values are PMS-normalized and vary by integration (common examples: confirmed, cancelled, inquiry, new).

Example:confirmed
listing_idstring

Filter to reservations for a single listing. Matches the listing_id value returned on reservation objects.

Example:12345

Response

Reservations

next_cursorstring nullable required
has_moreboolean required

Example response

{
  "data": [
    {
      "id": "rs77c0dy0mgdpzmqz6tesry8w184002s",
      "workspace_id": "j57demo8f8x7c9v0n2q4r6t8y1u3i5o",
      "contact_id": "ph77c0dy0mgdpzmqz6tesry8w184002s",
      "listing_id": "listing-demo-12345",
      "pms_platform": "Guesty",
      "external_id": "guesty-demo-res-001",
      "channel_name": "Airbnb",
      "channel_reservation_id": "HMDEMO1234",
      "confirmation_code": "HMDEMO1234",
      "status": "confirmed",
      "source": "airbnb",
      "arrival_date": "2026-05-01",
      "arrival_at": "2026-05-01T15:00:00.000Z",
      "departure_date": "2026-05-05",
      "departure_at": "2026-05-05T11:00:00.000Z",
      "num_nights": 4,
      "number_of_guests": 2,
      "number_of_adults": 2,
      "number_of_children": 0,
      "number_of_infants": 0,
      "number_of_pets": 0,
      "guest": {
        "name": "Jordan Guest",
        "first_name": "Jordan",
        "last_name": "Guest",
        "email": "jordan.guest@example.com",
        "phone": "+14155550123",
        "country": "US",
        "city": "San Francisco",
        "locale": "en",
        "external_account_id": "airbnb_user_demo_001"
      },
      "payment": {
        "is_paid": true,
        "total_price": 920.5,
        "currency": "USD",
        "outstanding_balance": 0
      },
      "airbnb_payment": {
        "currency": "USD",
        "expected_payout_amount": 782.4,
        "expected_payout_amount_before_taxes": 735.25,
        "listing_base_price": 860,
        "listing_cancellation_payout": null,
        "listing_cancellation_host_fee": null,
        "total_paid_amount": 940.5,
        "transient_occupancy_tax_paid_amount": 58.1,
        "airbnb_collected_tax_amount": 42,
        "pass_through_tax_amount_paid_to_host": 16.1,
        "pass_through_tax_expected_amount": 16.1,
        "host_fee_base": 25.8,
        "host_fee_vat": 0,
        "guest_fee_base": 72,
        "guest_fee_vat": 0,
        "tax_withholding_amount": null
      },
      "door_code": null,
      "key_code": null,
      "guest_note": null,
      "ai_paused": false,
      "created_at": "2026-04-18T17:20:00.000Z",
      "updated_at": "2026-04-18T17:20:00.000Z"
    }
  ],
  "next_cursor": "page-token",
  "has_more": true
}