{
  "openapi": "3.0.1",
  "info": {
    "title": "Autotrader US – Car Listings, VINs & Dealer Data",
    "description": "Scrape US car listings from Autotrader by make, model, ZIP, price, year, body style, filters, or listing URLs. Returns VIN, price, KBB deal rating, mileage, colors, MPG, drivetrain, dealer name, phone, location, history flags, photos, and 60+ fields.",
    "version": "1.0",
    "x-build-id": "NbWOKb9WQsYVx8ofK"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/abotapi~autotrader-com-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-abotapi-autotrader-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/abotapi~autotrader-com-scraper/runs": {
      "post": {
        "operationId": "runs-sync-abotapi-autotrader-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/abotapi~autotrader-com-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-abotapi-autotrader-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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Search mode",
            "enum": [
              "search",
              "url"
            ],
            "type": "string",
            "description": "Choose 'search' to build a query from filters below, or 'url' to paste Autotrader search or listing links.",
            "default": "search"
          },
          "zip": {
            "title": "ZIP code",
            "type": "string",
            "description": "US ZIP code the search is centred on. Required in search mode."
          },
          "searchRadius": {
            "title": "Search radius (miles)",
            "minimum": 10,
            "maximum": 500,
            "type": "integer",
            "description": "Distance from the ZIP code to search. Use a large value for a wider area.",
            "default": 50
          },
          "make": {
            "title": "Make(s)",
            "type": "array",
            "description": "Vehicle make codes, e.g. HONDA, TOYOTA, FORD. Leave empty for all makes.",
            "items": {
              "type": "string"
            }
          },
          "model": {
            "title": "Model(s)",
            "type": "array",
            "description": "Vehicle model codes, e.g. CIVIC, CAMRY. Leave empty for all models of the selected make(s).",
            "items": {
              "type": "string"
            }
          },
          "minYear": {
            "title": "Minimum year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Oldest model year to include."
          },
          "maxYear": {
            "title": "Maximum year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Newest model year to include."
          },
          "minPrice": {
            "title": "Minimum price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Lowest listing price to include."
          },
          "maxPrice": {
            "title": "Maximum price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Highest listing price to include."
          },
          "maxMileage": {
            "title": "Maximum mileage",
            "minimum": 0,
            "type": "integer",
            "description": "Highest odometer reading to include."
          },
          "condition": {
            "title": "Condition",
            "type": "array",
            "description": "New, Used, Certified, or Third-party certified. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "new",
                "used",
                "certified",
                "third-party-certified"
              ],
              "enumTitles": [
                "New",
                "Used",
                "Manufacturer Certified",
                "Third-Party Certified"
              ]
            }
          },
          "bodyStyle": {
            "title": "Body style",
            "type": "array",
            "description": "Filter by one or more body styles.",
            "items": {
              "type": "string",
              "enum": [
                "sedan",
                "suv",
                "truck",
                "coupe",
                "convertible",
                "hatchback",
                "van",
                "wagon"
              ],
              "enumTitles": [
                "Sedan",
                "SUV / Crossover",
                "Truck",
                "Coupe",
                "Convertible",
                "Hatchback",
                "Van / Minivan",
                "Wagon"
              ]
            }
          },
          "fuelType": {
            "title": "Fuel type",
            "type": "array",
            "description": "Filter by fuel type.",
            "items": {
              "type": "string",
              "enum": [
                "gasoline",
                "hybrid",
                "electric",
                "diesel",
                "plug-in-hybrid",
                "hydrogen"
              ],
              "enumTitles": [
                "Gasoline",
                "Hybrid",
                "Electric",
                "Diesel",
                "Plug-in Hybrid",
                "Hydrogen"
              ]
            }
          },
          "driveType": {
            "title": "Drivetrain",
            "type": "array",
            "description": "Filter by drivetrain.",
            "items": {
              "type": "string",
              "enum": [
                "awd-4wd",
                "fwd",
                "rwd"
              ],
              "enumTitles": [
                "AWD / 4WD",
                "Front Wheel Drive",
                "Rear Wheel Drive"
              ]
            }
          },
          "transmission": {
            "title": "Transmission",
            "type": "array",
            "description": "Filter by transmission.",
            "items": {
              "type": "string",
              "enum": [
                "automatic",
                "manual"
              ],
              "enumTitles": [
                "Automatic",
                "Manual"
              ]
            }
          },
          "exteriorColor": {
            "title": "Exterior color",
            "type": "array",
            "description": "Filter by simplified exterior color, e.g. BLACK, WHITE, RED, BLUE, GRAY.",
            "items": {
              "type": "string"
            }
          },
          "vehicleHistory": {
            "title": "Vehicle history",
            "type": "array",
            "description": "Restrict to vehicles matching history criteria.",
            "items": {
              "type": "string",
              "enum": [
                "clean-title",
                "no-accidents",
                "no-frame-damage",
                "single-owner",
                "free-report"
              ],
              "enumTitles": [
                "Clean Title",
                "No Accidents",
                "No Frame Damage",
                "Single Owner",
                "Free Report"
              ]
            }
          },
          "dealType": {
            "title": "Deal rating",
            "type": "array",
            "description": "Restrict to Good Price or Great Price listings (per the site's price rating).",
            "items": {
              "type": "string",
              "enum": [
                "good-price",
                "great-price"
              ],
              "enumTitles": [
                "Good Price",
                "Great Price"
              ]
            }
          },
          "sellerType": {
            "title": "Seller type",
            "enum": [
              "any",
              "dealer",
              "private"
            ],
            "type": "string",
            "description": "Restrict to dealers or private sellers.",
            "default": "any"
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "relevance",
              "price-asc",
              "price-desc",
              "mileage-asc",
              "year-desc",
              "year-asc",
              "distance-asc",
              "newest"
            ],
            "type": "string",
            "description": "Ordering of the results.",
            "default": "relevance"
          },
          "urls": {
            "title": "Autotrader URLs",
            "type": "array",
            "description": "Paste Autotrader search result pages or individual listing pages. Multiple URLs supported. In URL mode the filter fields above are ignored.",
            "items": {
              "type": "string"
            }
          },
          "fetchDetails": {
            "title": "Fetch full detail per listing",
            "type": "boolean",
            "description": "When on, each listing is enriched with the richer per-vehicle page (full options, extended specs, complete history). Adds an extra request per listing.",
            "default": false
          },
          "maxListings": {
            "title": "Max listings",
            "minimum": 0,
            "type": "integer",
            "description": "The sole soft cap on the run, applied across the whole run (not per page or per search). Default 20. Set 0 for unlimited.",
            "default": 20
          },
          "maxPages": {
            "title": "Max pages per search",
            "minimum": 0,
            "type": "integer",
            "description": "Safety bound on how many result pages to walk per search or URL. 0 (default) means unlimited — the walk stops naturally once a page comes back empty or keeps repeating listings already collected, or sooner once Max listings is reached. Set a number only for an explicit page cap below that natural stop.",
            "default": 0
          },
          "resumeFromRunId": {
            "title": "Resume from a prior run",
            "type": "string",
            "description": "Optional. Paste a previous run ID or dataset ID to continue a large walk-all pull: listings already saved by that run are loaded before scraping starts and skipped, so this run only appends new listings. Leave empty for a normal fresh run."
          },
          "proxy": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Autotrader serves the same US listings to any residential exit (results are driven by the ZIP code, not the visitor's location). Leave the country unset so the actor can work through its own ordered pool of residential exits — it starts with the exits the site currently accepts and falls back to the rest. Requires an Apify Proxy plan that includes the Residential group (Starter or higher).",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          },
          "sessionCookie": {
            "title": "Session cookie (optional, advanced)",
            "type": "string",
            "description": "Optional. Paste a full cookie header from a logged-in browser on autotrader.com (must include a cleared `_abck` plus `bm_sz`/`ak_bmsc`). When supplied, the run replays it over fast HTTP and skips the browser entirely — far cheaper and more reliable. The cookie is short-lived (~15–30 min); refresh it before each run. Leave blank to use the default browser mode."
          },
          "mcpConnectors": {
            "title": "Pipe results into your apps (optional)",
            "type": "array",
            "description": "Optionally send results into the apps you already use, via Model Context Protocol (MCP) connectors. Authorize one under Apify, Settings, API & Integrations, then select it here. Notion gets a rich page-per-item export; other connectors get a best-effort write. Leave empty to skip; never changes the dataset output. Supported: Notion, Linear, Airtable, Apify."
          },
          "notionParentPageUrl": {
            "title": "Notion parent page (Notion connector only)",
            "type": "string",
            "description": "URL or id of the Notion page under which item pages are created. Required to enable the Notion export; ignored by other connectors."
          },
          "maxNotifyListings": {
            "title": "Max items to export per connector",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Cap on items written to each connector per run. Does not affect the dataset.",
            "default": 50
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}