Trustpilot Reviews API
Pull Trustpilot reviews for any company by brand name: star ratings, review text, dates, and reviewer details as clean JSON.
Provider network
Providers ranked by traffic
capped at $0.165 per request1 result$0.03366100 results$0.099200 results$0.165 capYou are charged for what comes back. Lower the limit to pay less - and no single request can cost more than the cap, however much comes back.
Call it
Make your first request
import os, requests res = requests.post( "https://api.getanyapi.com/v1/run/trustpilot.reviews", headers={"Authorization": f"Bearer {os.environ['ANYAPI_KEY']}"}, json={ "company": "" }, ) print(res.json())
{
"data": {
"items": [
{
"avatarUrl": "https://example.com/image.jpg",
"createdUtc": 12.5,
"rating": 4.6,
"text": "A short example description of this item.",
"title": "Example title",
"url": "https://example.com/page",
"verified": true
}
]
},
"found": true
}interface TrustpilotReviewsResponse {
data: {
items: {
avatarUrl?: string;
createdUtc?: number;
rating: number;
text: string;
title?: string;
url?: string;
verified?: boolean;
}[];
} | null;
found: boolean;
}Full parameter and response reference - every field, type, and example for this endpoint.
Reference
Request, response, and price
Last verified 2026-09-16 · uptime and latency measured over 30dcurl -X POST https://api.getanyapi.com/v1/run/trustpilot.reviews \
-H "Authorization: Bearer $ANYAPI_KEY" \
-H "Content-Type: application/json" \
-d '{"company":"stripe.com","limit":3}'| Field | Type | Example value |
|---|---|---|
| Request body | ||
| company | string | "stripe.com"Brand name or Trustpilot review-page URL to fetch reviews for (e.g. nike or https://www.trustpilot.com/review/nike.com). |
| countries | array | Only return reviews from reviewers in these ISO 3166-1 alpha-2 countries (e.g. ["US", "GB"]). Omit this field for all countries and to stay on the cheapest price; a country filter routes to the dearest source. |
| languages | array | Only return reviews in these ISO 639-1 languages (e.g. ["en", "de"]). Omit this field for all languages and to stay on the cheapest price; a language filter routes to the dearest source. |
| limit | integer | 3Maximum number of results to return (1-200, default 200). Trustpilot serves at most 200 reviews per company. |
| requireFields | array | Optional; omit it and routing is unchanged, with the cheapest source serving. Name the output fields this request must be able to return, for example `avatarUrl`, and it is served only by a source that returns every one of them. Fields you do not name are still returned whenever the serving source has them. This can raise your price: when the cheapest source cannot return a named field, a dearer source serves, and you are quoted and charged its price. A named field can still be absent on a review that genuinely lacks it. Naming a combination that no single source returns together is refused as invalid input, with no charge. |
| sortBy | string | Review ordering: auto, relevancy, or recent (e.g. recent). |
| stars | string | Limit reviews to a single star rating from 1 to 5 (e.g. 5). Omit this field to stay on the cheapest price; a star filter routes to a dearer source. |
| startDate | string | Only return reviews on or after this date, inclusive, in YYYY-MM-DD format (e.g. 2026-01-01). Omit this field to stay on the cheapest price; a date floor routes to the dearest source. |
| verifiedOnly | boolean | Set true to return only verified reviews (e.g. true). Omit this field, or send false, to stay on the cheapest price; true routes to a dearer source. |
| Response | ||
| data | object | Result payload, or null when nothing was found. |
| data.items | object[] | Review records: star rating, review title and text, date, reviewer name and country, and company reply when present. Populated whenever the provider has data for the entity. |
| data.items[].avatarUrlcan require | string | URL of the reviewer's avatar image. |
| data.items[].createdUtc | number | UTC epoch timestamp in seconds (Unix time). Multiply by 1000 for a JS Date in milliseconds. Populated whenever the provider has data for the entity. |
| data.items[].ratingcan require | number | Star rating (1-5). |
| data.items[].text | string | Review body text. Populated whenever the provider has data for the entity. |
| data.items[].title | string | Review title or headline. Populated whenever the provider has data for the entity. |
| data.items[].url | string | Canonical review URL. Populated whenever the provider has data for the entity. |
| data.items[].verifiedcan require | boolean | Whether the reviewer is verified. |
| found | boolean | Whether any reviews were found for the company. |
| Price | ||
| Price per request | USD | $0.00225 |
| Price /1k req | USD | $2.25 |
FAQ
About the Trustpilot Reviews API
The AnyAPI Trustpilot Reviews API returns Trustpilot reviews data as normalized JSON from one POST call to /v1/run/trustpilot.reviews. Pull Trustpilot reviews for any company by brand name: star ratings, review text, dates, and reviewer details as clean JSON. AnyAPI routes each request across 2 sources and falls back automatically when one fails. It costs from $2.25 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 99.4% of Trustpilot reviews calls through AnyAPI succeeded, with a median response time of 9.8 seconds across 620 measured calls.