Retrieve menu sections and items for a Yelp business
View all Yelp Business, Reviews & Restaurant Data endpoints →Retrieve the menu associated with one Yelp business. The required business query parameter accepts a business alias, a 22-character business ID or a yelp.com business URL. It selects a specific branch; no menu search, pagination or item-filter parameter is documented for this operation. The observed Golden Boy Pizza response was an object identifying the business, with has_yelp_menu set to true, Yelp and external menu links, and two sections containing six named items with USD prices. The observation establishes that structured, priced menu data can be returned for that business. It does not establish complete menu coverage, price freshness or menu availability for every restaurant. Except for has_yelp_menu, the observation summary does not provide exact JSON key names for the business identity, links, sections or item prices. The catalog additionally describes item descriptions and photos, but the successful observation summary does not confirm those fields. The supplied source response example is an empty object and adds no schema evidence. Inspect the returned menu indicator, links and section data separately; keep structured-item, link-only and unavailable states distinct rather than assuming every business returns a fully parsed menu. Currency and price presentation should follow the actual response, not a universal USD assumption.
API Features
Live API Demo
🔒 Sign in to try it live
Log in to call this API with your own API key. New accounts get 100 free credits — no card required.
Log in / Sign upNo active API key found. Create one in your Dashboard, then reload this page. Dashboard →
/api/project/yelp/business-menu API Response (JSON)
{} curl -X GET 'https://api.opendata-api.com/api/project/yelp/business-menu?key=<API_KEY>&business=golden-boy-pizza-san-francisco-5'
Query Result
Use Cases
- Flatten the observed section, item name and USD price data into a restaurant menu-audit sheet while retaining section grouping and marking the snapshot as potentially incomplete.
- Build separate structured-menu, menu-link-only and unavailable states in a restaurant directory based on the actual menu indicator, links and returned item data.
- Collect permission-appropriate, timestamped menu snapshots for a selected competitor shortlist and manually review apparent price differences before reporting a change.
- Create a branch-specific menu preview that displays returned sections and prices and uses available menu links as navigation rather than inventing missing item details.
- Test a menu parser against the observed two-section, six-item case without hard-coding those counts or assuming every restaurant exposes the same structure.
Frequently asked questions
How do I choose the business whose menu I need?
Supply one Yelp business alias, a 22-character business ID or a yelp.com business URL in the required business string parameter. Choose the intended branch; this endpoint does not provide a free-text menu search.
What did the successful menu observation contain?
The Golden Boy Pizza response identified the business and included has_yelp_menu=true, Yelp and external menu links, and two sections containing six named items with USD prices. Those counts describe the tested result, not a fixed response size.
Will every restaurant return a complete structured menu?
That is not established. Check the actual menu indicator, links and section data, and distinguish structured items from link-only or unavailable content. One successful menu observation does not prove universal availability or complete item coverage.
Are descriptions and photos verified response fields?
They are described in the catalog, but the observed response summary does not confirm them. The supplied source example is an empty object, so it adds no field-level evidence. Treat descriptions and photos as optional until returned.
Can I treat the returned prices as live USD prices?
No. USD prices were observed for one tested restaurant, and no freshness guarantee was established. Preserve the currency information actually returned and record your own retrieval time when comparing snapshots.