Yelp Business Details API avatar

Yelp Business Details API

Pricing

from $0.01 / 1,000 results

Go to Apify Store
Yelp Business Details API

Yelp Business Details API

Scrape full Yelp business profiles by place ID - name, rating, reviews, price, categories, phone, address, website, hours, amenities, popular dishes, photos, and review highlights. Optional full menu extraction. Batch many businesses per run.

Pricing

from $0.01 / 1,000 results

Rating

5.0

(3)

Developer

John

John

Maintained by Community

Actor stats

6

Bookmarked

11

Total users

8

Monthly active users

7 days ago

Last modified

Share

Yelp Business API | Business Details, Profiles, Hours, Menus & Amenities (MCP-ready)

Scrape full Yelp business profiles by place ID and get clean JSON back. Name, rating, review count, price, categories, phone, address, website, hours, amenities, popular dishes, photos, and review highlights - plus optional full menu extraction. Batch many businesses per run. MCP-ready for Claude, ChatGPT, Cursor, and other AI agents.

Call the Yelp Business API with one or more place IDs and get clean, structured JSON back: no Yelp API key, no quotas, and no headless browser.

Give the Actor one or more Yelp place IDs and it returns the complete business profile Yelp shows on each business page: name, "about" text, rating and review count, price tier, categories, photos, website, phone, full address and neighborhoods, day-by-day operation hours (including special/holiday hours), the full amenities and features list, popular dishes, review highlights, community Q&A, and health inspection scores. Flip on full_menu to pull the structured menu (sections, dishes, descriptions, and prices) instead.

This is the details stage of a 3-actor Yelp suite. Get place IDs from the Yelp Search API, fetch full profiles here, and pull reviews with the Yelp Reviews API. Predictable per-business pricing, structured JSON, no browsers or captchas.


What this Actor returns

For each place ID, one dataset item containing:

  • Core profile - name, rating, review count, price, categories, is_claimed, "about" / history.
  • Contact & location - phone, website, full address, cross streets, neighborhoods, country, directions link.
  • Hours - per-day operation hours with currently_open and special/holiday hours.
  • Amenities - the complete features list (delivery, takeout, reservations, accessibility, parking, payments, and more) with active flags.
  • Extras - popular items, review highlights, community questions, health provider score, and photo galleries.
  • Full menu (optional) - when full_menu is on, structured menu sections, dishes, and price variations.

Use with Claude, ChatGPT, Cursor & other AI agents (MCP)

This Actor is a first-class tool on the Apify MCP Server. Any MCP-compatible AI agent - Claude (Desktop, Web, Code), ChatGPT, Cursor, VS Code, Cline, Windsurf, Kilo Code, Opencode, Glama - can discover and call it in natural language.

What an AI agent does with this:

User: "Get the hours, phone, and amenities for Maman in SoHo."

Agent first calls the Yelp Search API to resolve "Maman SoHo" to a place ID, then calls this Actor with {"place_ids": ["maman-new-york-22"]} and returns the hours, phone, and amenities.

New to Claude? Claude Code and the Claude desktop app (which runs Cowork) both come with a free trial: https://claude.ai/referral/uIlpa7nPLg

Quick setup - Claude Desktop

Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
"mcpServers": {
"apify": {
"command": "npx",
"args": ["-y", "@apify/actors-mcp-server"],
"env": {
"APIFY_TOKEN": "YOUR_APIFY_API_TOKEN"
}
}
}
}

Restart Claude Desktop, then ask something like "Pull the full menu for this Yelp restaurant."

Quick setup - Cursor / VS Code / Cline / Windsurf

These editors support dynamic tool discovery, so after the first call this Actor is registered as a named tool for the rest of the session. Point your MCP client at:

https://mcp.apify.com

…with header Authorization: Bearer YOUR_APIFY_API_TOKEN. Full setup: Apify MCP integration docs.

Quick setup - ChatGPT (and other static MCP clients)

ChatGPT, Gemini CLI, and Amazon Q connect through the same https://mcp.apify.com endpoint and call this Actor via the generic call-actor tool.


Use cases

  • Enrich a lead list - take place IDs from a Yelp search and add phone, website, hours, and amenities to each business.
  • Menu intelligence - pull structured menus and prices across a set of restaurants.
  • Competitor profiles - track rating, review count, price tier, and amenities for competitors over time.
  • Local data pipelines - build a clean business dataset for a category or market.

🔌 Integrations: Automate Your Yelp Business API Pipeline

A single run answers one question ("what are the hours and amenities for this restaurant?"). The real value comes from running the Yelp Business API on a schedule, so profiles, hours, and menus refresh into your stack on their own. See the full list of Apify platform integrations.

Tasks and Schedules (the core recipe). Save one task per set of businesses you track (a competitor list, a market, or a category), then attach a schedule from the Actor's Actions, then Schedule menu. Useful cron strings: 0 7 * * * (daily at 7 AM), 0 */6 * * * (every six hours), 0 9 * * 1 (Mondays). One schedule can trigger many tasks at once, so a whole watchlist refreshes in a single pass.

n8n. This API ships an n8n community node (see the n8n integration section below). A four-step monitor: Schedule Trigger, then the Yelp node set to Get Business Details, then a Filter on rating or features, then Slack or email.

Make and Zapier. The same pattern works no-code with Make and Zapier: trigger on a schedule, run the Actor, and route each profile where you need it.

Store the history (Supabase). Send each run's rows into a table so a profile and rating history accumulates across runs. No-code: the n8n Actor node, then a Supabase node. Or in Python (each row carries place_id, place_results, full_menu_results, and menu_returned):

from apify_client import ApifyClient
from supabase import create_client
apify = ApifyClient("YOUR_APIFY_TOKEN")
supabase = create_client("YOUR_SUPABASE_URL", "YOUR_SUPABASE_KEY")
run = apify.actor("johnvc/Yelp-Place-API").call(run_input={
"place_ids": ["maman-new-york-22", "gramercy-tavern-new-york"],
})
rows = list(apify.dataset(run["defaultDatasetId"]).iterate_items())
supabase.table("yelp_places").upsert(rows).execute()

MCP and AI agents. Add this API as a tool in Claude or Cursor through the Apify MCP server so an agent can pull a business profile in natural language (see the "Use with Claude, ChatGPT, Cursor & other AI agents" section above).

Webhooks. For anything custom, fire an Apify webhook on ACTOR.RUN.SUCCEEDED to push each run's dataset into your own service.


Input parameters

ParameterTypeRequiredDefaultDescription
place_idsarray of stringsYes-Yelp place IDs or aliases (e.g. maman-new-york-22). One profile per ID. Get IDs from the Yelp Search API.
full_menubooleanNofalseFetch the structured full menu instead of the standard profile.
menu_namestringNo-Which menu to scrape when a business has more than one (used with full_menu).
business_alertbooleanNofalseInclude the business alert message (e.g. "closed") when present.
yelp_domainstringNoyelp.comRegional Yelp domain.

Example output (one item per place ID)

{
"place_id": "maman-new-york-22",
"result_timestamp": "2026-05-26T10:30:00.123456",
"place_results": {
"name": "Maman",
"place_ids": ["DE0ROwygh-86i4s-WLp8wQ", "maman-new-york-22"],
"rating": 3.9,
"reviews": 847,
"price": "$$",
"categories": [{ "title": "Coffee & Tea" }, { "title": "Bakeries" }],
"website": "https://www.mamannyc.com",
"phone": "(212) 226-0700",
"address": "239 Centre St New York, NY 10013",
"neighborhoods": ["Little Italy", "SoHo"],
"operation_hours": { "hours": [{ "day": "Mon", "hours": "7:30 AM - 6:00 PM" }] },
"features": [{ "title": "Offers Delivery", "is_active": true }],
"popular_items": [{ "title": "Almond Croissant", "reviews": 28 }]
},
"full_menu_results": null,
"menu_requested": false,
"menu_returned": false
}

Pricing

This Actor uses transparent pay-per-event pricing:

EventPriceWhen
Setup$0.02Once per run
Place processed$0.02Per business profile fetched

Looking up 1 business costs about $0.04; looking up 10 in one run costs about $0.22.


How to get started

  1. Open the Actor on the Apify Store.
  2. Paste one or more Yelp place IDs into place_ids, optionally enable full_menu, and click Start.
  3. Read results from the dataset (JSON, CSV, Excel) or via the Apify API.

Code example (Python + MCP)

Want a runnable quick-start? The public example repo has a Python (uv) script plus MCP install guides for Claude (Desktop, Code, Web) and Cursor:

github.com/johnisanerd/Apify-Yelp-API

It shows how the Yelp Search, Business Details, and Reviews APIs chain together - a search returns the place_ids that feed the other two.

Building a local-business or lead-generation pipeline? These tools from the same catalog pair well with the Yelp Business API:

  • Yelp Search API: search Yelp by term and location to get the place_ids that feed this Actor. This is the first stage of the suite.
  • Yelp Reviews API: pull full review text, ratings, and reviewer detail for any business you profile here. This is the third stage of the suite.
  • Google Maps Places Scraper: cross-reference the same businesses on Google Maps for a second source of hours, ratings, and contact data.
  • OpenTable Reviews API: add restaurant reservation and review intelligence when you are profiling dining businesses.

Older single-URL alternatives exist, such as pratikdani/yelp-business-overview, but they accept only one Yelp URL per run, carry no user rating, and show minimal ongoing usage. This API batches many place IDs in one run, returns clean structured JSON with optional full menus, and is actively maintained.

Applications

Ready-to-run examples of this API in action. Open any one and run it in a single click.

Get a Yelp Business Profile by ID via API

Fetch a full Yelp business profile from one place ID: name, rating, reviews, price, categories, phone, address, and hours. Run this task

Track Yelp Competitor Ratings and Amenities

Monitor competitor businesses on Yelp by place ID: rating, review count, price tier, and amenities, refreshed on a schedule. Run this task

Extract a Restaurant's Full Menu from Yelp

Pull a restaurant's full Yelp menu by place ID: menu sections, dish names, descriptions, and price variations as clean JSON. Run this task

FAQ / Troubleshooting

Where do place IDs come from?

From the Yelp Search API, every listing includes a place_ids array. Use either the encoded ID or the alias (for example maman-new-york-22).

I asked for the full menu but got a profile instead.

That business has no menu page on Yelp. The output sets menu_returned: false and returns the standard profile so you still get data.

Can I look up many businesses at once?

Yes, pass an array of place IDs. Each is billed as one place_processed event, so a 40-business run is one setup fee plus 40 place events.

Is this reliable?

Yes, it calls a structured data source, not a headless browser, so there are no captchas or layout breakages. You get the same profile data you see on Yelp, returned as clean JSON.

Can I get business hours through the Yelp Business API?

Yes. Every profile includes operation_hours with day-by-day hours, a currently_open flag, and special or holiday hours when Yelp lists them. Turn on business_alert to also capture temporary closure messages.

Can I schedule this Yelp Business API?

Yes. Any run can be automated on a schedule. Save a task with your place_ids, then attach a schedule from the Actor's Actions, then Schedule menu. Concrete cron strings: 0 7 * * * (daily at 7 AM), 0 */6 * * * (every six hours), 0 9 * * 1 (Mondays). One schedule can trigger many tasks at once, so a whole watchlist of businesses refreshes in a single pass. See the Integrations section above for the full monitoring recipe.

Should I use an API or a Web Scraper?

Both, and this Actor is both. An official API is usually rate limited, quota bound, and often missing fields like amenities or menus, while a plain web scraper returns messy HTML that breaks on layout changes. This Actor gives you the clean, structured result of a purpose-built API: call it yourself, pay per business, no quotas, and get the same JSON whether you profile one business or forty.

Can I integrate this Yelp Business API with other apps?

Yes. It connects to almost any cloud service through Apify integrations: Make, Zapier, Slack, the n8n community node, and webhooks on ACTOR.RUN.SUCCEEDED for custom actions. See the Integrations section above for full recipes.

Can I use the Yelp Business API programmatically?

Yes. The Apify API runs the Actor, schedules it, and fetches datasets, and the apify-client package exists for both Node.js and Python. See the Actor's API tab for ready-made code.

Can I use this Yelp Business API through an MCP server?

Yes. Add it as a tool in any MCP client (Claude, Cursor, and others) through the hosted Apify MCP server with the Actor-specific URL https://mcp.apify.com/?tools=actors,docs,johnvc/Yelp-Place-API. In Claude Code (free trial) or Claude Cowork (free trial) your agent can then resolve a name to a place ID and pull the full profile in one turn. Learn more about the Apify MCP integration.

How do I build competitor profiles with the Yelp Business API?

Save a task with the place IDs of the businesses you compete against, schedule it, and store each run's rows so rating, review count, price tier, and amenities accumulate over time. Pair it with the Yelp Reviews API to add review sentiment to each competitor profile.

How else can I collect local business data?

Pair this API with related tools in the same catalog: the Yelp Search API to discover the place IDs to profile, the Yelp Reviews API for full review text, the Google Maps Places Scraper for a second source of hours and ratings, and the OpenTable Reviews API for restaurant reservation intelligence.

n8n integration

Available as an n8n community node, n8n-nodes-yelp-api (Search Businesses, Get Business Details, and Get Reviews). In n8n: Settings, Community Nodes, install n8n-nodes-yelp-api, then use it in any workflow (it also works as an AI Agent tool).


Last Updated: 2026.07.14