Get a company's employee reviews
Return employee reviews for one company: the reviewer's own headline, their pros, cons and advice to management, their overall and per-category stars, whether they approve of the CEO, would recommend the company and expect a positive outlook, their job title, location, employment status and tenure, helpful counts, and any public employer reply. Walk several pages in one request with pages, or pass a response's nextCursor back as cursor to resume later. sortBy orders the reviews inside the response you get back — the sort is applied locally over the window that was collected, not across every review the company has.
/company-reviews Reviews https://api.fetchlayer.dev/glassdoor/company-reviews Headers
Authorization string required Bearer token — your FetchLayer API key.
Parameters
company string required Glassdoor company id, or any Glassdoor URL containing one. Use /search-companies to turn a name into an id.
limit number optional Maximum reviews returned (max 2000), or -1 for everything available. (default: 30)
pages number optional Pages of results to collect in one request (max 100), or -1 for the maximum allowed. Each page counts as one request against your plan. (default: 1)
cursor string optional Resume from a previous response's nextCursor.
delayMs number optional Milliseconds to wait between pages (max 30000).
sortBy string optional date, rating, helpful or none. Applied locally over the reviews this response collected, not across the whole listing. (default: none)
sortDirection string optional asc or desc. (default: desc)
Response Fields
company-reviews
Get a company's employee reviews
employerId string The company these reviews belong to.
companyName string | null Company name as published.
reviews object[] The collected reviews.
reviews[].reviewId string Stable id for the review — the key to dedupe on across runs.
reviews[].summary string | null The reviewer's own headline.
reviews[].pros string | null What the reviewer liked.
reviews[].cons string | null What the reviewer did not.
reviews[].advice string | null Advice the reviewer left for management.
reviews[].ratingOverall number | null The reviewer's overall stars, 1-5.
reviews[].ratings object The same seven categories as the company profile, but for this one reviewer.
reviews[].ceoRating string | null APPROVE, DISAPPROVE or NO_OPINION.
reviews[].recommendToFriend string | null POSITIVE, NEGATIVE or NEUTRAL.
reviews[].businessOutlook string | null The reviewer's six-month outlook: POSITIVE, NEGATIVE or NEUTRAL.
reviews[].reviewedAt string | null When the review was published.
reviews[].jobTitle string | null Role the reviewer held.
reviews[].location string | null Where they worked, at the granularity in locationType (CITY, METRO, STATE or COUNTRY).
reviews[].employmentStatus string | null How they were employed, for example REGULAR, PART_TIME or INTERN.
reviews[].isCurrentJob boolean | null Whether they still worked there when they wrote it.
reviews[].lengthOfEmploymentYears number | null Tenure in years, as reported.
reviews[].helpfulCount number | null How many readers marked the review helpful.
reviews[].employerResponses object[] Public employer replies, each with text, respondedAt and the replier's job title. Replies are sparse, so an empty list means none is published — not that the employer never replies.
reviewCount number Reviews in this response.
totalReviewCount number | null Reviews available for this company across every page — compare it against reviewCount to see how much of the listing you have.
totalPages number | null Pages the listing spans.
pagesScraped number Pages actually collected. Each one counts as a request against your plan.
pagesRequested number Pages the request asked for. Lower than pagesScraped means the listing ran out.
nextCursor string | null Pass back as cursor to continue, or null when the listing is exhausted.
hasNextPage boolean Whether more results exist beyond this response.
requestedUrl string The Glassdoor page this result corresponds to.
scrapedAt string When the page was collected, as an ISO 8601 timestamp.
notes string[] Plain-language caveats about this particular result — a walk that stopped short, a listing with more pages, an upstream limit that was hit. Read it: a well-formed response can still be incomplete, and this is where that is said.
blocked boolean Always false on a successful response.
Request
curl -X POST "https://api.fetchlayer.dev/glassdoor/company-reviews" \
-H "Authorization: Bearer ss-your-key" \
-H "Content-Type: application/json" \
-d '{"company":"671954","pages":3,"limit":60,"sortBy":"date","sortDirection":"desc"}'Response
{
"employerId": "671954",
"companyName": "Stripe",
"reviewCount": 30,
"totalReviewCount": 1284,
"totalPages": 129,
"pagesScraped": 3,
"pagesRequested": 3,
"hasNextPage": true,
"nextCursor": "eyJwYWdlIjo0fQ==",
"reviews": [
{
"reviewId": "78451203",
"summary": "Great engineers, heavy pace",
"pros": "Exceptional colleagues and genuinely interesting infrastructure problems.",
"cons": "Scope changes often and the on-call rotation is demanding.",
"ratingOverall": 4,
"jobTitle": "Software Engineer",
"location": "Dublin, Ireland",
"employmentStatus": "REGULAR",
"isCurrentJob": true,
"reviewedAt": "2026-08-30",
"helpfulCount": 12,
"employerResponses": []
}
],
"notes": [
"Sorting was applied to the 30 reviews collected in this response, not across all 1284 reviews."
]
}