{
  "openapi": "3.0.1",
  "info": {
    "title": "Cars.com Scraper — US Car Listings, Prices & Dealers",
    "description": "Scrape Cars.com new & used car listings by search URL or make/model + filters: price, deal rating, mileage, VIN, specs, colors, MPG, dealer & rating, distance, photos; optional features & history.",
    "version": "0.1",
    "x-build-id": "mxd2ScN2qhy29rwP3"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/tortuga~cars-com-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-tortuga-cars-com-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/tortuga~cars-com-scraper/runs": {
      "post": {
        "operationId": "runs-sync-tortuga-cars-com-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/tortuga~cars-com-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-tortuga-cars-com-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Cars.com search pages with filters set in the browser, e.g. https://www.cars.com/shopping/results/?stock_type=used&makes[]=toyota&models[]=toyota-camry&zip=60606&maximum_distance=50&list_price_max=25000, SEO search pages such as https://www.cars.com/shopping/toyota-camry-2020/, or single listings (https://www.cars.com/vehicledetail/<id>/). Leave empty to use the Make / Model search below.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "make": {
            "title": "Make",
            "type": "string",
            "description": "Brand as shown on Cars.com, e.g. Toyota, Ford, Chevrolet, Honda, Tesla, Land Rover, Mercedes-Benz. Several makes: separate with commas. The filters below apply to this search only, not to Start URLs. Leave empty for all makes."
          },
          "model": {
            "title": "Model",
            "type": "string",
            "description": "Model as shown on Cars.com, e.g. Camry, RAV4, F-150, CR-V, Model 3. Several models of the same make: separate with commas. Needs one Make."
          },
          "zip": {
            "title": "ZIP code",
            "type": "string",
            "description": "US ZIP code to search around (e.g. 60606, 90001, 10001). Adds the distance in miles to every listing. Leave empty to search the whole US."
          },
          "radiusMiles": {
            "title": "Radius (miles)",
            "minimum": 1,
            "maximum": 9999,
            "type": "integer",
            "description": "Only cars within this many miles of the ZIP code (Cars.com offers 10-1000; 9999 = all). Needs a ZIP code.",
            "default": 50
          },
          "stockType": {
            "title": "New / used",
            "enum": [
              "all",
              "used",
              "new",
              "cpo",
              "new_cpo"
            ],
            "type": "string",
            "description": "New, used, certified pre-owned (CPO) or all listings.",
            "default": "all"
          },
          "priceFrom": {
            "title": "Price from (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum list price in US dollars."
          },
          "priceTo": {
            "title": "Price to (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum list price in US dollars."
          },
          "yearFrom": {
            "title": "Year from",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Earliest model year, e.g. 2018."
          },
          "yearTo": {
            "title": "Year to",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Latest model year."
          },
          "mileageTo": {
            "title": "Max mileage (miles)",
            "minimum": 0,
            "type": "integer",
            "description": "Only cars with at most this many miles."
          },
          "bodyStyles": {
            "title": "Body styles",
            "type": "array",
            "description": "Only these body styles. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "suv",
                "sedan",
                "pickup_truck",
                "coupe",
                "hatchback",
                "convertible",
                "minivan",
                "wagon",
                "cargo_van",
                "passenger_van"
              ],
              "enumTitles": [
                "SUV",
                "Sedan",
                "Pickup truck",
                "Coupe",
                "Hatchback",
                "Convertible",
                "Minivan",
                "Wagon",
                "Cargo van",
                "Passenger van"
              ]
            }
          },
          "fuelTypes": {
            "title": "Fuel types",
            "type": "array",
            "description": "Only these fuel types. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "gasoline",
                "hybrid",
                "electric",
                "plug_in_hybrid",
                "diesel",
                "e85_flex_fuel",
                "compressed_natural_gas",
                "hydrogen_fuel_cell"
              ],
              "enumTitles": [
                "Gasoline",
                "Hybrid",
                "Electric",
                "Plug-in hybrid",
                "Diesel",
                "E85 flex fuel",
                "Compressed natural gas",
                "Hydrogen fuel cell"
              ]
            }
          },
          "drivetrains": {
            "title": "Drivetrains",
            "type": "array",
            "description": "Only these drivetrains. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "all_wheel_drive",
                "four_wheel_drive",
                "front_wheel_drive",
                "rear_wheel_drive"
              ],
              "enumTitles": [
                "All-wheel drive (AWD)",
                "Four-wheel drive (4WD)",
                "Front-wheel drive (FWD)",
                "Rear-wheel drive (RWD)"
              ]
            }
          },
          "transmissions": {
            "title": "Transmissions",
            "type": "array",
            "description": "Only these transmissions. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "automatic",
                "manual",
                "cvt"
              ],
              "enumTitles": [
                "Automatic",
                "Manual",
                "CVT"
              ]
            }
          },
          "sellerType": {
            "title": "Seller type",
            "enum": [
              "",
              "dealer",
              "private"
            ],
            "type": "string",
            "description": "Only dealerships or only private sellers."
          },
          "dealRatings": {
            "title": "Deal ratings",
            "type": "array",
            "description": "Only listings Cars.com rates as a great, good or fair deal. Leave empty for all (including unrated and new cars).",
            "items": {
              "type": "string",
              "enum": [
                "great",
                "good",
                "fair"
              ],
              "enumTitles": [
                "Great deal",
                "Good deal",
                "Fair deal"
              ]
            }
          },
          "keyword": {
            "title": "Keyword",
            "type": "string",
            "description": "Free-text keyword Cars.com matches against the listing, e.g. 'sunroof' or 'tow package'."
          },
          "sort": {
            "title": "Sort",
            "enum": [
              "best_match",
              "newest_listed",
              "price_asc",
              "price_desc",
              "mileage_asc",
              "mileage_desc",
              "year_desc",
              "year_asc",
              "distance",
              "best_deal",
              "oldest_listed"
            ],
            "type": "string",
            "description": "Order of the Make / Model search. 'Newest listed' is best for monitoring new listings. 'Distance' needs a ZIP code (otherwise best match is used).",
            "default": "best_match"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "type": "integer",
            "description": "Stop after this many listings in total (across all searches). Keeps cost predictable. With 'Only new or changed items' on, this is the number of listings checked per run.",
            "default": 100
          },
          "includeDetails": {
            "title": "Include listing details",
            "type": "boolean",
            "description": "Also read each listing's full record: feature list by category (convenience, safety, entertainment, ...), seller's notes, price history, history-report highlights (one owner, no accidents, clean title, personal use, open recall) and all photos. Charged as an extra 'detail' event per listing; fetched in batches of 50, so it adds little run time.",
            "default": false
          },
          "splitLargeSearches": {
            "title": "Split large searches",
            "type": "boolean",
            "description": "Cars.com serves at most 50,000 listings per search (and shows counts only up to 10,000). When a search is larger and Max items asks for more than 50,000, it is walked in price windows automatically so you can get all of them (results then come cheapest first).",
            "default": true
          },
          "onlyNewOrChanged": {
            "title": "Only new or changed items",
            "type": "boolean",
            "description": "Remember what earlier runs of this search returned and output only new items or items whose price/status changed. Use with a Schedule; unchanged items are not charged.",
            "default": false
          },
          "monitoringKey": {
            "title": "Monitoring key",
            "type": "string",
            "description": "Name for this watch, so several schedules on the same search stay separate; defaults to a key derived from the search input"
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Residential US proxy is required: Cars.com blocks datacenter IPs (Cloudflare). Apify bills the proxy traffic to your account at the residential rate. The actor uses Cars.com's compact JSON API: about 0.75 MB per 1,000 listings (about $0.006 at $8/GB), about 2 MB per 1,000 with listing details (about $0.016).",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "US"
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}