# Idealo Price Comparison Scraper

> Idealo Price Comparison Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.1/call, status unknown (last checked 2026-10-02).

Retrieves structured product listings and merchant offers from Idealo's European price comparison marketplace by term, GTIN, product ID, or URL.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/idealo?utm_source=zero.xyz
- Price: $0.1/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/idealo-price-comparison-scraper-cf075250
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_CCiJc80pb0xRjRzpEPxpY

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 idealo-price-comparison-scraper-cf075250 -d '<json body>'
```

Example prompt: Search Idealo Germany for the Sony WH-1000XM5 headphones and pull back up to 20 merchant offers — use the search-by-term operation.

## When to prefer this

Use this endpoint when you need structured, machine-readable product and merchant offer data from Idealo's European price comparison platform — especially for German, Austrian, Spanish, French, Italian, or UK marketplaces. Prefer it over general web scrapers when you specifically need Idealo pricing data by GTIN, product ID, URL, or keyword search.

## Known failure modes

- Invalid or unsupported country code returns validation error
- Unknown GTIN or product ID returns empty items array with no charge
- Malformed product URL causes empty result
- Operation/value type mismatch (e.g. URL passed to search-by-gtin) returns empty results
- Idealo page structure changes may cause partial or empty data

## 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 results and an array of items, each with fields for query, status, country, operation, productId, productUrl, recordType, and productName — representing structured product and merchant offer data scraped from Idealo.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "values": {
   "type": "array",
   "description": "One or more terms, GTINs, product IDs, or product URLs matching the selected lookup type."
  },
  "country": {
   "enum": [
    "de",
    "at",
    "es",
    "fr",
    "it",
    "uk"
   ],
   "type": "string",
   "default": "de",
   "description": "Marketplace whose localized prices and offers will be retrieved."
  },
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Stop after this many dataset rows across all values. Zero removes the total cap."
  },
  "operation": {
   "enum": [
    "search-by-id",
    "search-by-gtin",
    "search-by-url",
    "search-by-term"
   ],
   "type": "string",
   "default": "search-by-id",
   "description": "Search products by term or locate merchant offers by GTIN, product ID, or product URL."
  },
  "maxOffersPerProduct": {
   "type": "integer",
   "default": 40,
   "minimum": 0,
   "description": "Stop after this many merchant offers for each product. Zero retrieves all reachable offers."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "query": null,
    "status": null,
    "country": null,
    "operation": null,
    "productId": null,
    "productUrl": null,
    "recordType": null,
    "productName": null
   }
  ],
  "product": "idealo"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/idealo-price-comparison-scraper-cf075250/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
