API
How partners and developers integrate with Fooodo — surfaces, contracts, and what is and isn't public.
Fooodo's integration surface is intentionally small. This page documents what is open today, what is closed, and what is on the roadmap.
What's open today
MCP server
The handbook surface is exposed as an MCP (Model Context Protocol) server at /api/mcp. AI agents can query the docs without scraping HTML.
# Connect from Claude Desktop, Cursor, or any MCP-compatible client:
mcp connect https://fooodo.com/api/mcpThe MCP server exposes the docs tree for AI-assisted partner support and integration scoping. It is read-only.
LLM-friendly site index
/llms.txt provides a flat, structured index of every public page on the marketing site and the handbook. This is the canonical entry point if you are pointing an LLM at Fooodo.
Sitemap and Open Graph
Standard surfaces — /sitemap.xml covers all 7 marketing locales × public routes. Open Graph and Twitter Card images are generated per-locale.
What's closed today
The menu app's order API and the payment service's payment API are not public. They run on infrastructure operated for our deployment partners and are bearer-token authenticated with secrets issued during onboarding.
If you are a POS vendor wanting to integrate with Fooodo, write to hello@fooodo.com — the integration path is hands-on today, not self-serve.
What partners actually integrate with
The integration shapes that exist today, in order of how many partners use them:
POS connector (back-end)
The most-requested integration. A new POS connector implements the same outbound and inbound contract that R-Keeper uses (see R-Keeper integration). The connector is a Laravel package added to the menu app — it is not a separate process.
Required surface:
- Pull menu (products, categories, modifiers, prices, tax flags)
- Push order (create, update, lock, mark paid)
- Status (restaurant online/offline, table state)
We have not yet shipped Toast, iiko, Square, or Lightspeed connectors. Those are on the roadmap. If you are a POS vendor interested in being next, please reach out — we will work with you on the contract.
White-label deployment (front-end)
Some resellers run a Fooodo deployment under their own brand. The customer-facing app supports brand configuration at the company level: logo, color tokens, domain, payment branding. This is a configuration surface, not an API.
Embedded widgets (light)
The AI Ask widget on this site can be embedded in partner sites with a single script tag. Other widgets (menu preview, table availability) are not yet shipped but on the roadmap.
Authentication and secrets
When partners do get API access (POS connector packages, white-label deployments), authentication is bearer token. Secrets are issued per-environment; staging and production use separate tokens. There is no OAuth flow today — the audiences using the API are too small to justify it.
Webhooks (incoming, for partners)
If you are operating a partner deployment, you will receive webhook callbacks for order events. The current set:
order.createdorder.paidorder.cancelledorder.errored
Webhooks are signed with a shared secret. The exact payload format is finalised during onboarding.
Versioning
Internal APIs are versionless — the menu app and payment service deploy together for Čili Pizza. Once external partners are using the API, we will introduce version tags. We have not yet hit that point.
Rate limits
The marketing site's public APIs (/api/ask, /api/mcp) are rate-limited per IP. Limits are not currently published; they are sized for normal partner usage and will be relaxed for partners on a deal.
Roadmap
In order of likelihood within the next two quarters:
- A second POS connector (we are talking to Toast and iiko vendors).
- A typed JS SDK for the white-label embedding flow.
- A public API for menu read-only queries (so partner sites can show "today's menu" without scraping).
If you need any of these sooner, email hello@fooodo.com — partner pull tends to move them up.