SuperAPI AI Directory

yelp

Data & analytics

View repository

Updated 10-15 21:41

About this skill

Yelp API

Local business search, business details, and reviews as clean JSON — one plain HTTP GET per call, paid as you go. No Yelp Fusion API app approval, no daily call cap, no API key request form.

Base URL: https://yelp.fetcher.sh

Authentication

Two ways to pay, same data — full mechanics in the fetcher skill:

# 1. Prepaid credits (recommended — get a key at https://fetcher.sh/topup
#    or via POST /api/credits/topup, see the fetcher skill)
export FETCHER_API_KEY="bby_live_xxxxxxxxxxxx"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://yelp.fetcher.sh/api/search?query=ramen&location=San+Francisco"
2. x402 pay-per-call — omit the header; a GET with no payment returns 402 with machine-readable payment requirements (USDC on Base, Polygon, Arbitrum, Monad, or Solana). @x402/fetch signs and retries automatically.

Every response is `{ "status": number, "message": string, "data": ... }`; the
HTTP status mirrors `status`.

## Endpoints (4 — all GET, $0.003/call)

| Endpoint | What it returns |
| --- | --- |
| `/api/search` | Businesses matching a query and location |
| `/api/place/{id}` | A business's full details by ID |
| `/api/place/handle/{handle}` | A business's full details by its Yelp URL handle/slug |
| `/api/place/{id}/reviews` | A business's reviews |

Required on search: `query`, `location`. Optional: `sortBy` (`recommended`,
`rating`, `reviewCount`), `page`. Reviews support `page`.

## Scenarios

**Highest rated first:**

```bash
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=ramen" -G \
  --data-urlencode "location=San Francisco" \
  --data-urlencode "sortBy=rating" \
  "https://yelp.fetcher.sh/api/search"

Most reviewed first:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "query=tacos" -G \
  --data-urlencode "location=Austin, TX" \
  --data-urlencode "sortBy=reviewCount" \
  "https://yelp.fetcher.sh/api/search"

A business's details by ID, or by its Yelp URL handle/slug:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://yelp.fetcher.sh/api/place/gary-danko-san-francisco"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://yelp.fetcher.sh/api/place/handle/gary-danko-san-francisco"

A business's reviews, paginated:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "page=2" -G \
  "https://yelp.fetcher.sh/api/place/gary-danko-san-francisco/reviews"

MCP

{
  "mcpServers": {
    "yelp": {
      "url": "https://yelp.fetcher.sh/mcp",
      "headers": { "Authorization": "Bearer bby_live_..." }
    }
  }
}

Free: search_endpoints, describe_endpoint, check_balance. Paid: fetch_data (any endpoint above), topup_credits, plus the named shortcut yelp_search. Drop the headers block to pay per call with x402 instead — see the fetcher skill for the full flow.

Errors

  • 400 — missing/invalid parameter (message names it)
  • 401 — unknown or rotated key
  • 402 — payment required (x402 challenge) or topup_required (credits exhausted)
  • 404 — not a priced path
  • No rate limits; no refunds on upstream failures (settlement precedes delivery)

Reference