Overview
What the API offers today, and what it deliberately does not.
The platform exposes an HTTP API over everything the dashboard uses: orders, customers, menu items, categories, tables, recordings, restaurants and reports.
Authentication
Get a token, send it, and understand the scopes.
Call lifecycle
What actually happens between a caller dialling and an order appearing.
API reference
Every endpoint, generated from the OpenAPI schema.
Base URL and schema
Every endpoint is under /api. The machine-readable OpenAPI 3.1 schema is served live and
generated from the route definitions themselves, so it cannot drift from the implementation:
| Resource | Path |
|---|---|
| OpenAPI schema (JSON) | /api/openapi.json |
| OpenAPI schema (YAML) | /api/openapi.yaml |
| Swagger UI | /api/reference |
| ReDoc | /api/redoc |
The reference in this site is generated from that same schema.
What does not exist yet
Being explicit, because these are commonly assumed:
- No API keys. Authentication is a bearer token from the login endpoint — see Authentication.
- No OAuth. No authorization-code flow, no scoped third-party tokens, no refresh tokens.
- No outbound webhooks. The platform receives webhooks from Twilio and Stripe; it does not currently send any to you. If you need to react to events, poll.
- No SDK and no CLI. Use plain HTTP.
- No API versioning. There is no
/v1prefix. Breaking changes are avoided rather than versioned around, so pin nothing and read release notes.
Rate limits
There is no published rate limit today. That is not a promise of unlimited throughput — be reasonable, and expect limits to arrive.