{
  "openapi": "3.0.1",
  "info": {
    "title": "AutoScout24 Scraper",
    "description": "Car offers from AutoScout24 in Germany, Austria, Belgium, the Netherlands, Italy, Spain, France and the international site as clean JSON: make, model, price, price rating, year, mileage, fuel, gearbox, power, photos. Dealer or private as a flag; seller identity never collected. Pay per result.",
    "version": "0.1",
    "x-build-id": "n9wP9Qs5asY5awckI"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/lowlanddata~autoscout24-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-lowlanddata-autoscout24-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/lowlanddata~autoscout24-scraper/runs": {
      "post": {
        "operationId": "runs-sync-lowlanddata-autoscout24-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/lowlanddata~autoscout24-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-lowlanddata-autoscout24-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": {
          "vehicleType": {
            "title": "Vehicle type",
            "enum": [
              "car",
              "motorbike",
              "caravan",
              "transporter"
            ],
            "type": "string",
            "description": "Cars (default), motorbikes, caravans and campers, or transporters and vans: each is its own part of the site with the same filters and the same row shape. Motorbike rows carry no body type; caravan rows add berths and seats.",
            "default": "car"
          },
          "make": {
            "title": "Make",
            "type": "string",
            "description": "The car make to search, as AutoScout24 spells it in its address bar: <code>bmw</code>, <code>mercedes-benz</code>, <code>alfa-romeo</code>, <code>volkswagen</code>. Plain spelling works too (\"Mercedes-Benz\", \"Alfa Romeo\"). Leave it out only when you re-check offers through <b>listingIds</b>."
          },
          "model": {
            "title": "Model",
            "type": "string",
            "description": "Optional model inside the make, as the address bar spells it: <code>320</code>, <code>golf</code>, <code>c-200</code>, <code>x5</code>. Leave empty for every model of the make."
          },
          "country": {
            "title": "Country site",
            "enum": [
              "de",
              "at",
              "be",
              "be-fr",
              "nl",
              "it",
              "es",
              "fr",
              "com"
            ],
            "type": "string",
            "description": "Which AutoScout24 site to read. Each lists the offers of its own country, with labels in its language; <b>com</b> is the international site with every country's offers in English.",
            "default": "de"
          },
          "listingIds": {
            "title": "Specific offer IDs",
            "type": "array",
            "description": "Re-check offers you already know instead of searching: one offer ID per line (the long id at the end of every offer address, and the <code>listingId</code> of every dataset item), or the offer's full address. Each one is read from its own page, so it carries the description, the posting time, the site's own <code>status</code> and the full spec sheet. An offer that is gone from the site is skipped, named in the log and not billed. <b>When given, the search fields of this form are ignored</b> and the run status says which; <b>country</b> still picks the site. Up to 50.",
            "items": {
              "type": "string"
            }
          },
          "priceMinEur": {
            "title": "Minimum price (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Only include offers priced at least this many euros."
          },
          "priceMaxEur": {
            "title": "Maximum price (EUR)",
            "minimum": 0,
            "type": "integer",
            "description": "Only include offers priced at most this many euros."
          },
          "yearMin": {
            "title": "First registration from (year)",
            "minimum": 1900,
            "type": "integer",
            "description": "Only include cars first registered in this year or later, e.g. <code>2018</code>."
          },
          "yearMax": {
            "title": "First registration to (year)",
            "minimum": 1900,
            "type": "integer",
            "description": "Only include cars first registered in this year or earlier."
          },
          "mileageMinKm": {
            "title": "Minimum mileage (km)",
            "minimum": 0,
            "type": "integer",
            "description": "Only include cars with at least this many kilometres."
          },
          "mileageMaxKm": {
            "title": "Maximum mileage (km)",
            "minimum": 0,
            "type": "integer",
            "description": "Only include cars with at most this many kilometres, e.g. <code>100000</code>."
          },
          "fuel": {
            "title": "Fuel",
            "enum": [
              "petrol",
              "diesel",
              "electric",
              "hybrid_petrol",
              "hybrid_diesel",
              "lpg",
              "cng",
              "hydrogen",
              "ethanol",
              "other"
            ],
            "type": "string",
            "description": "Only include cars running on this fuel. Leave empty for any."
          },
          "transmission": {
            "title": "Transmission",
            "enum": [
              "automatic",
              "manual",
              "semi_automatic"
            ],
            "type": "string",
            "description": "Only include cars with this gearbox. Leave empty for any."
          },
          "bodyType": {
            "title": "Body type",
            "enum": [
              "small_car",
              "convertible",
              "coupe",
              "suv",
              "estate",
              "saloon",
              "van",
              "transporter",
              "other"
            ],
            "type": "string",
            "description": "Only include this body type. Leave empty for any."
          },
          "sellerType": {
            "title": "Seller type",
            "enum": [
              "any",
              "dealer",
              "private"
            ],
            "type": "string",
            "description": "Dealers only, private sellers only, or both.",
            "default": "any"
          },
          "postcode": {
            "title": "Postcode",
            "type": "string",
            "description": "Centre of a radius search, a postcode of the chosen country site, e.g. <code>10115</code>. Needs <b>radiusKm</b> to have an effect."
          },
          "radiusKm": {
            "title": "Radius (km)",
            "minimum": 1,
            "maximum": 400,
            "type": "integer",
            "description": "Only include offers within this many kilometres of the postcode. The site accepts 10 to 400."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "newest",
              "price_asc",
              "price_desc",
              "mileage_asc",
              "year_desc",
              "relevance"
            ],
            "type": "string",
            "description": "Order of results: newest (best for monitoring), price_asc, price_desc, mileage_asc, year_desc, or relevance (the site's own order).",
            "default": "newest"
          },
          "maxItems": {
            "title": "Max offers",
            "minimum": 1,
            "type": "integer",
            "description": "Stop after this many offers. Free-plan runs are capped at 5 items. The form starts at 25 for a cheap first run - that is the form's prefill, not a cap on your plan; clear it to use the default of 1000. The site serves 4,000 offers per query; above that the run splits the query by price band to reach the rest.",
            "default": 1000
          },
          "scrapeDetails": {
            "title": "Fetch offer pages",
            "type": "boolean",
            "description": "The search row carries the price, the key specs and the photos but no description and no posting time. Turn this on to read each offer's own page for the seller's description, the posting time, the site's own status, the net price and VAT, body, seats, doors, colour, gears, drivetrain, emission class, owners, service history, next inspection and the equipment list. One extra request per offer, so a run is slower. Seller name, phone, street and coordinates are never read.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxy settings. Keep Apify proxy enabled.",
            "default": {
              "useApifyProxy": true
            }
          },
          "reportFailures": {
            "title": "Report failures to the developer",
            "type": "boolean",
            "description": "When a run fails, send the developer the actor name and build, an error category, the error message (truncated) and a one-way hash of your input - so a bug can be fixed without anyone asking you to reproduce it. <b>Your input itself, your results and your identity are never sent, and successful runs send nothing at all.</b> Switch this off and the actor behaves exactly the same.",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}