Trustpilot
Trustpilot company profiles and reviews: TrustScore, star breakdown, review text, ratings, dates and company replies.
Call these actions with your String API key; see Authentication. Every call answers with the envelope described in Responses & errors, whose data holds the rows below.
- Site:
trustpilot - Version:
1.0.0 - Reads from:
trustpilot.com
| Action | Description | Listed price |
|---|---|---|
business | Read Trustpilot company profiles by domain: TrustScore, stars, review count, the count at each star rating and in each language, categories, website and country. | Billed per request at your plan's rates |
reviews | Read a company's Trustpilot reviews, newest first, optionally one language, star rating, period or search text: rating, title, text, language, dates, reviewer name and country, verification and the company's reply. One set of filters reaches 200 reviews; coverage max reads every language and star rating and returns the deduplicated union. | Billed per request at your plan's rates |
business
Read Trustpilot company profiles by domain: TrustScore, stars, review count, the count at each star rating and in each language, categories, website and country.
POST https://request.usestring.ai/v1/integrations/trustpilot/businessInput
Unknown fields are rejected.
| Field | Type | Description |
|---|---|---|
businesses | string[] | null | Required. Company domains such as zappos.com, or trustpilot.com/review/ URLs. At least 1 entry. |
Output
data is an array of rows, one per result. Each row has:
| Field | Type | Description |
|---|---|---|
id | string | — |
domain | string | — |
name | string | null | — |
url | string | — |
trustScore | number | null | — |
stars | number | null | — |
reviewCount | integer | null | — |
reviewsLast12Months | integer | null | — |
ratings | object | null | — |
ratings.total | integer | — |
ratings.one | integer | — |
ratings.two | integer | — |
ratings.three | integer | — |
ratings.four | integer | — |
ratings.five | integer | — |
languages | object[] | — |
languages[].language | string | An ISO code such as sv. |
languages[].count | integer | — |
categories | string[] | — |
website | string | null | — |
countryCode | string | null | — |
isClaimed | boolean | null | — |
isClosed | boolean | null | — |
Example
curl https://request.usestring.ai/v1/integrations/trustpilot/business \
-H "Authorization: Bearer $STRING_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"businesses": ["zappos.com"]
}'data starts with these rows:
[
{
"id": "46dae88f0000640005010f49",
"domain": "www.zappos.com",
"name": "Zappos",
"url": "https://www.trustpilot.com/review/www.zappos.com",
"trustScore": 1.5,
"stars": 1.5,
"reviewCount": 693,
"reviewsLast12Months": 105,
"ratings": {
"total": 693,
"one": 340,
"two": 34,
"three": 24,
"four": 47,
"five": 248
},
"languages": [
{
"language": "en",
"count": 682
},
{
"language": "es",
"count": 2
},
{
"language": "fr",
"count": 1
},
{
"language": "it",
"count": 1
},
{
"language": "pl",
"count": 1
}
],
"categories": ["Clothing Store", "Handbags Shop", "Activewear Store", "Fashion Accessories Store", "Shoe Store"],
"website": "https://www.zappos.com",
"countryCode": "US",
"isClaimed": true,
"isClosed": false
}
]Requests and billing
- Requests: 1–2 Web Access requests per entry in
items. - Billing:
passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.
reviews
Read a company's Trustpilot reviews, newest first, optionally one language, star rating, period or search text: rating, title, text, language, dates, reviewer name and country, verification and the company's reply. One set of filters reaches 200 reviews; coverage max reads every language and star rating and returns the deduplicated union.
POST https://request.usestring.ai/v1/integrations/trustpilot/reviewsInput
Unknown fields are rejected.
| Field | Type | Description |
|---|---|---|
business | string | Required. A company domain such as zappos.com, or a trustpilot.com/review/ URL. At least 1 character. |
language | string | Only reviews in this ISO language, such as sv. Omitted, every language. |
stars | integer | Only reviews with this star rating, 1 to 5. Omitted, every rating. From 1 to 5. |
date | last30days last3months last6months last12months | Only reviews from this period. Omitted, all time. |
search | string | Only reviews containing this text. |
pages | integer | How many pages of 20 reviews to read, newest first, from 1. Trustpilot serves at most 10 for one set of filters. From 1 to 10. |
coverage | page max | page (the default) reads one set of filters. max reads every language and star rating to the limit of each, up to 200 reviews a set, and returns the deduplicated union, the most reviews available without search terms. |
Output
data is an array of rows, one per result. Each row has:
| Field | Type | Description |
|---|---|---|
id | string | — |
business | string | The company's domain. |
url | string | — |
rating | integer | null | — |
title | string | null | — |
text | string | null | — |
language | string | null | — |
publishedAt | string | null | — |
experiencedAt | string | null | The date of the experience the reviewer gave. |
updatedAt | string | null | — |
author | string | null | — |
authorCountry | string | null | — |
authorReviewCount | integer | null | — |
verified | boolean | null | — |
verificationLevel | string | null | — |
source | string | null | — |
likes | integer | null | — |
replyText | string | null | The company's reply. |
replyAt | string | null | — |
Example
curl https://request.usestring.ai/v1/integrations/trustpilot/reviews \
-H "Authorization: Bearer $STRING_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"business": "zappos.com"
}'data starts with these rows:
[
{
"id": "6ae587c63e049e607bd8373b",
"business": "www.zappos.com",
"url": "https://www.trustpilot.com/reviews/6ae587c63e049e607bd8373b",
"rating": 1,
"title": "Horrible experience",
"text": "Horrible experience. Ordered shoes 11 days ago and it’s still in “processing”. What kind of company is this? When I spoke to a customer service agent they had no explanation as to why my shoes haven’t shipped. What is going on?? ",
"language": "en",
"publishedAt": "2026-10-31T08:16:38.000Z",
"experiencedAt": "2026-10-30T00:00:00.000Z",
"updatedAt": null,
"author": null,
"authorCountry": "US",
"authorReviewCount": 1,
"verified": false,
"verificationLevel": "not-verified",
"source": "Organic",
"likes": 0,
"replyText": null,
"replyAt": null
},
{
"id": "6ae28b49c9da56c6a7187c51",
"business": "www.zappos.com",
"url": "https://www.trustpilot.com/reviews/6ae28b49c9da56c6a7187c51",
"rating": 1,
"title": "Ordered a pair of boots",
"text": "Ordered a pair of boots. Got email that delivery will be delayed. Did not receive the item on new provided delivery date. Called customer service and they said they can only cancel the order. I asked not to I will wait for my order. Few days later I received another email that my order is lost during delivery and order has been canceled. And will have to wait another 10’days for my refunds. &@%# Zappos. ",
"language": "en",
"publishedAt": "2026-10-29T01:54:49.000Z",
"experiencedAt": "2026-10-24T00:00:00.000Z",
"updatedAt": null,
"author": null,
"authorCountry": "US",
"authorReviewCount": 1,
"verified": false,
"verificationLevel": "not-verified",
"source": "Organic",
"likes": 0,
"replyText": null,
"replyAt": null
}
]Requests and billing
- Requests: 1–2 Web Access requests per result page.
- Billing:
passthrough. Each request the action makes bills at its own rate on your plan; there is no separate charge for the action. See Pricing.