{
  "openapi": "3.0.1",
  "info": {
    "title": "AutoTrader Canada Scraper - Car Prices, Mileage, Dealers & VIN",
    "description": "Scrape AutoTrader.ca car listings across Canada: CAD asking price, year, make, model, trim, mileage, dealer or private seller, city, province and photos, one row per car. Optional vehicle details add VIN where shown, colour, drivetrain and history link. For dealers, valuation and import research.",
    "version": "0.1",
    "x-build-id": "wRQlpMbst65zAhoQk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/s-r~autotrader-ca-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-s-r-autotrader-ca-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/s-r~autotrader-ca-scraper/runs": {
      "post": {
        "operationId": "runs-sync-s-r-autotrader-ca-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/s-r~autotrader-ca-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-s-r-autotrader-ca-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": {
          "url": {
            "title": "Url",
            "type": "string",
            "description": "AutoTrader.ca search URL. Overrides make, model, location and search filters; only page is changed."
          },
          "make": {
            "title": "Make",
            "type": "string",
            "description": "Vehicle manufacturer name or slug, such as Toyota or Mercedes-Benz."
          },
          "model": {
            "title": "Model",
            "type": "string",
            "description": "Vehicle model name or slug. Requires make when url is absent."
          },
          "city": {
            "title": "City",
            "type": "string",
            "description": "City name. Combined with province when present."
          },
          "postal_code": {
            "title": "Postal code",
            "type": "string",
            "description": "Canadian postal code. Overrides city."
          },
          "cursor": {
            "title": "Cursor",
            "type": "string",
            "description": "Opaque continuation token. Keep the same search and include_details settings."
          },
          "province": {
            "title": "Province",
            "enum": [
              "AB",
              "BC",
              "MB",
              "NB",
              "NL",
              "NS",
              "NT",
              "NU",
              "ON",
              "PE",
              "QC",
              "SK",
              "YT"
            ],
            "type": "string",
            "description": "Canadian province or territory code."
          },
          "radius_km": {
            "title": "Radius km",
            "minimum": 10,
            "maximum": 400,
            "type": "integer",
            "description": "Search radius in km; requires city or postal_code. Allowed values: 10, 20, 50, 100, 150, 200, 250, 300, 400."
          },
          "price_min": {
            "title": "Price min",
            "minimum": 0,
            "maximum": 9007199254740991,
            "type": "integer",
            "description": "Price in CAD."
          },
          "price_max": {
            "title": "Price max",
            "minimum": 0,
            "maximum": 9007199254740991,
            "type": "integer",
            "description": "Price in CAD."
          },
          "mileage_min": {
            "title": "Mileage min",
            "minimum": 0,
            "maximum": 9007199254740991,
            "type": "integer",
            "description": "Odometer reading in kilometres."
          },
          "mileage_max": {
            "title": "Mileage max",
            "minimum": 0,
            "maximum": 9007199254740991,
            "type": "integer",
            "description": "Odometer reading in kilometres."
          },
          "year_min": {
            "title": "Year min",
            "minimum": 1900,
            "maximum": 2027,
            "type": "integer",
            "description": "Vehicle model year, not first registration."
          },
          "year_max": {
            "title": "Year max",
            "minimum": 1900,
            "maximum": 2027,
            "type": "integer",
            "description": "Vehicle model year, not first registration."
          },
          "condition": {
            "title": "Condition",
            "enum": [
              "all",
              "new",
              "used"
            ],
            "type": "string",
            "description": "Vehicle condition filter.",
            "default": "all"
          },
          "seller_type": {
            "title": "Seller type",
            "enum": [
              "all",
              "dealer",
              "private"
            ],
            "type": "string",
            "description": "Seller category filter.",
            "default": "all"
          },
          "sort": {
            "title": "Sort",
            "enum": [
              "relevance",
              "price_asc",
              "price_desc",
              "year_desc",
              "year_asc",
              "mileage_asc",
              "newest"
            ],
            "type": "string",
            "description": "Result ordering.",
            "default": "relevance"
          },
          "include_details": {
            "title": "Include details",
            "type": "boolean",
            "description": "Fetch public vehicle details. VIN is returned only when published; often null even after success.",
            "default": false
          },
          "limit": {
            "title": "Limit",
            "minimum": 1,
            "maximum": 4000,
            "type": "integer",
            "description": "Total unique listings requested across cursor calls. The site caps each search at 200 pages (up to 4,000 cars).",
            "default": 100
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}