List bookings
Lists bookings across the locations the app is granted (or one location_id). Two modes: a bounded slot window (start/end, at most 31 days, default the next 7 days) ordered by slot start, or updated_since, which drains bookings updated after an exclusive checkpoint oldest-first so a partner can catch up after downtime. Page with limit and the previous page’s next_cursor as starting_after; has_more says whether another page exists. Ties on the ordering timestamp never skip or repeat, and a booking that changes between pages simply re-enters the feed. Take the next updated_since checkpoint from the newest updated_at you have processed minus a few seconds of overlap and dedupe by id + version: a booking committed after your drain can carry an updated_at set when its transaction began. To find the booking a guest is calling about, pass location_id with phone and/or confirmation_code: without a window this matches bookings at any time, ordered by slot start; add start/end to narrow it. At a provider-managed location a lookup with phone first checks the provider, so a reservation made directly there is found; a code-only lookup covers the reservations Maple already knows about. A lookup without location_id answers 400 location_required, an unusable phone 400 invalid_phone. Locations the bookings surface is not switched on for are omitted (an explicit location_id answers 422 bookings_not_enabled). Requires bookings:read.
Authorizations
API key — mpk_test_… for the sandbox, mpk_live_… for production. Issued by Maple during partner onboarding.
Query Parameters
Restrict to one granted location. Default: every location the app is granted.
ISO-8601 instant. With end, lists bookings whose slot starts in [start, end) — at most 31 days. Default window: now to now + 7 days.
ISO-8601 instant, exclusive. Required with start.
ISO-8601 instant, exclusive checkpoint. Drains bookings updated after it oldest-first — the catch-up path after downtime. Mutually exclusive with start/end.
requested, confirmed, seated, completed, declined_by_venue, cancelled_by_guest, cancelled_by_venue, cancelled_unattributed, no_show Find a guest’s bookings by the phone on the booking. E.164, or a US number without +1 and with any formatting; it is normalized before matching. Requires location_id. Without a window, matches bookings at any time.
Find a booking by the confirmation_code the guest was given, exactly as the booking shows it. Requires location_id. Without a window, matches bookings at any time.
1 - 64The previous page’s next_cursor (opaque). Omit for the first page.
Page size, 1–100. Default 20.
^[+-]?\d*\.?\d+(?:[Ee][+-]?\d+)?$Response
Success
list Opaque cursor for the next page — pass it back as starting_after. Null on the last page. It encodes the position observed on this page, so it stays correct even if the last booking changes in between.