Skip to content

API & Webhooks

Book, hold and read your restaurant's reservations from your own systems.

The Service API lets you read your restaurant’s reservations and guests programmatically, and lets you book, hold, change and cancel on the restaurant’s behalf. It is a clean, predictable JSON API: stable resource shapes, cursor pagination, ISO-8601 timestamps, and a structured error envelope.

The base URL is https://api.useservice.app.

Create a key in the back office under Settings → Developers, and grant it the scopes your integration needs. Keys are per-restaurant, and the examples here read yours from an environment variable — see Authentication.

Terminal window
curl https://api.useservice.app/v1/reservations \
-H "Authorization: Bearer $SERVICE_API_KEY"

Take the booking

Create, modify and cancel reservations, with an idempotency key so a retry after a timeout resolves to the booking you already made.

Hold the table

Take a slot off sale while a guest pays or decides, then convert the hold into the booking or hand it straight back.

Read reservations & guests

List and retrieve reservations (with table assignments and lifecycle history) and guests (identity, contact, consent, visit stats).

React to changes

Subscribe to signed webhooks for the full reservation lifecycle, holds, and guest and feedback events.

Self-serve

Mint keys and register webhook endpoints from the back office (Settings → Developers), with no sales call and no support ticket. API access rides on the restaurant’s Premium plan; a key without it is refused with plan_required.

Predictable & versioned

Date-based versioning pinned per key, so your integration never breaks underneath you.

Seven guides that start from what you are building rather than from an endpoint, and name the constraint that decides whether you can build it.