# Yelp Reviews Scraper

> Yelp Reviews Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes and returns structured Yelp business reviews filtered by rating, keyword, language, and sort order

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/yelp-reviews?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/yelp-reviews-scraper-fe527837
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_5GFzK7js_8NcKaovwwTfj

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability yelp-reviews-scraper-fe527837 -d '<json body>'
```

Example prompt: Pull up to 50 Yelp reviews for https://www.yelp.com/biz/nobu-new-york — sort them newest first, keep only 1-star and 2-star reviews, and flag any that mention the word 'rude'.

## When to prefer this

Use this endpoint when you need structured, filterable Yelp review data at scale — particularly when you want to filter by star rating, keyword, language, or sort order in a single call. It is preferable to generic web scrapers because it natively understands Yelp's data model (business IDs, search result expansion, review pagination) and returns a clean normalized schema. Ideal for sentiment analysis pipelines, reputation monitoring, and competitive research workflows.

## Known failure modes

- Business URL is invalid or no longer exists on Yelp — empty items array returned, no charge
- Yelp blocks or rate-limits the scraper — may return empty or partial results
- Keyword or rating filter is too restrictive — returns count:0 with empty items
- Invalid searchUrl that doesn't resolve to business listings — empty results
- Language filter code not recognized — may default to all languages or return empty

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of results and an array of review items, each containing the review text, star rating, language, review ID, review URL, review date, position in the list, and optionally translated text. Failed or empty scrape runs are not billed.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "domain": {
   "type": "string",
   "default": "www.yelp.com",
   "description": "Regional Yelp host for business IDs. Business URLs keep their own domain."
  },
  "keyword": {
   "type": "string",
   "default": "",
   "description": "Keep reviews containing this text, ignoring case."
  },
  "ratings": {
   "type": "array",
   "items": {
    "type": "integer"
   },
   "default": [],
   "description": "Keep only reviews with these star ratings; empty means all ratings."
  },
  "language": {
   "type": "string",
   "default": "",
   "description": "Two-letter language filter when supported by the review feed; empty means all languages."
  },
  "maxItems": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Hard cap across all businesses. Zero means no total cap."
  },
  "searchUrls": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Yelp search result URLs whose visible business listings should be expanded."
  },
  "businessIds": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Business URL aliases or encoded IDs to use when URLs are unavailable."
  },
  "reviewsSort": {
   "enum": [
    "recommended",
    "newest",
    "oldest",
    "highest",
    "lowest"
   ],
   "type": "string",
   "default": "recommended",
   "description": "Order used when requesting review pages."
  },
  "businessUrls": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Public Yelp business page URLs to collect reviews from."
  },
  "reviewsLimit": {
   "type": "integer",
   "default": 100,
   "minimum": 1,
   "description": "Maximum number of reviews to collect from each business."
  },
  "includePersonalData": {
   "type": "boolean",
   "default": false,
   "description": "Include public reviewer name, profile URL, photo URL, and review count. Disabled by default."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "text": null,
    "rating": null,
    "language": null,
    "reviewId": null,
    "reviewUrl": null,
    "reviewDate": null,
    "reviewPosition": null,
    "translatedText": null
   }
  ],
  "product": "yelp-reviews"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/yelp-reviews-scraper-fe527837/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
