API Reference

Booking Intake API.

Feed booking requests from your own website straight into your review queue. Auth via a per-key X-API-Key header - not a session token.

Authentication

One header. One key per integration.

Endpoints

Six endpoints. The core flow is one.

POST/api/v1/bookings/submit

Submit a booking request from your own site. Auth: X-API-Key.

GET/api/v1/bookings/pending

List bookings awaiting your review. Auth: your logged-in session.

POST/api/v1/bookings/{booking_request_id}/accept

Accept a pending booking. Fires the booking.accepted webhook if one's configured. Auth: your logged-in session.

POST/api/v1/bookings/{booking_request_id}/decline

Decline a pending booking. Fires booking.declined. Auth: your logged-in session.

PUT/api/v1/booking-api-keys/webhook

Set (or clear) the URL that receives accept/decline events. Auth: your logged-in session.

POST/api/v1/booking-api-keys/mint

Mint your own API key from your account settings, after accepting the API terms. Auth: your logged-in session.

Webhooks

Signed, opt-in, and never the source of truth.

Configuring a webhook is optional - nothing breaks if you never set one, you'd just poll /bookings/pending instead. If a webhook delivery fails, the accept/decline itself already happened; the webhook is a notification, not a transaction.

Every delivery attempt is logged on our side (URL, status code, success) whether or not yours succeeds - so a missed webhook is something we can actually look into together, not a mystery.

In The Platform

Where your submitted bookings appear.

Every booking your site submits shows up in the Bookings queue as "Website API", ready for your team to quote. When they accept it, your site gets the signed webhook.

The Bookings queue showing requests that came in from the website API
Curious How This Fits Your Site?

See it connected to your own booking form.