JustSERPDocs
Yelp

Yelp reviews

A business' rating and reviews on Yelp, with owner replies and the earlier versions of an updated review.

GET
/v1/yelp/reviews

A business' rating and reviews on Yelp, with owner replies and the earlier versions of an updated review. To find a business, use /v1/yelp/search: each result's place_ids and link.

In the document form. $1 request $2 a place_id and no profile_url is the document-form Yelp Reviews call (place_id Yelp's 22-character encoded id, sort_by, rating, hl, q, num 1-49, next_page_token, yelp_domain), answered as the document: search_metadata, search_parameters, search_information (total_results), place_result, review_languages, reviews (review_id, link, text, rating, iso_date, user, reactions, response, images), pagination.next_page_token while more are left, and error when none were answered. An alias as place_id is a 400, as is not_recommended: true and q with sort_by or rating. The token is this API's (an offset): keep the other parameters.

Authorization

headerX-API-Key<token>

Your API key.

Query Parameters

cancel_token?string

A name you make up for this request (a UUID is fine), so you can later GET /v1/cancel with it. Only you know it, so only you can cancel. Use a new one for every request, retries included: a cancelled token stays cancelled for a few minutes.

Length1 <= length <= 128
since?string

Only reviews posted or edited after this are returned, and paging stops there. No zone means UTC. Leave out for a first check. A review dated only by day or month counts as the end of that day or month, so the newest day's reviews come back again on the next check: drop them by id.

Formatdate-time
max_reviews?integer

The most reviews to return; a larger number is held to 500. 0 asks for the profile alone.

Range0 <= value <= 500
Default100
country?string

The country the page is loaded from, default us, when it is one of the countries below.

Countries a request can be made from: us, ca, mx, br, ar, au, nz, in, sg, jp, ph, ae, za, gb, ie, de, fr, es, it, nl, be, pt, at, ch, se, no, dk, fi, pl, cz, gr, ro, hu.

Match^[A-Za-z]{2}$
profile_url?string

/biz/<alias> on yelp.com (yelp.ca, .co.uk, .ie, .com.au and .co.nz are accepted too, but are less tested).

Matchyelp\.(com|ca|co\.uk|ie|com\.au|co\.nz)/biz/
place_id?string

Required: Yelp's 22-character encoded id (yelp_search's local_results.place_id); an alias is a 400.

sort_by?string
Default"most_relevant"
Value in"most_relevant""newest""oldest""highest_rating""lowest_rating""elites"
rating?string

1 to 5, comma-separated; the answer is held to those ratings.

hl?string

Language of the list.

q?string

Search in the reviews. A 400 with sort_by or rating.

num?integer

Yelp lists ten a page: as many pages are read as are needed.

Range1 <= value <= 49
Default49
next_page_token?string

Ours: the list's offset. Keep the other parameters.

yelp_domain?string

One of Yelp's domains.

Response Body

The profile and its reviews; with the document-form parameters, the document.

application/json
  1. response

mode: "reviews". Site-specific fields are in profile.extra and reviews[].extra; see each engine's document.

search_metadata*
search_parameters*

The request's own fields as sent, engine first, without cancel_token.

search_information*

The parser's own, e.g. yelp_search's; otherwise {}.

profile*
reviews*array<>

Newest first.

has_more*boolean

Older reviews exist that were not returned (max_reviews, or the site shows no more).

reached_since*boolean

Paging stopped at since.

reviews_status?string

Present only when the list could not be read. blocked: reviews is [].

Value in"blocked""limited"
reviews_order?string

Present only with reviews_status limited.

Example Request
curl -X GET 'https://api.justserp.com/v1/yelp/reviews?profile_url=https%3A%2F%2Fwww.yelp.com%2Fbiz%2Fjoes-pizza-new-york-4'
Example Response
{  "search_metadata": {    "id": "string",    "status": "Success",    "created_at": "string",    "request_url": "string",    "html_url": "string"  },  "search_parameters": {},  "search_information": {},  "profile": {    "url": "string",    "site_id": "string",    "name": "string",    "address": "string",    "phone": "string",    "website": "string",    "rating": 0,    "rating_scale": 5,    "review_count": 0,    "claimed": true,    "extra": {}  },  "reviews": [    {      "id": "string",      "url": "string",      "rating": 0,      "recommended": true,      "title": "string",      "text": "string",      "language": "string",      "posted_at": "2019-08-24T14:15:22Z",      "date_precision": "day",      "updated_at": "2019-08-24T14:15:22Z",      "author": {        "name": "string",        "id": "string",        "url": "string",        "review_count": 0,        "location": "string"      },      "owner_reply": {        "text": "string",        "posted_at": "2019-08-24T14:15:22Z"      },      "photos": 0,      "extra": {}    }  ],  "has_more": true,  "reached_since": true,  "reviews_status": "blocked",  "reviews_order": "most_relevant"}