# Trustpilot Scraper - Company Profiles, Reviews & Leads (`scrapesage/trustpilot-scraper`) Actor

Scrape Trustpilot company profiles (TrustScore, review counts, categories, website, email, phone, address), full reviews with company replies, and category/search discovery as B2B leads. Lead scoring, filters and monitor mode. No login or API key. Independent tool, not affiliated with Trustpilot.

- **URL**: https://apify.com/scrapesage/trustpilot-scraper.md
- **Developed by:** [Scrape Sage](https://apify.com/scrapesage) (community)
- **Categories:** Lead generation, E-commerce, Agents
- **Stats:** 22 total users, 10 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.98 / 1,000 company profile scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Trustpilot Scraper — Company Profiles, Reviews & Leads

> **Disclaimer:** This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Trustpilot A/S or any of its subsidiaries. All trademarks mentioned are the property of their respective owners. "Trustpilot" is referenced only to describe the publicly available website this Actor collects data from.

Extract **complete data from any [Trustpilot](https://www.trustpilot.com) business** — the full **company profile** (TrustScore, total reviews and the 1–5★ distribution, categories, **website, e-mail, phone, address**, claimed/verified status) plus **every review** with its rating, full text, dates, reviewer details, verification status and the **company's reply**. Discover whole **categories** or **search results** to build ready-to-use **B2B lead lists**.

No login, no cookies, no API key — a real browser clears Trustpilot's anti-bot wall and reads the structured data straight from the page, so you get the **richest, most reliable Trustpilot dataset in the category**.

### Why this Trustpilot scraper?

Most Trustpilot scrapers grab a handful of review fields and choke on Trustpilot's WAF (you'll see them stuck at 60–70% success). This actor drives a real browser, clears the challenge automatically, and ships **both** the company-level firmographics **and** the complete review stream — then layers on category/search discovery, a lead score, and monitoring mode.

| Data | Generic scrapers | This actor |
|---|---|---|
| Review text, rating, dates | ✅ | ✅ |
| Reviewer name, country, review count | partial | ✅ |
| Company **reply** to each review | ❌ | ✅ |
| Review verification status | partial | ✅ |
| **Company profile** (TrustScore, # reviews, 1–5★ split) | partial | ✅ |
| Company **website, e-mail, phone, address** | ❌ | ✅ when listed |
| Company **categories** | ❌ | ✅ |
| **Category / search discovery** (lead lists) | ❌ | ✅ |
| **Lead score** (0–100) per company | ❌ | ✅ |
| Filters: stars, date, verified-only, language | partial | ✅ |
| **Monitoring mode** — only new reviews | ❌ | ✅ |
| Reliability vs Trustpilot's WAF | 60–70% | ✅ browser-cleared |

### Use cases

- **Reputation monitoring** — track new reviews for your brand (or your competitors) and respond fast. Monitoring mode returns only reviews you haven't seen before.
- **B2B lead generation** — pull every company in a Trustpilot category or search, complete with website, e-mail, phone and a lead score, straight into your CRM.
- **Competitive & market intelligence** — benchmark TrustScores, review volume and sentiment across an industry.
- **Voice-of-customer & CX analytics** — feed structured review text into dashboards or sentiment/LLM pipelines.
- **Sales prospecting** — find unhappy customers of a competitor (1–2★ reviews) for targeted outreach.
- **Due diligence & vendor screening** — verify a supplier's TrustScore, claimed status and complaint history before you buy.

### How to use

1. [Sign up for Apify](https://console.apify.com/sign-up) — the free plan is enough to try this actor.
2. Open the **Trustpilot Scraper**, enter one or more **company domains** (`amazon.com`, `www.nike.com`), **search queries**, **categories**, or paste any Trustpilot URL.
3. Choose whether to include reviews and set the caps. Click **Start**.
4. **Export** as JSON, CSV, Excel, XML, or RSS — or pull results programmatically via the [Apify API](https://docs.apify.com/api/v2).

### Input

```json
{
    "companyDomains": ["www.amazon.com", "booking.com"],
    "includeReviews": true,
    "maxReviewsPerCompany": 100,
    "reviewsSort": "recency",
    "starRatings": ["1", "2"],
    "reviewsNewerThan": "30 days",
    "monitorMode": false
}
```

- **companyDomains** — domains or full Trustpilot review URLs. Each yields a company profile + its reviews.
- **searchQueries** — company names to search; returns the matching companies.
- **categories** — category slug or name (e.g. `electronics_technology`, `bank`) → every company in that category (lead lists).
- **startUrls** — any Trustpilot URL (company / category / search), auto-detected.
- **includeReviews** *(default true)* / **maxReviewsPerCompany** *(default 50)* — reviews per company (20 per page).
- **reviewsSort** *(default `recency`)* — `recency` (best for monitoring) or `relevance`.
- **starRatings**, **reviewsNewerThan**, **verifiedReviewsOnly** — review filters.
- **includeCompanyRecord** *(default true)* — output the company profile record.
- **maxCompaniesPerQuery** *(default 100)* / **enrichCompanyDetails** *(default false)* — discovery caps; enrich to open each discovered company for its full profile + reviews.
- **maxItems** *(default 200)* — global cap across companies + reviews.
- **monitorMode** / **monitorStoreName** — emit only records not seen in previous runs (see below).
- **maxConcurrency** *(default 4)* — parallel browser pages.
- **proxyConfiguration** — defaults to Apify **Residential** proxy (recommended for Trustpilot).

### Output

Each row is tagged with a `type` — `company` or `review`. Use the **Companies** and **Reviews** dataset views to switch between them.

A company record (`type: "company"`):

```json
{
    "type": "company",
    "displayName": "Amazon",
    "domain": "www.amazon.com",
    "trustpilotUrl": "https://www.trustpilot.com/review/www.amazon.com",
    "trustScore": 2.1,
    "stars": 2,
    "numberOfReviews": 18450,
    "starsDistribution": { "oneStar": 9100, "twoStars": 1200, "threeStars": 900, "fourStars": 1800, "fiveStars": 5450 },
    "websiteUrl": "https://www.amazon.com/",
    "email": "support@amazon.com",
    "phone": "+1 206-922-0880",
    "street": "410 Terry Ave N",
    "city": "Seattle",
    "zipCode": "98109",
    "country": "US",
    "categories": [ { "id": "electronics_technology", "name": "Electronics & Technology" } ],
    "primaryCategory": "Electronics & Technology",
    "isClaimed": true,
    "isVerified": true,
    "logoUrl": "https://user-images.trustpilot.com/...",
    "leadScore": 92,
    "scrapedAt": "2026-06-23T12:00:00.000Z"
}
```

A review record (`type: "review"`):

```json
{
    "type": "review",
    "companyDomain": "www.amazon.com",
    "companyDisplayName": "Amazon",
    "reviewId": "6634abc...",
    "reviewUrl": "https://www.trustpilot.com/reviews/6634abc...",
    "rating": 1,
    "title": "Delivery never arrived",
    "text": "Ordered a gift two weeks ago and it still hasn't shipped...",
    "publishedDate": "2026-06-20T09:14:00.000Z",
    "experiencedDate": "2026-06-18T00:00:00.000Z",
    "reviewerName": "Jordan P.",
    "reviewerCountry": "US",
    "reviewerReviewCount": 3,
    "reviewerProfileUrl": "https://www.trustpilot.com/users/...",
    "isVerified": true,
    "verificationSource": "invitation",
    "replyText": "We're sorry to hear about your experience...",
    "replyPublishedDate": "2026-06-21T08:00:00.000Z",
    "scrapedAt": "2026-06-23T12:00:00.000Z"
}
```

#### What to expect (field coverage)

Some company fields are filled in only when the business added them to its Trustpilot profile. Verified across many businesses, you can typically expect:

| Entity | Always present | Usually present | Present when published |
|---|---|---|---|
| **Company** | domain, displayName, TrustScore, stars, # reviews, categories | star distribution, claimed status | website, e-mail, phone, address (claimed profiles) |
| **Review** | rating, dates, reviewer name | title, text, country, verification | company reply (when the business replied) |

A blank field means the business or reviewer didn't publish it — not that scraping failed. Nothing is dropped, so you always get the richest dataset available.

### Monitoring mode (only new reviews)

Turn on **Monitoring mode** and the actor remembers the review/company ids it has already returned (in a named key-value store) and emits **only new records** on the next run. Combine it with **Sort = Most recent** and a relative **Only reviews newer than** window for clean, incremental pulls.

Monitoring mode is **independent of, and complementary to, the Apify Scheduler** — the [Schedule](https://docs.apify.com/platform/schedules) decides *when* the actor runs; monitoring mode decides *what's new* each time. Use a different **monitor store name** per tracked job to keep their histories separate.

### How much does it cost to scrape Trustpilot?

This Actor uses Apify's **pay-per-event** pricing: you are charged only for the results it delivers, with no monthly rental and no start fee. The events it can charge are:

- **Company profile scraped** - One Trustpilot company profile – TrustScore, total reviews + 1–5★ split, categories, website, email, phone, address, claimed status, logo, lead score.
- **Review scraped** - One Trustpilot review – rating, title, full text, published/experienced dates, reviewer name/country/count, verification, company reply.

The current price of each event is shown on the **Pricing** tab of this page. Set a maximum total charge on the run if you want a hard cap on spend, and use the input limits to control how much the Actor fetches.

### Automate & schedule

- **[Apify API](https://docs.apify.com/api/v2)** — start runs, fetch datasets, manage schedules over REST.
- **[apify-client for JavaScript](https://docs.apify.com/api/client/js/)** and **[Python](https://docs.apify.com/api/client/python/)** — official SDKs.
- **[Schedules](https://docs.apify.com/platform/schedules)** — run daily/weekly to capture new reviews as they land.
- **[Webhooks](https://docs.apify.com/platform/integrations/webhooks)** — trigger CRM imports, Slack alerts or email sequences the moment a run finishes.

```js
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'MY_APIFY_TOKEN' });

const run = await client.actor('scrapesage/trustpilot-scraper').call({
    companyDomains: ['www.amazon.com'],
    includeReviews: true,
    maxReviewsPerCompany: 100,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Got ${items.length} records`);
```

### Integrate with any app

Connect the dataset to 5,000+ apps — no code required:

- **[Make](https://docs.apify.com/platform/integrations/make)** — multi-step automation scenarios.
- **[Zapier](https://docs.apify.com/platform/integrations/zapier)** — push new company leads or reviews straight into your CRM.
- **[Slack](https://docs.apify.com/platform/integrations/slack)** — get notified when a monitored brand gets a new (or negative) review.
- **[Google Drive / Sheets](https://docs.apify.com/platform/integrations/drive)** — auto-export every run to a spreadsheet.
- **[Airbyte](https://docs.apify.com/platform/integrations/airbyte)** — pipe results into your data warehouse.
- **[GitHub](https://docs.apify.com/platform/integrations/github)** — trigger runs from commits or releases.

### Use with AI assistants (MCP)

The output is clean, LLM-ready JSON. Call this actor from Claude, ChatGPT, or any agent framework through the **[Apify MCP server](https://docs.apify.com/platform/integrations/mcp)** — ask your assistant to "summarize the latest 1-star reviews for this company" and let it run the scraper for you.

### Agent-ready: autonomous payments (x402 & Skyfire)

This actor is **agent-ready** — AI agents can discover it, run it, and **pay for it autonomously**, with no Apify account and no human in the loop. It uses [pay-per-event](https://docs.apify.com/platform/actors/publishing/monetize/pay-per-event) pricing and [limited permissions](https://docs.apify.com/platform/actors/development/permissions), so it qualifies for Apify's agentic-payment standards:

- **[x402](https://docs.apify.com/platform/integrations/x402)** — an open, HTTP-native payment protocol. Agents pay per run in USDC on the Base network directly through the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp) — no account, no API key.
- **[Skyfire](https://docs.apify.com/platform/integrations/skyfire)** — agent-to-service payments for fully autonomous AI-agent workflows.

Building an AI agent, MCP tool, or autonomous data pipeline? This scraper is ready to plug in and pay as it goes.

### More scrapers from scrapesage

Build a complete **reputation, reviews & B2B-lead stack**:

- **[Google Maps Scraper](https://apify.com/scrapesage/google-maps-scraper)** — local business leads with emails, phones, ratings & reviews.
- **[BBB Scraper](https://apify.com/scrapesage/bbb-scraper)** — Better Business Bureau ratings, accreditation & complaints.
- **[Website Contact Scraper](https://apify.com/scrapesage/website-contact-scraper)** — enrich any company domain with emails, phones & social profiles.
- **[Yellow Pages Scraper](https://apify.com/scrapesage/yellow-pages-scraper)** — local business directory leads.
- **[Glassdoor Scraper](https://apify.com/scrapesage/glassdoor-scraper)** — employer reviews, ratings, salaries & interviews.
- **[Reddit Scraper](https://apify.com/scrapesage/reddit-scraper)** — brand mentions, discussions & sentiment.
- **[Shopify Store Scraper](https://apify.com/scrapesage/shopify-store-scraper)** — products, prices & store data from any Shopify shop.

### Tips

- **Lead lists**: use **categories** or **searchQueries** with `includeReviews` off for fast, cheap company-only pulls — every record carries website, category, location and a lead score.
- **Reputation monitoring**: keep `reviewsSort` on *Most recent*, set `reviewsNewerThan` (e.g. `7 days`) and turn on **Monitoring mode** for incremental, no-duplicate runs.
- **Negative-review outreach**: set `starRatings` to `["1","2"]` to pull only unhappy customers.
- **Big categories**: raise `maxCompaniesPerQuery` and turn on `enrichCompanyDetails` to open each company for its full contact profile.
- **Reliability**: keep the default **Residential** proxy — Trustpilot's WAF challenges datacenter IPs.

### FAQ

**How do I scrape one company?** Put its domain in `companyDomains` (`amazon.com`, `www.nike.com`) or paste its Trustpilot URL. You can pass many at once.

**Does it need the Trustpilot API or a key?** No. Trustpilot's official API is invite-only; this actor reads the same (and richer) data from the public business and review pages — no key or login.

**Can I get every review for a company?** Yes — raise `maxReviewsPerCompany`. Trustpilot serves 20 reviews per page and the actor paginates automatically.

**Can I build a lead list by industry?** Yes — add a category slug/name to `categories` (e.g. `restaurant`, `bank`) and the actor returns every listed company with its website, location and lead score.

**How do I monitor a brand for new reviews?** Create a [Schedule](https://docs.apify.com/platform/schedules) (e.g. daily) with **Monitoring mode** on — each run returns only reviews you haven't seen before. Add a [webhook](https://docs.apify.com/platform/integrations/webhooks) or [Zapier zap](https://docs.apify.com/platform/integrations/zapier) to push them into your CRM or Slack.

**Why is a company's e-mail or phone empty?** Trustpilot only shows contact details that the business added to a claimed profile. When they're absent, the field is simply blank.

**Can I export to Google Sheets, CSV, or Excel?** Yes — one click in the dataset view, or automatically on every run via the [Google Drive integration](https://docs.apify.com/platform/integrations/drive).

**Is scraping Trustpilot legal?** This actor collects publicly available data only. You're responsible for using the data in compliance with applicable laws (e.g. GDPR/CCPA for personal data) and Trustpilot's terms.

### Disclaimer

**This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Trustpilot A/S or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.**

"Trustpilot" and any related marks are the property of their respective owners and are used here only in a descriptive, nominative sense - to identify the publicly accessible website from which this Actor collects data. This Actor is not an official Trustpilot product, is not authorised or certified by Trustpilot A/S, and does not distribute Trustpilot software. It collects only publicly available information; you are responsible for ensuring your use of that data complies with applicable laws, regulations and the terms of the source website.

### Need help?

Open an issue on the actor's **Issues** tab, or visit the [Apify help center](https://help.apify.com/). Feature requests are welcome — this actor is actively maintained.

# Actor input Schema

## `companyDomains` (type: `array`):

Companies to scrape. Enter a domain (e.g. "amazon.com", "www.nike.com") or a full Trustpilot review URL (e.g. "https://www.trustpilot.com/review/booking.com"). Each yields one company profile plus its reviews (if enabled). One per row.

## `searchQueries` (type: `array`):

Company names to search on Trustpilot. Each query returns the matching companies (use "Max companies per query" to cap). One query per row — e.g. "Tesla", "meal delivery".

## `categories` (type: `array`):

Trustpilot category slugs or names to list businesses from — e.g. "electronics\_technology", "bank", "Travel Insurance Company". Returns every company in the category (great for building lead lists). One per row.

## `startUrls` (type: `array`):

Paste any Trustpilot URLs — a company page (/review/<domain>), a category page (/categories/<slug>) or a search page (/search?query=...). Each URL is auto-detected and routed. One per row.

## `includeReviews` (type: `boolean`):

For every company scraped, also output its reviews (type `review`). Turn off to get only the company profile records (fastest, cheapest — perfect for lead lists).

## `maxReviewsPerCompany` (type: `integer`):

How many reviews to output per company (most recent / most relevant first, depending on Sort). Trustpilot serves 20 reviews per page. Keep modest for fast runs.

## `reviewsSort` (type: `string`):

Order reviews are collected in. "Most recent" is best for monitoring new reviews; "Most relevant" is Trustpilot's default ranking.

## `starRatings` (type: `array`):

Only keep reviews with these star ratings (1–5). Leave empty to keep all ratings.

## `reviewsNewerThan` (type: `string`):

Keep only reviews published after this. Accepts an ISO date (2026-01-01) or a relative window like "7 days", "24 hours", "3 months". Great with monitoring mode for fresh-only pulls.

## `verifiedReviewsOnly` (type: `boolean`):

Keep only reviews Trustpilot marks as verified (invitation/verified purchase). Off = include organic reviews too.

## `includeCompanyRecord` (type: `boolean`):

Output a `company` record (TrustScore, review counts, categories, website, email, phone, address, claimed status, lead score) for each company. Turn off if you only want reviews.

## `maxCompaniesPerQuery` (type: `integer`):

Cap on companies returned per search query or per category (for discovery / lead lists). 0 = no per-source limit (only the global Max items applies).

## `enrichCompanyDetails` (type: `boolean`):

For companies found via search/category, open each company's page for the full profile (website, email, phone, full category list, star distribution) and reviews. Off = use the lighter listing-level fields only (faster, cheaper, no extra page per company).

## `maxItems` (type: `integer`):

Cap on total records (companies + reviews) across the whole run. Listings and review pages paginate automatically until this cap is reached.

## `deduplicate` (type: `boolean`):

Skip a record already emitted in this run (by id) — useful when sources overlap.

## `monitorMode` (type: `boolean`):

Remember ids already returned and emit ONLY records not seen in previous runs. Pairs with Apify Schedules to track new reviews (and newly listed companies) over time without re-paying for old data. Independent of — and complementary to — the platform Scheduler.

## `monitorStoreName` (type: `string`):

Named key-value store that holds the 'already seen' ids for monitoring mode. Use a different name per tracked job to keep their histories separate. Lowercase letters, digits and hyphens only.

## `maxConcurrency` (type: `integer`):

Maximum parallel browser pages. Lower it if you see transient blocks; raise it for speed (uses more memory — allow ~1GB per 2 pages).

## `proxyConfiguration` (type: `object`):

Proxy settings. Trustpilot is protected by AWS WAF. Leave the default: the actor picks the proxy lane automatically and retries any blocked request on Apify Residential with a fresh IP. Set a specific group, country or your own proxy URLs only if you need them — an explicit choice is used exactly as configured.

## `urlsFromFile` (type: `string`):

Paste a list of URLs (one per line), OR one link to a .txt/.csv file, Google Sheet or Google Drive file containing them. Lets you import many Start URLs at once instead of typing each. Google Sheet/Drive share links are handled automatically.

## Actor input object example

```json
{
  "companyDomains": [
    "www.amazon.com"
  ],
  "searchQueries": [],
  "categories": [],
  "startUrls": [],
  "includeReviews": true,
  "maxReviewsPerCompany": 50,
  "reviewsSort": "recency",
  "starRatings": [],
  "verifiedReviewsOnly": false,
  "includeCompanyRecord": true,
  "maxCompaniesPerQuery": 100,
  "enrichCompanyDetails": false,
  "maxItems": 200,
  "deduplicate": true,
  "monitorMode": false,
  "monitorStoreName": "trustpilot-scraper-monitor",
  "maxConcurrency": 4,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `results` (type: `string`):

All scraped records in the default dataset — company profiles and reviews with their full field set.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "companyDomains": [
        "www.amazon.com"
    ],
    "searchQueries": [],
    "categories": [],
    "startUrls": [],
    "urlsFromFile": ""
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapesage/trustpilot-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "companyDomains": ["www.amazon.com"],
    "searchQueries": [],
    "categories": [],
    "startUrls": [],
    "urlsFromFile": "",
}

# Run the Actor and wait for it to finish
run = client.actor("scrapesage/trustpilot-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "companyDomains": [
    "www.amazon.com"
  ],
  "searchQueries": [],
  "categories": [],
  "startUrls": [],
  "urlsFromFile": ""
}' |
apify call scrapesage/trustpilot-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapesage/trustpilot-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/AYJXbEIj8Dj7A7al0/builds/spJNTICPVCQcsIl2a/openapi.json
