{
  "openapi": "3.0.1",
  "info": {
    "title": "Historical Car Price Changes & Listings",
    "description": "Get verified before-and-after car listing prices from maintained historical observations. Five results by default, with country, date, source and listing filters; optional raw archive and AI analysis.",
    "version": "2.0",
    "x-build-id": "E9YZwtcBNSaR3mnGg"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/thescrapelab~ultimate-car-listings-scraper-100-sites/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-thescrapelab-ultimate-car-listings-scraper-100-sites",
        "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/thescrapelab~ultimate-car-listings-scraper-100-sites/runs": {
      "post": {
        "operationId": "runs-sync-thescrapelab-ultimate-car-listings-scraper-100-sites",
        "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/thescrapelab~ultimate-car-listings-scraper-100-sites/run-sync": {
      "post": {
        "operationId": "run-sync-thescrapelab-ultimate-car-listings-scraper-100-sites",
        "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": {
          "view": {
            "title": "What history do you want?",
            "enum": [
              "price_changes",
              "observations",
              "archived_listings",
              "current"
            ],
            "type": "string",
            "description": "Start with verified before-and-after prices. Dated observations and archived listings are advanced exports; use the dedicated Current Actor for fresh listings.",
            "default": "price_changes"
          },
          "countries": {
            "title": "Countries (optional)",
            "type": "array",
            "description": "Optional. Choose one or more markets for a country-wide export. Leave blank for the small, fast starter sample.",
            "items": {
              "type": "string",
              "enum": [
                "AR",
                "AT",
                "AU",
                "BE",
                "BH",
                "BR",
                "CA",
                "CH",
                "CI",
                "DK",
                "DE",
                "DO",
                "EC",
                "EG",
                "ES",
                "FI",
                "FR",
                "GB",
                "GH",
                "GT",
                "HN",
                "IN",
                "IE",
                "IT",
                "JP",
                "KE",
                "KW",
                "KZ",
                "LB",
                "LK",
                "MX",
                "NG",
                "NI",
                "NL",
                "NO",
                "NZ",
                "OM",
                "PA",
                "PH",
                "PK",
                "PL",
                "PT",
                "PY",
                "QA",
                "RO",
                "RS",
                "SE",
                "SG",
                "SK",
                "SV",
                "UA",
                "UG",
                "US",
                "UZ",
                "VN",
                "ZA"
              ],
              "enumTitles": [
                "Argentina (AR)",
                "Austria (AT)",
                "Australia (AU)",
                "Belgium (BE)",
                "Bahrain (BH)",
                "Brazil (BR)",
                "Canada (CA)",
                "Switzerland (CH)",
                "Cote d'Ivoire (CI)",
                "Denmark (DK)",
                "Germany (DE)",
                "Dominican Republic (DO)",
                "Ecuador (EC)",
                "Egypt (EG)",
                "Spain (ES)",
                "Finland (FI)",
                "France (FR)",
                "United Kingdom (GB)",
                "Ghana (GH)",
                "Guatemala (GT)",
                "Honduras (HN)",
                "India (IN)",
                "Ireland (IE)",
                "Italy (IT)",
                "Japan (JP)",
                "Kenya (KE)",
                "Kuwait (KW)",
                "Kazakhstan (KZ)",
                "Lebanon (LB)",
                "Sri Lanka (LK)",
                "Mexico (MX)",
                "Nigeria (NG)",
                "Nicaragua (NI)",
                "Netherlands (NL)",
                "Norway (NO)",
                "New Zealand (NZ)",
                "Oman (OM)",
                "Panama (PA)",
                "Philippines (PH)",
                "Pakistan (PK)",
                "Poland (PL)",
                "Portugal (PT)",
                "Paraguay (PY)",
                "Qatar (QA)",
                "Romania (RO)",
                "Serbia (RS)",
                "Sweden (SE)",
                "Singapore (SG)",
                "Slovakia (SK)",
                "El Salvador (SV)",
                "Ukraine (UA)",
                "Uganda (UG)",
                "United States (US)",
                "Uzbekistan (UZ)",
                "Vietnam (VN)",
                "South Africa (ZA)"
              ]
            },
            "default": []
          },
          "brandQuery": {
            "title": "Make or brand (optional)",
            "type": "string",
            "description": "Optional. Use when you want a dedicated brand filter instead of, or in addition to, Vehicle Search.",
            "default": ""
          },
          "modelQuery": {
            "title": "Model (optional)",
            "type": "string",
            "description": "Optional. Use when you want a dedicated model filter. Example: Corolla.",
            "default": ""
          },
          "lookbackDays": {
            "title": "Look back (days)",
            "minimum": 1,
            "maximum": 366,
            "type": "integer",
            "description": "Used when no From date is supplied. Price changes default to the last 90 days.",
            "default": 90
          },
          "observedFrom": {
            "title": "From date (optional)",
            "type": "string",
            "description": "Optional inclusive YYYY-MM-DD. Overrides Look back (days).",
            "default": ""
          },
          "observedTo": {
            "title": "To date (optional)",
            "type": "string",
            "description": "Optional inclusive YYYY-MM-DD. Defaults to today.",
            "default": ""
          },
          "limit": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Number of paid results to deliver, from 1 to 1,000. Start with five.",
            "default": 5
          },
          "estimateOnly": {
            "title": "Preview count without results",
            "type": "boolean",
            "description": "Return a bounded lower-bound preview without delivering paid rows; broad exact counts are unavailable.",
            "default": false
          },
          "requireResults": {
            "title": "Fail if no results (monitoring)",
            "type": "boolean",
            "description": "For scheduled health checks. A normal empty search succeeds; enable this to alert when the dataset is empty.",
            "default": false
          },
          "websites": {
            "title": "Exact Websites",
            "type": "array",
            "description": "Optional source slugs. Leave blank for every covered source.",
            "items": {
              "type": "string",
              "enum": [
                "carscoza",
                "webuycars",
                "autotraderca",
                "cardekho",
                "pakwheels",
                "subitoit",
                "finnno",
                "nettiautofi",
                "marktplaats",
                "bilbasendk",
                "otomotopl",
                "autovitro",
                "standvirtualpt",
                "mercadolibrear",
                "mercadolibremx",
                "autotraderau",
                "picklesau",
                "trademenz",
                "autotradernz",
                "turnersnz",
                "truecarus",
                "carmaxus",
                "carpagesca",
                "autolistus",
                "carscomus",
                "enterprisecarsalesus",
                "craigslistus",
                "classiccarsus",
                "bringatrailerus",
                "ebaymotorsde",
                "ebaymotorsch",
                "autochekafrica",
                "carwalein",
                "carwowuk",
                "carwowde",
                "cinchuk",
                "carsguideau",
                "driveau",
                "gumtreeuk",
                "gumtreeza",
                "autocitygroupza",
                "carshopza",
                "carzoneie",
                "arnoldclarkuk",
                "cmhza",
                "johnhughesau",
                "kiacertifiedza",
                "kleinanzeigende",
                "motusselectza",
                "carfindza",
                "nissanusedcarsza",
                "justcarsau",
                "onlycarsau",
                "kijijica",
                "kijijiautosca",
                "motorsuk",
                "olxbr",
                "olxeg",
                "olxlbauto",
                "olxkzauto",
                "olxpk",
                "olxplauto",
                "olxptauto",
                "pistonheadsuk",
                "ikmanlk",
                "chototvn",
                "chekike",
                "beforwardjp",
                "autoriaua",
                "kolesakz",
                "carfromjapan",
                "goonetjp",
                "sbtjapan",
                "tcvjapan",
                "sgcarmartsg",
                "autotraderza",
                "carandclassicuk",
                "kavakmx",
                "olxuaauto",
                "olxroauto",
                "autochekng",
                "autochekke",
                "autochekgh",
                "autochekug",
                "autochekci",
                "autodealph",
                "carmudiph",
                "jijike",
                "jijigh",
                "jijiug",
                "jijing",
                "autoscout24fr",
                "lacentralefr",
                "blocketse",
                "olxuzauto",
                "mercadolibredo",
                "mercadolibregt",
                "mercadolibrehn",
                "mercadolibreni",
                "mercadolibrepa",
                "mercadolibreec",
                "mercadolibrepy",
                "mercadolibresv",
                "dubizzleom",
                "dubizzlekw",
                "dubizzleqa",
                "dubizzlebh",
                "theaausedcarsuk",
                "autobazareu",
                "autoherode",
                "autoherose",
                "autoheroes",
                "autoheroit",
                "autoherofr",
                "autoheronl",
                "autoheroat",
                "autoheropl",
                "autoherobe",
                "polovniautomobilirs"
              ],
              "enumTitles": [
                "Cars.co.za (ZA)",
                "WeBuyCars (ZA)",
                "AutoTrader Canada (CA)",
                "CarDekho (IN)",
                "PakWheels (PK)",
                "Subito Italy (IT)",
                "FINN (NO)",
                "Nettiauto Finland (FI)",
                "Marktplaats (NL)",
                "Bilbasen Denmark (DK)",
                "OTOMOTO (PL)",
                "Autovit (RO)",
                "Standvirtual (PT)",
                "Mercado Libre Argentina (AR)",
                "Mercado Libre Mexico (MX)",
                "AutoTrader Australia (AU)",
                "Pickles (AU)",
                "Trade Me (NZ)",
                "AutoTrader New Zealand (NZ)",
                "Turners (NZ)",
                "TrueCar (US)",
                "CarMax (US)",
                "Carpages.ca (CA)",
                "Autolist (US)",
                "Cars.com (US)",
                "Enterprise Car Sales (US)",
                "Craigslist (US)",
                "ClassicCars (US)",
                "Bring a Trailer (US)",
                "eBay Motors Germany (DE)",
                "eBay Motors Switzerland (CH)",
                "AutoChek Africa Global (NG feed)",
                "CarWale (IN)",
                "Carwow UK (GB)",
                "Carwow Germany (DE)",
                "cinch UK (GB)",
                "CarsGuide Australia (AU)",
                "Drive (AU)",
                "Gumtree UK (GB)",
                "Gumtree South Africa (ZA)",
                "AutoCity Group (ZA)",
                "Carshop (ZA)",
                "Carzone Ireland (IE)",
                "Arnold Clark (GB)",
                "CMH Used Cars (ZA)",
                "John Hughes Used Cars (AU)",
                "Kia Certified Used Cars (ZA)",
                "Kleinanzeigen Germany (DE)",
                "Motus Select (ZA)",
                "Carfind (ZA)",
                "Nissan Used Cars (ZA)",
                "Just Cars Australia (AU)",
                "OnlyCars Australia (AU)",
                "Kijiji Canada (CA)",
                "Kijiji Canada compatibility (CA)",
                "MOTORS UK (GB)",
                "OLX Brazil (BR)",
                "Dubizzle Egypt Cars (EG)",
                "OLX Lebanon Cars (LB)",
                "OLX Kazakhstan Cars (KZ)",
                "OLX Pakistan (PK)",
                "OLX Poland Cars (PL)",
                "OLX Portugal Cars (PT)",
                "PistonHeads (GB)",
                "ikman.lk (LK)",
                "Chotot Cars (VN)",
                "Cheki Kenya (KE)",
                "Be Forward Japan (JP)",
                "AUTO.RIA Ukraine (UA)",
                "Kolesa Kazakhstan (KZ)",
                "Car From Japan (JP)",
                "Goo-net Japan (JP)",
                "SBT Japan (JP)",
                "TCV Japan (JP)",
                "SGCarMart (SG)",
                "AutoTrader South Africa (ZA)",
                "Car & Classic (GB)",
                "Kavak Mexico (MX)",
                "OLX Ukraine Cars (UA)",
                "OLX Romania Cars (RO)",
                "AutoChek Nigeria (NG)",
                "AutoChek Kenya (KE)",
                "AutoChek Ghana (GH)",
                "AutoChek Uganda (UG)",
                "AutoChek Cote d'Ivoire (CI)",
                "AutoDeal Philippines (PH)",
                "Carmudi Philippines (PH)",
                "Jiji Kenya (KE)",
                "Jiji Ghana (GH)",
                "Jiji Uganda (UG)",
                "Jiji Nigeria (NG)",
                "AutoScout24 France (FR)",
                "La Centrale (FR)",
                "Blocket Cars (SE)",
                "OLX Uzbekistan Cars (UZ)",
                "Mercado Libre Dominican Republic (DO)",
                "Mercado Libre Guatemala (GT)",
                "Mercado Libre Honduras (HN)",
                "Mercado Libre Nicaragua (NI)",
                "Mercado Libre Panama (PA)",
                "Mercado Libre Ecuador (EC)",
                "Mercado Libre Paraguay (PY)",
                "Mercado Libre El Salvador (SV)",
                "Dubizzle Oman Cars (OM)",
                "Dubizzle Kuwait Cars (KW)",
                "Dubizzle Qatar Cars (QA)",
                "Dubizzle Bahrain Cars (BH)",
                "AA Used Cars (GB)",
                "Autobazar.eu (SK)",
                "Autohero Germany (DE)",
                "Autohero Sweden (SE)",
                "Autohero Spain (ES)",
                "Autohero Italy (IT)",
                "Autohero France (FR)",
                "Autohero Netherlands (NL)",
                "Autohero Austria (AT)",
                "Autohero Poland (PL)",
                "Autohero Belgium (BE)",
                "PolovniAutomobili (RS)"
              ]
            },
            "default": []
          },
          "minPrice": {
            "title": "Minimum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Lowest listing price in the listing currency. Leave 0 to ignore.",
            "default": 0
          },
          "maxPrice": {
            "title": "Maximum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Highest listing price in the listing currency. Leave 0 to ignore.",
            "default": 0
          },
          "yearMin": {
            "title": "Minimum Year",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Earliest vehicle year to include. Leave 0 to ignore.",
            "default": 0
          },
          "yearMax": {
            "title": "Maximum Year",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Latest vehicle year to include. Leave 0 to ignore.",
            "default": 0
          },
          "mileageMin": {
            "title": "Minimum Mileage",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Lowest mileage in kilometers. Leave 0 to ignore.",
            "default": 0
          },
          "mileageMax": {
            "title": "Maximum Mileage",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Highest mileage in kilometers. Leave 0 to ignore.",
            "default": 0
          },
          "aiEnrichment": {
            "title": "Add AI analysis ($0.01 per item)",
            "type": "boolean",
            "description": "Optional OpenRouter analysis for delivered results; an additional per-item event is charged only on success.",
            "default": false
          },
          "aiMaxItems": {
            "title": "AI Analyses",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum listings to enrich with AI. Start with five; the maximum is 20.",
            "default": 5
          },
          "continuationToken": {
            "title": "Continue a previous export",
            "type": "string",
            "description": "Paste next_continuation_token from OUTPUT to continue the same filtered export.",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}