Trustpilot Company Search

Search for companies on Trustpilot using keywords or company names. This endpoint uses Trustpilot's search API to find businesses matching your query with filtering options by country, rating, and review count.

Endpoint

GET /api/trustpilot_company_search

Parameters

query string Required

Search query or keyword to find companies (e.g., "bestbuy", "shop", "restaurant")

page integer Optional

Page number for pagination (1-999, default: 1)

country string Optional

Filter results by country using ISO country code (e.g., DE, US, GB, default: DE)

min_rating string Optional

Filter companies by minimum rating: "any", "3", "4", or "4.5" (default: any)

min_review_count string Optional

Filter companies by minimum number of reviews: "any", "25", "50", "100", "250", or "500" (default: any)

locale string Optional

Locale for the search results (e.g., "en-US", "de-DE")

Request Examples

<?php
$url = "http://scrappa.test/api/trustpilot/company-search";
$data = [
    "query" => "bestbuy",
    "page" => 1,
    "country" => "US",
    "min_rating" => "4",
    "min_review_count" => "100",
    "locale" => "en-US"
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url . "?" . http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Accept: application/json",
    "X-API-KEY: your-api-key-here"
]);

$response = curl_exec($ch);
curl_close($ch);

$companies = json_decode($response, true);
print_r($companies);
const url = "http://scrappa.test/api/trustpilot/company-search";
const params = new URLSearchParams({
    query: "bestbuy",
    page: 1,
    country: "US",
    min_rating: "4",
    min_review_count: "100",
    locale: "en-US"
});

fetch(`${url}?${params}`, {
    method: "GET",
    headers: {
        "Accept": "application/json",
        "X-API-KEY": "your-api-key-here"
    }
})
.then(response => response.json())
.then(data => {
    console.log(data);
})
.catch(error => {
    console.error("Error:", error);
});
import requests
import json

url = "http://scrappa.test/api/trustpilot/company-search"

params = {
    "query": "bestbuy",
    "page": 1,
    "country": "US",
    "min_rating": "4",
    "min_review_count": "100",
    "locale": "en-US"
}

headers = {
    "Accept": "application/json",
    "X-API-KEY": "your-api-key-here"
}

response = requests.get(url, params=params, headers=headers)
data = response.json()

print(json.dumps(data, indent=2))
curl -X GET "http://scrappa.test/api/trustpilot/company-search?query=bestbuy&page=1&country=US&min_rating=4&min_review_count=100&locale=en-US" \
  -H "Accept: application/json" \
  -H "X-API-KEY: your-api-key-here"

Response Schema

{
    "data": {
        "page": 1,
        "pageSize": 20,
        "totalResults": 142,
        "businessUnits": [
            {
                "id": "12345678901234567890",
                "logoUrl": "https://logo.trustpilot.com/bestbuy.com",
                "location": {
                    "city": "Richfield",
                    "country": "US"
                },
                "categories": [
                    {
                        "categoryId": "electronics_technology",
                        "displayName": "Electronics & Technology"
                    }
                ],
                "profileUrl": "https://www.trustpilot.com/review/bestbuy.com",
                "trustScore": 4.2,
                "websiteUrl": "https://www.bestbuy.com",
                "displayName": "Best Buy",
                "identifyingName": "bestbuy",
                "numberOfReviews": 15234
            }
        ]
    },
    "meta": {
        "page": 1,
        "query": "bestbuy",
        "country": "US",
        "min_rating": "4",
        "min_review_count": "100"
    },
    "message": "Trustpilot company search data retrieved successfully",
    "success": true
}

Try It Live

Test this endpoint in our interactive playground with real data.

Open in Playground