Skip to main content
Authentication works differently depending on which API surface you are using.

Widget API — no authentication required

The Widget API is fully public. Every endpoint uses your {publicToken} directly in the URL path. This token identifies your restaurant and is safe to expose in client-side code.
You do not need to send any headers or credentials. Anyone with your public token can call the Widget API, which is intentional — it powers your guest-facing booking page.

Restaurant API — JWT Bearer token required

Every endpoint under /api/v1/restaurant/ requires an Authorization header containing a valid JWT Bearer token. You obtain this token by signing in through La Krème’s login flow. After a successful login, your session includes an access_token — this is the JWT you pass to the API.

Sending your token

Include the token as a Bearer value in the Authorization header on every request:

Example with curl

For requests with a body, also set the Content-Type header:

Token expiry

JWT tokens expire after a period of time. When your token expires, the API returns a 401 Unauthorized response. Re-authenticate through La Krème’s login flow to get a fresh token and retry the request.

Error responses