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.
Full access to your bookings, rooms, schedules, and customer data.
Standard HTTP methods (GET, POST, PUT, DELETE). JSON request and response bodies. Predictable resource-oriented URLs.
API keys for server-to-server communication. Scoped permissions per key. Rotate keys without downtime.
Changes to bookings, schedules, and rooms sync instantly. No polling required. Webhooks notify your system when events happen.
Get notified when bookings are created, updated, or canceled. Build automated workflows without constant API calls.
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.
Full CRUD operations on all core resources.
/v1/bookingsList all bookings with filters (date, room, status)
/v1/bookings/:idGet a single booking by ID
/v1/bookingsCreate a new booking
/v1/bookings/:idUpdate a booking (reschedule, modify guests)
/v1/bookings/:idCancel a booking and process refund
/v1/roomsList all rooms/experiences
/v1/rooms/:idGet room details, pricing, and availability
/v1/roomsCreate a new room or experience
/v1/rooms/:idUpdate room details or pricing
/v1/schedulesGet availability for a date range
/v1/schedules/blockBlock out dates for maintenance or events
/v1/customersList all customers
/v1/customers/:idGet customer profile and booking history
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_KEYGet real-time notifications when events happen in your account. No polling required.
Fired when a customer completes a new booking.
Fired when a booking is rescheduled or modified.
Fired when a booking is canceled and refunded.
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.
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.