# CarGurus Used Car Listings Scraper

> CarGurus Used Car Listings Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Scrapes structured used car listing data from CarGurus by location, make/model, price, and other filters across US, Canada, and UK markets

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/cargurus?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/cargurus-used-car-listings-scraper-4940431c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_hAyb6_V51_ffpI1qntsVU

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 cargurus-used-car-listings-scraper-4940431c -d '<json body>'
```

Example prompt: Search CarGurus for used Honda Accord listings within 50 miles of 90210 in the US, sorted by price ascending, and give me up to 100 results.

## When to prefer this

Use this endpoint when you need structured CarGurus vehicle listing data — especially when filtering by location, make/model/trim, sort order, or directly from a CarGurus search URL — across US, Canadian, or UK markets. Prefer it over general web scrapers for CarGurus-specific structured output with pay-per-success pricing.

## Known failure modes

- Empty result set if no listings match the filters (not charged)
- Invalid zip code format returns error or empty results
- Unsupported search URL domain or format returns error
- maxItems or maxPages set to values that conflict with available data
- CarGurus site changes breaking scraper schema
- Network timeout on large page counts

## How this service works

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

## Output

Returns a JSON object containing the total count of matched listings, the product identifier ('cargurus'), and an array of listing items each with fields for listing ID, make, model, trim, year, title, body type, and country.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "zip": {
   "type": "string",
   "description": "Location for filter-based search, such as 10001, M4B 1B4, or SW1A 1AA."
  },
  "distance": {
   "type": "integer",
   "default": 50,
   "minimum": 1,
   "description": "Search radius in local distance units."
  },
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Stop after this many listings across all searches. Set 0 for no item cap."
  },
  "maxPages": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Stop after this many result pages per search. Set 0 for all available pages."
  },
  "sortType": {
   "enum": [
    "BEST_MATCH",
    "DEAL_SCORE",
    "PRICE",
    "MILEAGE",
    "YEAR",
    "DISTANCE",
    "LISTING_DATE"
   ],
   "type": "string",
   "default": "BEST_MATCH",
   "description": "Order search results by this criterion."
  },
  "startUrls": {
   "type": "array",
   "description": "Optional CarGurus search URLs on the US, Canada, or UK site. If supplied, these replace the location filters."
  },
  "searchCountry": {
   "enum": [
    "US",
    "CA",
    "UK"
   ],
   "type": "string",
   "default": "US",
   "description": "Marketplace used when no search URL is provided."
  },
  "sortDirection": {
   "enum": [
    "ASC",
    "DESC"
   ],
   "type": "string",
   "default": "ASC",
   "description": "Ascending or descending order for the selected sort criterion."
  },
  "makeModelTrimPaths": {
   "type": "string",
   "description": "Optional path copied from a filtered search URL, such as m4 or m124,m124/d1751."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "make": null,
    "trim": null,
    "year": null,
    "model": null,
    "title": null,
    "country": null,
    "bodyType": null,
    "listingId": null
   }
  ],
  "product": "cargurus"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/cargurus-used-car-listings-scraper-4940431c/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)
