Yelp API endpoint
Searches a Yelp business's reviews for a keyword, returning a highlighted excerpt per match.
/yelp/business/{id}/reviews/searchPath parameters: id is required and accepts a Yelp business alias (e.g. pequods-pizza-chicago-3) or an encoded Yelp business id.
Query parameters:
term (required): keyword to search the business's reviews for, e.g. crust.Returns reviews that mention the given keyword, each with an HTML-highlighted excerpt (<b> tags around the matched term) instead of the full review text. This is a distinct endpoint from Yelp Business Reviews — plain /reviews does not honor keyword filtering.
| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| rating | 20 | 1 to 5, median 4 |
| excerpt_html | 20 | median 77 characters |
| language | 20 | |
| time_modified | 20 | 2026-07-19 to 2026-10-13 |
| author | 20 | |
| author_review_count | 20 | 2 to 1,290, median 97 |
| author_location | 20 | |
| share_url | 20 | yelp.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id (path) | string | Yes | Yelp business alias or encoded id | pequods-pizza-chicago-3 | |
| term | string | Yes | Keyword to search reviews for | crust | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/yelp/business/pequods-pizza-chicago-3/reviews/search?term=crust" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": "pequods-pizza-chicago-3",
"term": "crust",
"total": 20,
"reviews": [
{
"id": "EP-EHp1CSY2fjDrWlZm4aw",
"rating": 5,
"excerpt_html": "…deep dish with pepperoni and were in heaven. The <b>crust</b> is my ideal…",
"language": "en",
"time_modified": 1785790947,
"author": "Lingxiao C.",
"author_review_count": 541,
"author_location": "Manhattan, New York, NY",
"share_url": "https://www.yelp.com/biz/pequods-pizza-chicago-3?hrid=EP-EHp1CSY2fjDrWlZm4aw"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/yelp.mobileBusinessReviewsSearchResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | yelp.MobileBusinessReviewsSearchResponse | No | ||||
| data.id | string | No | pequods-pizza-chicago-3 | |||
| data.reviews | array | No | ||||
| data.reviews[].author | string | No | ||||
| data.reviews[].author_location | string | No | ||||
| data.reviews[].author_review_count | integer | No | ||||
| data.reviews[].excerpt_html | string | No | ||||
| data.reviews[].id | string | No | ||||
| data.reviews[].language | string | No | ||||
| data.reviews[].rating | number | No | ||||
| data.reviews[].share_url | string | No | ||||
| data.reviews[].time_modified | integer | No | ||||
| data.term | string | No | crust | |||
| data.total | integer | No | 20 | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/yelp/business/pequods-pizza-chicago-3/reviews/search?term=crust" \
-H "x-api-key: $CRAWLORA_API_KEY"