Build on BOOKING BIBLE
A complete REST API for yoga and fitness studio management. Embed schedules, automate bookings, build branded apps, or connect with any platform.
What will you build?
From widgets to full mobile apps — the API is designed for every kind of integration.
Custom Booking Widget
Embed a live schedule on your website with real-time availability. 5 lines of code.
Branded Mobile App
Build a white-label app with your studio's colors, logo, and booking flow.
Kiosk Check-in
Set up a self-service check-in terminal with scoped API keys. No member data exposed.
Platform Integration
Connect with ClassPass, Zapier, Make, or any automation platform via webhooks.
Custom Dashboard
Build reporting tools, BI integrations, or a custom admin view for your workflow.
Multi-Location Sync
Sync schedules, capacity, and bookings across locations in real-time.
One API, endless possibilities
A cohesive REST surface for every studio workflow.
Discovery, bookings, passes, payments, admin, staff
Real-time notifications for every action
Fine-grained permissions per integration
Two ways to authenticate
Choose what fits your integration — or use both.
JWT Tokens
For mobile apps, web apps, and any flow where a user logs in. Tokens auto-refresh.
POST /api/v1/auth/login
{ "email": "...", "password": "..." }
→ {
"session": {
"access_token": "eyJ...",
"refresh_token": "..."
}
}
// Then use:
Authorization: Bearer eyJ...API Keys
For integrations, widgets, kiosks, and automation. Scoped to exactly what each integration needs. Generate from your admin panel.
X-API-Key: bb_live_a1b2c3d4e5f6g7h8
// Scoped permissions:
read:schedule
write:bookings
read:members
read:payments
write:checkinReal-time events, not polling
Subscribe to 19 event types and get instant POST notifications when things happen.
Bookings
Classes
Members
Passes
Payments
{
"id": "evt_a1b2c3d4",
"type": "booking.created",
"created_at": "2026-04-12T07:15:00Z",
"organization_id": "org_xxxx",
"data": {
"booking_id": "bk_xxxx",
"class_name": "Hot Yoga",
"start_time": "2026-04-12T08:00:00Z",
"status": "confirmed"
}
}
// Node.js — verify signature
const expected = 'sha256=' + crypto
.createHmac('sha256', secret)
.update(rawBody)
.digest('hex');
crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);Predictable, consistent responses
Every endpoint speaks the same shape. No surprises.
{
"data": { ... },
"error": null,
"meta": {
"page": 1,
"limit": 20,
"total": 142,
"has_more": true
}
}{
"data": null,
"error": {
"message": "Booking window closed",
"code": "BOOKING_WINDOW_CLOSED"
}
}Pro 300 req/min, Enterprise 1,000 req/min. Per-key overrides available.
Date-based (like Stripe). Current: 2026-04-11. Breaking changes get 12 months notice.
X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset on every response.
API access on Pro and Enterprise
Free and Starter plans can upgrade anytime. API access activates immediately.
| Pro | Enterprise | |
|---|---|---|
| API Access | ✓ | ✓ |
| Rate Limit | 300/min | 1,000/min |
| API Keys | 5 | 25 |
| Webhook Endpoints | 3 | 10 |
| Price | 999 DKK/mo | 1,999 DKK/mo |
Ready to build?
Get your API key and start shipping in minutes.