# Trustpilot search

This endpoint provides a list of business profiles listed on the Trustpilot platform. Takes keyword, priority, depth and more, all optional. Served by DataForSEO.

This endpoint provides a list of business profiles listed on the Trustpilot platform. The returned results are relevant to the specified keyword. Submit once with action=submit. Reuse this same tool with action=result and its id to read status/output at no additional cost. Queued is not finished.

- Tool ID: `dataforseo/business-data-trustpilot-search`
- Name in the catalog: Business Data Trustpilot Search
- Provider: [DataForSEO](/providers/dataforseo.md)
- Capability: [Trustpilot reviews](/tools/reviews/trustpilot.md)
- Price: usage based, the maximum is shown before a run
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

Billed at the cost the provider reports for the call, never above $100. Your agent sees the maximum before running.


```json
{
  "model": "reported",
  "costPath": "cost",
  "maxUsdDefault": 0.00075,
  "maxUsdCap": 100,
  "multipliers": [
    {
      "addUsdPer": {
        "field": "depth",
        "usd": 0.00075,
        "per": 10,
        "minus": 10,
        "default": 10,
        "max": 140
      }
    },
    {
      "when": {
        "field": "priority",
        "equals": 2
      },
      "totalFactor": 2
    }
  ],
  "requireCost": true
}
```

### Action-specific pricing


```json
[
  {
    "field": "action",
    "equals": "result",
    "pricing": {
      "model": "per_call",
      "amountUsd": 0
    }
  }
]
```

Pricing source: [https://docs.dataforseo.com/v3/appendix/user_data/](https://docs.dataforseo.com/v3/appendix/user_data/). Account tariff business_data/trustpilot/search/task_post; bounds applied to inputs; actual cost from provider response..

Price verification date: 2026-10-10.

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "keyword": {
      "type": "string",
      "description": "keyword required field the keyword you specify should indicate a business category or company name; you can specify up to 700 characters in the keyword filed; all %## will be decoded (plus character ‘+’ will be decoded to a space character)",
      "maxLength": 700,
      "minLength": 1
    },
    "priority": {
      "type": "integer",
      "description": "task priority optional field can take the following values: 1 – normal execution priority (set by default) 2 – high execution priorityYou will be additionally charged for the tasks with high execution priority. The cost can be calculated on",
      "enum": [
        1,
        2
      ]
    },
    "depth": {
      "type": "integer",
      "description": "parsing depth optional field number of search results to be returned from the API response we strongly recommend setting the parsing depth in the multiples of twenty because our systems processes twenty search results in a row; default valu",
      "maximum": 140,
      "minimum": 1
    },
    "tag": {
      "type": "string",
      "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
      "maxLength": 255
    },
    "action": {
      "type": "string",
      "enum": [
        "submit",
        "result"
      ],
      "default": "submit"
    },
    "id": {
      "type": "string",
      "minLength": 8,
      "maxLength": 80,
      "pattern": "^[A-Za-z0-9-]+$"
    }
  },
  "allOf": [
    {
      "if": {
        "properties": {
          "action": {
            "const": "result"
          }
        },
        "required": [
          "action"
        ]
      },
      "then": {
        "type": "object",
        "properties": {
          "action": {
            "const": "result"
          },
          "id": {
            "type": "string",
            "minLength": 8,
            "maxLength": 80,
            "pattern": "^[A-Za-z0-9-]+$"
          }
        },
        "required": [
          "action",
          "id"
        ],
        "additionalProperties": false
      },
      "else": {
        "type": "object",
        "properties": {
          "keyword": {
            "type": "string",
            "description": "keyword required field the keyword you specify should indicate a business category or company name; you can specify up to 700 characters in the keyword filed; all %## will be decoded (plus character ‘+’ will be decoded to a space character)",
            "maxLength": 700,
            "minLength": 1
          },
          "priority": {
            "type": "integer",
            "description": "task priority optional field can take the following values: 1 – normal execution priority (set by default) 2 – high execution priorityYou will be additionally charged for the tasks with high execution priority. The cost can be calculated on",
            "enum": [
              1,
              2
            ],
            "default": 1
          },
          "depth": {
            "type": "integer",
            "description": "parsing depth optional field number of search results to be returned from the API response we strongly recommend setting the parsing depth in the multiples of twenty because our systems processes twenty search results in a row; default valu",
            "maximum": 140,
            "minimum": 1,
            "default": 10
          },
          "tag": {
            "type": "string",
            "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
            "maxLength": 255
          },
          "action": {
            "const": "submit"
          }
        },
        "required": [
          "keyword"
        ],
        "additionalProperties": false
      }
    }
  ]
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "dataforseo/business-data-trustpilot-search",
  "input": {
    "keyword": "pizza restaurant",
    "depth": 10,
    "priority": 1,
    "action": "submit"
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

[Provider documentation](https://docs.dataforseo.com/v3/business_data/trustpilot/search/task_post/)

[REST inspection](https://api.agentik.cc/v1/tools/dataforseo/business-data-trustpilot-search) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/dataforseo/business-data-trustpilot-search) · [Agent index](/llms.txt)
