AUTH.

All API requests must include your API key in the X-API-KEY HTTP header.

curl -X GET https://carteblanche.rocks/api/v1/restaurants \ -H "X-API-KEY: your_api_key_here"

WEBHOOKS.

Stay informed with instant notifications. Our Webhook engine sends data directly to your system whenever a new reservation is made or a status changes.

{ "event": "reservation.created", "timestamp": "2026-05-08T14:30:00Z", "data": { "id": "res_827364", "restaurant": "The Jane", "covers": 2 } }

ENDPOINTS

GET /api/v1/restaurants

Only restaurants in the current Michelin or Gault&Millau guide.

[ { "name": "The Jane", "slug": "the-jane", "city": "Antwerp", "stars": 2 }, ... ]
GET /api/v1/availability

Real-time availability from our top chefs. Book with a small {price} deposit to prevent no-shows.

[ { "slug": "the-jane", "date": "2026-05-08", "items": [ { "id": "three-course", "capacity": 4, "time": "19:30" } ] }, ... ]
POST /api/v1/availability

Push availability directly from your POS or inventory system.

{ "slug": "the-jane", "date": "2026-05-15", "items": [ { "id": "three-course", "capacity": 8, "time": "19:30" } ] }
POST /api/v1/webhooks

Register a URL to receive real-time notifications for your restaurant.

{ "slug": "the-jane", "url": "https://your-system.com/webhooks/cb" }
GET /api/v1/reservations/{id}

Retrieve the current status of a reservation.

POST /api/v1/reservations

Create a new reservation from an external system. Guests are identified by email.

{ "slug": "the-jane", "date": "2026-05-15", "combi": "three-course", "email": "guest@carteblanche.rocks", "name": "John Doe", "persons": 2, "phone": "+32...", "notes": "Window seat please" }
PUT /api/v1/reservations/{id}

Update an existing reservation (e.g., change covers or date).

{ "persons": 4, "notes": "Updated: now 4 people" }
DELETE /api/v1/reservations/{id}

Cancel a reservation. This releases the seats back to availability.