OAC Open Standard
A vendor-neutral JSON spec for restaurant data. One endpoint returns everything you need to render, route, or reserve.
Quick example
curl https://www.openalacarte.com/api/standard/v1/restaurants/<slug>
No auth. Cached at the edge for 5 minutes. CORS open — call from a browser.
What's in the response
restaurant.*
Identity, contact, currency, address with lat/lng, opening hours per day, what they accept (reservations / delivery / pickup).
menu.sections[].items[]
The full active menu — name, description, price, currency, allergens, image — grouped by section.
spec + fetched
Versioned envelope (`openalacarte.standard/v1`) + ISO timestamp so downstream caches know what they have.
Stable IDs
Restaurant `slug` is the canonical identifier. We don't break URLs; renamed slugs serve 301s.
Versioning
SemVer at the URL level. v1.* additions are backward-compatible (new fields, never removed/renamed). Breaking changes move to /v2/ with a 12-month overlap.
Deprecations announced in this page's developer changelog + via the Deprecation response header.
Who's using this
The Open Standard is consumed by:
- Our own JSON-LD generator for Google Maps Reserve + Apple Business Connect
- Embed widgets (/restaurants/[slug]) — same payload, rendered HTML
- (Future) third-party integrators — DoorDash, Uber Eats, Tock — when they want canonical OAC data
Building on top? Email devs@openalacarte.com and we'll list you here.
Why "Open" Standard?
Because the spec is documented + versioned + stable. We commit to not breaking it. If you write code against /v1/, that code keeps working — even if OAC pivots, even if we're acquired.