# Checkatrade Scraper API (x402)

> Checkatrade Scraper API (x402) is a paid API for AI agents from x402.186-241-26-229.sslip.io, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes Checkatrade to return structured listings of UK tradespeople by trade category and location, including ratings, reviews, and contact details.

## Facts

- Endpoint: POST https://x402.186-241-26-229.sslip.io/v1/checkatrade?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/checkatrade-scraper-api-x402-308bb565
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_kP_O_UNlys0ufpB2RBma4

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability checkatrade-scraper-api-x402-308bb565 -d '<json body>'
```

Example prompt: Search Checkatrade for electricians in SW1A 1AA and pull me up to 50 listings including their ratings, review counts, and phone numbers.

## When to prefer this

Choose this endpoint when you need structured, paginated tradesperson data from Checkatrade specifically — including ratings, reviews, and contact details — for UK-based searches. It is the right choice when you need to programmatically compare tradespeople by trade category and location without manually browsing Checkatrade. Prefer this over generic web scrapers when you need clean, typed output fields (ratings, phone numbers, profile URLs) rather than raw HTML.

## Known failure modes

- Empty results if the category or location doesn't match Checkatrade's taxonomy — use exact category names or numeric IDs
- No charge on failed or empty runs, but may return count:0 with empty items array if location yields no results
- Rate limiting or blocking by Checkatrade may cause partial results or empty pages
- Invalid UK postcode format may return no results — full postcodes recommended
- maxPages:0 with maxItems:0 may return very large or unpredictable result sets

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

A JSON object containing a count of matched listings and an array of tradesperson records, each including the trader's name, star rating, review count, trade category, Checkatrade profile URL, company ID, category ID, and phone number (if available). The product field confirms the data source as Checkatrade.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "category": {
   "type": "string",
   "default": "Electrician",
   "description": "Trade name or numeric category ID, such as Electrician or 12."
  },
  "location": {
   "type": "string",
   "description": "UK full postcode, postcode area, or town/city to search. Full postcodes give the most consistent results."
  },
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Stop after this many distinct trade listings. 0 uses the page limit only."
  },
  "maxPages": {
   "type": "integer",
   "default": 3,
   "minimum": 0,
   "description": "Maximum 12-result pages to request. 0 follows all available pages."
  },
  "includeDetails": {
   "type": "boolean",
   "default": true,
   "description": "Open each trade profile for full description, website, services, and verification fields."
  },
  "requirePhoneNumber": {
   "type": "boolean",
   "default": false,
   "description": "Save only listings with a public phone number."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "name": null,
    "rating": null,
    "category": null,
    "tradeUrl": null,
    "companyId": null,
    "categoryId": null,
    "phoneNumber": null,
    "reviewCount": null
   }
  ],
  "product": "checkatrade"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/checkatrade-scraper-api-x402-308bb565/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.186-241-26-229.sslip.io](https://www.zero.xyz/host/x402.186-241-26-229.sslip.io/llms.txt)
