API Documentation

Build on BookingFlow

Connect your POS system, build custom integrations, let AI agents book on behalf of your customers, or sync calendars with third-party tools — all through our RESTful API.

API keys available on every plan. Generate them in Dashboard → Settings → Developers.

What you can build

Full access to your bookings, rooms, schedules, and customer data.

RESTful API

Standard HTTP methods (GET, POST, PUT, DELETE). JSON request and response bodies. Predictable resource-oriented URLs.

Secure authentication

API keys for server-to-server communication. Scoped permissions per key. Rotate keys without downtime.

Real-time updates

Changes to bookings, schedules, and rooms sync instantly. No polling required. Webhooks notify your system when events happen.

Webhook support

Get notified when bookings are created, updated, or canceled. Build automated workflows without constant API calls.

Example Request

curl https://bookingflowai.com/api/v1/public/me \
  -H "Authorization: Bearer $BOOKINGFLOW_KEY"

Generate your API key in Dashboard → Settings → Developers. Full reference at /backend/docs/api.md.

Key API Endpoints

Full CRUD operations on all core resources.

Bookings

GET
/v1/bookings

List all bookings with filters (date, room, status)

GET
/v1/bookings/:id

Get a single booking by ID

POST
/v1/bookings

Create a new booking

PUT
/v1/bookings/:id

Update a booking (reschedule, modify guests)

DELETE
/v1/bookings/:id

Cancel a booking and process refund

Rooms

GET
/v1/rooms

List all rooms/experiences

GET
/v1/rooms/:id

Get room details, pricing, and availability

POST
/v1/rooms

Create a new room or experience

PUT
/v1/rooms/:id

Update room details or pricing

Schedules

GET
/v1/schedules

Get availability for a date range

POST
/v1/schedules/block

Block out dates for maintenance or events

Customers

GET
/v1/customers

List all customers

GET
/v1/customers/:id

Get customer profile and booking history

Authentication

All API requests require authentication via API keys. Generate keys from your dashboard (Business+ plan required).

Include your API key in the header

Authorization: Bearer YOUR_API_KEY
  • API keys are scoped to your organization. They cannot access other customers' data.
  • You can create multiple keys with different permissions (read-only, read-write).
  • Rotate keys anytime without downtime. Old keys continue working until revoked.

Webhooks

Get real-time notifications when events happen in your account. No polling required.

booking.created

Fired when a customer completes a new booking.

booking.updated

Fired when a booking is rescheduled or modified.

booking.canceled

Fired when a booking is canceled and refunded.

payment.succeeded

Fired when payment is successfully processed via Stripe.

Webhooks deliver a JSON payload to your endpoint via HTTP POST. We retry failed deliveries with exponential backoff.

API Documentation

Full REST reference, quickstart snippets, and a cURL playground live in the backend docs and the dashboard Developers page.

Generate a key, scope it to the permissions you need, and point your integration or AI agent at /api/v1/public.

Open developer settings
Online