Sitejabber API & Scraper
The Sitejabber API returns business reviews and ratings as clean JSON.
🤖 Using an AI assistant? Copy this link into ChatGPT / Claude / Cursor — it reads every endpoint and parameter instantly and tells you if this API fits your use case.
The primary reviews endpoint returns reviews with id, rating, title, text, sub-ratings, date and experience date, and you can pull an aggregate, a detail, run a search and browse a category. It is built for reputation monitoring and review aggregation that need Sitejabber data without a scraper. One ReefAPI key, one shared credit pool, the standard envelope.
Which action to trust for which number
Everything here is keyed on a website domain rather than a company name. The table below records where each value actually comes from, measured across nike.com, shein.com, landsend.com, temu.com and wish.com — including one place where you should currently read a different action.
| What you want | Read it from | Measured |
|---|---|---|
| the reviews themselves | reviews | 20 per page, correct for the domain you asked for |
| the business's total review count | reviews → meta.pagination.total | 474 for nike.com, 272 for landsend.com — the real counts |
| the overall rating and name | search | nike.com → business_id 814738, name "Nike", rating 2.03, review_count 476 |
| the business block inside a reviews response | ⚠️ do not rely on it yet | on some domains it names a different company — see the note |
| per-review sub-ratings | reviews → sub_ratings | the key set varies review by review: {service, value, returns, quality} on one, all five on another, {value, shipping, returns, quality} on a third |
| the review body | reviews → text AND tip | text came back null on one measured review while tip held the 284-character body |
| reviewer country | reviews → reviewer_country | "United Kingdom of Great Britain and Northern Ireland" — the full UN long form, not an ISO code |
| the company's reply | reviews → business_reply | null when the company has not replied |
| a ranked list in a sector | category | cryptocurrency returned 10 per page out of 1,109 businesses |
| categories on a business | search / category → categories[] | {name: "shoes", slug: null} — name is populated, slug is always null |
Honest disclosure: the business summary embedded in a reviews response is currently picking up the wrong company on some domains. Measured, nike.com returned Land's End, shein.com returned Fashion Nova and landsend.com returned Azzlee, while temu.com and wish.com were correct. The reviews array and meta.pagination.total are always for the domain you asked for — only that summary block is affected, and we are fixing it. Until then take name, rating and review_count from search.
Real request and response JSON
Captured from the indexed primary action, search, on .
{
"method": "POST",
"url": "https://api.reefapi.com/sitejabber/v1/search",
"headers": {
"x-api-key": "$REEF_KEY",
"content-type": "application/json"
},
"body": {
"query": "amazon"
}
}{
"ok": true,
"meta": {
"api": "sitejabber",
"endpoint": "search",
"mode": "live",
"latency_ms": 2676.6,
"record_count": 28,
"bytes": 341235,
"cache_hit": false,
"stop_reason": "limit_reached",
"pagination": {
"page": 1,
"per_page": 28,
"total": 875,
"has_more": true,
"next_page": 2
},
"charged_credits": 1,
"version": "1.0.0"
},
"data": {
"businesses": [
{
"business_id": 64,
"name": "Amazon",
"domain": "amazon.com",
"website": "http://amazon.com",
"rating": 2.82,
"review_count": 11113,
"subindustry": "Style And Fashion",
"categories": [
{
"name": "marketplace",
"slug": null
},
{
"name": "discount-designer-clothes",
"slug": null
},
{
"name": "electronics",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.com"
},
{
"business_id": 483352877,
"name": "Amazon Book Authors",
"domain": "amazonbookauthors.com",
"website": "http://amazonbookauthors.com",
"rating": 4,
"review_count": 62,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazonbookauthors.com"
},
{
"business_id": 483260467,
"name": "Amazon Elite Publishers",
"domain": "amazonelitepublishers.com",
"website": "http://amazonelitepublishers.com",
"rating": 4,
"review_count": 51,
"subindustry": null,
"categories": [
{
"name": "ebook",
"slug": null
},
{
"name": "writing-other",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonelitepublishers.com"
},
{
"business_id": 482080675,
"name": "Amazon Accounts",
"domain": "amazon-accounts.co",
"website": "http://amazon-accounts.co",
"rating": 3.87,
"review_count": 26,
"subindustry": null,
"categories": [
{
"name": "self-help",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon-accounts.co"
},
{
"business_id": 483372063,
"name": "Amazon Book Service Provider",
"domain": "amazonbookserviceprovider.com",
"website": "http://amazonbookserviceprovider.com",
"rating": 4,
"review_count": 21,
"subindustry": null,
"categories": [
{
"name": "ebook",
"slug": null
},
{
"name": "audio-books",
"slug": null
},
{
"name": "marketing",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonbookserviceprovider.com"
},
{
"business_id": 483115383,
"name": "Amazon Publishing Experts",
"domain": "amazonpublishingexpert.com",
"website": "http://amazonpublishingexpert.com",
"rating": 3.9,
"review_count": 20,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazonpublishingexpert.com"
},
{
"business_id": 9017,
"name": "Amazon UK",
"domain": "amazon.co.uk",
"website": "http://amazon.co.uk",
"rating": 2.96,
"review_count": 251,
"subindustry": "Art And Entertainment",
"categories": [
{
"name": "marketplace",
"slug": null
},
{
"name": "photography-equipment",
"slug": null
},
{
"name": "camera",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.co.uk"
},
{
"business_id": 687615,
"name": "Amazon Kindle",
"domain": "kindle.amazon.com",
"website": "http://kindle.amazon.com",
"rating": 3.68,
"review_count": 44,
"subindustry": "Internet Software & Services",
"categories": [
{
"name": "ebook",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/kindle.amazon.com"
},
{
"business_id": 483293824,
"name": "Amazon Professional Publishers",
"domain": "amazonprofessionalpublishers.com",
"website": "http://amazonprofessionalpublishers.com",
"rating": 3.94,
"review_count": 9,
"subindustry": null,
"categories": [
{
"name": "books-other",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonprofessionalpublishers.com"
},
{
"business_id": 483076769,
"name": "Amazonwordsmiths",
"domain": "amazonwordsmiths.com",
"website": "http://amazonwordsmiths.com",
"rating": 4,
"review_count": 7,
"subindustry": null,
"categories": [
{
"name": "marketing",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonwordsmiths.com"
},
{
"business_id": 483221828,
"name": "Amazon Publishing Assistant",
"domain": "amazonpublishingassistant.com",
"website": "http://amazonpublishingassistant.com",
"rating": 3.9,
"review_count": 21,
"subindustry": null,
"categories": [
{
"name": "ebook",
"slug": null
},
{
"name": "marketing",
"slug": null
},
{
"name": "ecommerce-tools",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonpublishingassistant.com"
},
{
"business_id": 84418,
"name": "Amazon Mechanical Turk",
"domain": "mturk.com",
"website": "http://mturk.com",
"rating": 2.75,
"review_count": 63,
"subindustry": "Law Govt And Politics",
"categories": [
{
"name": "work-at-home",
"slug": null
},
{
"name": "service-marketplace",
"slug": null
},
{
"name": "job-search",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/mturk.com"
},
{
"business_id": 482693530,
"name": "Amazonprofs",
"domain": "amazonprofs.com",
"website": "http://amazonprofs.com",
"rating": 4,
"review_count": 5,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazonprofs.com"
},
{
"business_id": 1536564,
"name": "Read.amazon",
"domain": "read.amazon.com",
"website": "http://read.amazon.com",
"rating": 4,
"review_count": 4,
"subindustry": null,
"categories": [
{
"name": "books-other",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/read.amazon.com"
},
{
"business_id": 482930775,
"name": "Amazonppcpro",
"domain": "amazonppcpro.com",
"website": "http://amazonppcpro.com",
"rating": 4,
"review_count": 4,
"subindustry": null,
"categories": [
{
"name": "marketing",
"slug": null
},
{
"name": "advertising",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonppcpro.com"
},
{
"business_id": 483070482,
"name": "Amazontradingbot",
"domain": "amazontradingbot.com",
"website": "http://amazontradingbot.com",
"rating": 4,
"review_count": 4,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazontradingbot.com"
},
{
"business_id": 482727248,
"name": "Amazonpublication",
"domain": "amazonpublication.com",
"website": "http://amazonpublication.com",
"rating": 4,
"review_count": 3,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazonpublication.com"
},
{
"business_id": 1442236,
"name": "AmazonSmile",
"domain": "smile.amazon.com",
"website": "http://smile.amazon.com",
"rating": 3.27,
"review_count": 13,
"subindustry": "Internet Software & Services",
"categories": [
{
"name": "discount-shopping",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/smile.amazon.com"
},
{
"business_id": 921629,
"name": "Amazon IT",
"domain": "amazon.it",
"website": "http://amazon.it",
"rating": 3.5,
"review_count": 13,
"subindustry": "Technology And Computing",
"categories": [
{
"name": "marketplace",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.it"
},
{
"business_id": 1036529,
"name": "Amazon IN",
"domain": "amazon.in",
"website": "http://amazon.in",
"rating": 2.27,
"review_count": 114,
"subindustry": "Technology And Computing",
"categories": [
{
"name": "marketplace",
"slug": null
},
{
"name": "electronics",
"slug": null
},
{
"name": "general-apparel",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.in"
},
{
"business_id": 483188393,
"name": "Amazon Kindle Direct Publisher",
"domain": "amazonkindledpublisher.com",
"website": "http://amazonkindledpublisher.com",
"rating": 4,
"review_count": 2,
"subindustry": null,
"categories": [
{
"name": "ebook",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonkindledpublisher.com"
},
{
"business_id": 483126721,
"name": "Amazon Publishers Ltd",
"domain": "amazonpublishersltd.com",
"website": "http://amazonpublishersltd.com",
"rating": 4,
"review_count": 2,
"subindustry": null,
"categories": [
{
"name": "ebook",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonpublishersltd.com"
},
{
"business_id": 918997,
"name": "Amazon JP",
"domain": "amazon.jp",
"website": "http://amazon.jp",
"rating": 3.5,
"review_count": 4,
"subindustry": "Internet",
"categories": [
{
"name": "marketplace",
"slug": null
},
{
"name": "electronics",
"slug": null
},
{
"name": "general-apparel",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.jp"
},
{
"business_id": 483419172,
"name": "Amazon Publishing Prime",
"domain": "amazonpublishingprime.com",
"website": "http://amazonpublishingprime.com",
"rating": 4,
"review_count": 2,
"subindustry": null,
"categories": [
{
"name": "bookkeeping",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonpublishingprime.com"
},
{
"business_id": 483325289,
"name": "Amazon Publishing",
"domain": "amazonpublishing.us",
"website": "http://amazonpublishing.us",
"rating": 3.5,
"review_count": 2,
"subindustry": null,
"categories": [
{
"name": "books-other",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazonpublishing.us"
},
{
"business_id": 815465,
"name": "Amazon Web Services (AWS)",
"domain": "aws.amazon.com",
"website": "http://aws.amazon.com",
"rating": 3.13,
"review_count": 8,
"subindustry": "Internet Software & Services",
"categories": [
{
"name": "web-hosting",
"slug": null
},
{
"name": "it-services",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/aws.amazon.com"
},
{
"business_id": 802973,
"name": "Amazon.co.jp",
"domain": "amazon.co.jp",
"website": "http://amazon.co.jp",
"rating": 3.14,
"review_count": 7,
"subindustry": null,
"categories": [
{
"name": "marketplace",
"slug": null
},
{
"name": "general-apparel",
"slug": null
},
{
"name": "electronics",
"slug": null
}
],
"url": "https://www.sitejabber.com/reviews/amazon.co.jp"
},
{
"business_id": 482701479,
"name": "Amazon.eg",
"domain": "amazon.eg",
"website": "http://amazon.eg",
"rating": 3.5,
"review_count": 2,
"subindustry": null,
"categories": [],
"url": "https://www.sitejabber.com/reviews/amazon.eg"
}
]
}
}What the Sitejabber API does
| Action | Description | Concrete use case | Key params |
|---|---|---|---|
| reviews | Get a business's customer reviews from Sitejabber by domain — paginated, 20 per page. Each review has the 1-5 star rating, title, full text, the five sub-ratings (service, value, shipping, returns, quality), date, the reviewer's country, verified status, products used, helpful/not-helpful vote counts and the business's reply. Page with `page` until meta.pagination.has_more is false. | Support teams call reviews to get a business's customer reviews from Sitejabber by domain. | domain, page |
| aggregate | The rating summary for a business by domain (no individual reviews) — overall star rating, total review count, the 5★→1★ rating distribution, and the five sub-rating averages (service, value, shipping, returns, quality). Cheaper than `reviews` when you only need the score. | Reputation platforms call aggregate to get the rating summary for a business by domain (no individual reviews). | domain |
| detail | The full business profile on Sitejabber by domain — name, website, founded year, industry, the AI summary of what customers say, categories, overall rating, total review count, sub-rating breakdown and the rating distribution. | Market researchers call detail to get the full business profile on Sitejabber by domain. | domain |
| search | Search Sitejabber for businesses by name or keyword — returns matching businesses with name, domain, overall rating, total review count, industry and AI summary. 28 per page. | B2B review analysts call search to search Sitejabber for businesses by name or keyword. | query, page |
| category | Browse the businesses listed in a Sitejabber category — returns each business's name, domain, rating, review count and industry, ranked. 10 per page; paginate with `page`. Pick a top-level category from the list, or pass any deeper sub-category slug from a sitejabber.com/categories/<slug> URL (e.g. 'banking', 'insurance', 'web-hosting', 'dating') — those work too. | Support teams call category to get browse the businesses listed in a Sitejabber category. | category, page |
Call search from your stack
curl -X POST https://api.reefapi.com/sitejabber/v1/search \
-H "x-api-key: $REEF_KEY" \
-H "content-type: application/json" \
-d '{"query":"amazon"}'import requests
r = requests.post(
"https://api.reefapi.com/sitejabber/v1/search",
headers={"x-api-key": REEF_KEY},
json={
"query": "amazon"
},
)
print(r.json()["data"])const res = await fetch("https://api.reefapi.com/sitejabber/v1/search", {
method: "POST",
headers: {
"x-api-key": process.env.REEF_KEY,
"content-type": "application/json",
},
body: JSON.stringify({
"query": "amazon"
}),
});
const { ok, data, meta, error } = await res.json();Ask your MCP-connected assistant: call reefapi.sitejabber.search with {"query":"amazon"}.Who uses this API and why
- Reputation tools call reviews to monitor a business's Sitejabber feedback.
- Aggregators use aggregate to display a live rating badge.
- Researchers use search and category to benchmark competitors.
Questions developers ask before integrating
Where should I read a business's overall rating and review count?
From search, not from the business object inside a reviews response. A measured search for "nike" returned the correct record — business_id 814738, name "Nike", domain nike.com, rating 2.03, review_count 476 — while the reviews call for the same domain returned a business block naming a different company. We would rather tell you than let you ship it. meta.pagination.total on the reviews response is also correct (474 for that domain) and is the cheapest way to get the count if you are already paging.
Why is a review's text field null?
Because the body is not always in the field you expect. A measured Nike review returned text null with tip carrying the actual 284-character complaint, while a Shein review in the same session returned both populated. Read text, and fall back to tip when it is empty — a customer record built on text alone will show blank reviews for a meaningful share of rows.
Why do different reviews have different sub-ratings?
Because reviewers fill in whichever dimensions they care about. Three measured first-page reviews carried three different key sets: {service, value, returns, quality}, all five including shipping, and {value, shipping, returns, quality} with no service. There is no fixed schema for that object. Iterate the keys present rather than reading five fixed fields, and never average across reviews without checking how many actually scored the dimension you are averaging.
What format is reviewer_country in?
The full UN long-form country name, which is longer than almost anyone expects. A measured review returned "United Kingdom of Great Britain and Northern Ireland" rather than "UK", "GB" or "United Kingdom". If you are grouping reviews by geography, normalize these to ISO codes on the way in — a naive string match against "United Kingdom" will not hit that value.
How do I page through every review for a business?
reviews returns 20 per page and meta.pagination carries page, per_page, total, has_more and next_page. Page until has_more is false rather than computing from total, because the returned count is occasionally one over per_page — a measured Shein page returned 21 rows against per_page 20. total tells you the size of the job before you start: 474 reviews for one measured domain, 4,965 for another.
Can I find businesses I do not already have the domain for?
Two ways. search takes a name or keyword and returns matching businesses with domain, rating, review_count, subindustry and categories — the same measured "nike" search returned the real Nike alongside several lookalike domains, which is itself useful for brand-protection work. category browses a sector: a measured cryptocurrency call returned 10 businesses per page out of 1,109, each with its rating and review count, ranked. Both give you the domain that every other action needs.
What are the category slugs, and why is slug always null?
The category parameter takes a top-level slug — shopping, clothing-fashion, computers-technology, beauty, health, home-garden, food-drink, travel, finance, cryptocurrency, business, education, entertainment, autos-vehicles, real-estate, pets-animals, baby-kids, sports and more — and it also accepts any deeper sub-category slug taken from a sitejabber.com/categories/ URL. Separately, the categories[] array on a business returns objects whose name is populated and whose slug came back null on every measured row, so use name and lower-case it yourself if you need a slug.
What else does a review record carry?
More than the star rating: review_id, review_no, the 1-5 rating, title, the body, date and experience_date as separate timestamps, is_verified, helpful_votes and not_helpful_votes, comment_count, photo_count, products_used as an array of free-text strings the reviewer typed, and business_reply. A measured one-star review carried is_verified true, 2 helpful votes, 6 photos, products_used naming the specific trainers, and business_reply null. experience_date being separate from date matters for trend work — someone can review in January an experience from two months earlier.
What is the Sitejabber API?
Sitejabber API is a ReefAPI endpoint group for sitejabber It returns live JSON through POST requests under /sitejabber/v1.
Is the Sitejabber API free to try?
Yes. ReefAPI starts with 1,000 free credits, no card required. Sitejabber calls use the same shared credit balance as every other ReefAPI engine.
Do I need a Sitejabber login or account?
No login to Sitejabber is needed for the API response. You call ReefAPI with your x-api-key header, and the playground can run live examples before you create a production key.
How fresh is the Sitejabber data?
The page example is captured from a live reviews call, and production requests fetch live data through ReefAPI rather than a static sample.
How many credits does the Sitejabber API use?
Sitejabber actions currently cost 1 credit per successful call. Failed or blocked calls are free. All APIs draw from one credit pool.
Can I call Sitejabber from an AI assistant or MCP client?
Yes. Connect ReefAPI once through MCP and your assistant can call sitejabber actions with the same key, credit pool and JSON envelope used by normal REST requests.