{
  "openapi": "3.0.1",
  "info": {
    "title": "PCARMARKET Scraper",
    "description": "PCARMARKET auction results and live lots for dealers, appraisers and collectors: 19,000+ Porsches, collector cars, parts and watches with sold price, every bid, VIN, mileage, condition report, Carfax and photos. Filter by make, model, year, mileage, price.",
    "version": "1.0",
    "x-build-id": "ppXrDa7rtI8uuJT4J"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/normdata~pcarmarket-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-normdata-pcarmarket-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/normdata~pcarmarket-scraper/runs": {
      "post": {
        "operationId": "runs-sync-normdata-pcarmarket-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/normdata~pcarmarket-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-normdata-pcarmarket-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": {
          "maxItems": {
            "title": "Maximum lots",
            "minimum": 1,
            "type": "integer",
            "description": "Stop after this many lots in total. Leave empty for no limit (every matching lot). The Apify Free plan is always capped at 10."
          },
          "status": {
            "title": "What to scrape",
            "enum": [
              "results",
              "sold",
              "unsold",
              "for_sale",
              "live",
              "all"
            ],
            "type": "string",
            "description": "Results are every ended PCARMARKET auction (19,000+ lots, 11,103 sold) with the final price or the high bid. For sale now are lots still open to offers or buy now after their auction. Live and upcoming are the auctions running now."
          },
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Words to search lots for, as on pcarmarket.com, e.g. \"GT3 RS\", \"Speedster\", \"Fuchs wheels\", \"Rolex\". Several terms: a lot matching ANY of them is kept.",
            "items": {
              "type": "string"
            }
          },
          "urls": {
            "title": "...or paste pcarmarket.com links",
            "type": "array",
            "description": "Lot pages: pcarmarket.com/auction/..., /results/... or /marketplace/.... The filters are ignored with links.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "categories": {
            "title": "Category",
            "type": "array",
            "description": "Keep only these kinds of lots. PCARMARKET sells cars, but also parts, wheels, signs, art and other memorabilia, and watches.",
            "items": {
              "type": "string",
              "enum": [
                "vehicles",
                "memorabilia",
                "watches"
              ],
              "enumTitles": [
                "Vehicles",
                "Parts & memorabilia",
                "Watches"
              ]
            }
          },
          "makes": {
            "title": "Make",
            "type": "array",
            "description": "Keep only these makes. Most lots: Porsche (7,551), BMW (779), Mercedes-Benz (774), Ferrari (329), Chevrolet (318), Ford (289), Land Rover (180), Volkswagen (166), Audi (160), Toyota (117), Aston Martin (113), Lamborghini (95). Case doesn't matter; a make PCARMARKET never had shows a warning in the log. Vehicle filters (make, model, year, mileage, transmission, title, Carfax) leave out memorabilia and watches.",
            "items": {
              "type": "string"
            }
          },
          "models": {
            "title": "Model",
            "type": "array",
            "description": "Keep only these models, e.g. \"911\", \"Cayman\", \"M3\", \"Testarossa\". Every word must start a word of the model, so \"911\" finds \"911 Carrera 4S\" but not \"9110\".",
            "items": {
              "type": "string"
            }
          },
          "yearFrom": {
            "title": "Model year from",
            "minimum": 0,
            "type": "integer",
            "description": "Keep vehicles from this model year on, e.g. 1989."
          },
          "yearTo": {
            "title": "Model year to",
            "minimum": 0,
            "type": "integer",
            "description": "Keep vehicles up to this model year, e.g. 1998."
          },
          "transmissions": {
            "title": "Transmission",
            "type": "array",
            "description": "Manual, or automatic (PDK, Tiptronic, SMG, DCT and other automatics).",
            "items": {
              "type": "string",
              "enum": [
                "manual",
                "automatic"
              ],
              "enumTitles": [
                "Manual",
                "Automatic"
              ]
            }
          },
          "maxMileage": {
            "title": "Max mileage (miles)",
            "minimum": 0,
            "type": "integer",
            "description": "Keep vehicles with at most this many miles on the odometer (kilometers are converted). Vehicles with no mileage listed are left out."
          },
          "cleanTitleOnly": {
            "title": "Clean title only",
            "type": "boolean",
            "description": "Keep only vehicles whose title status is clean."
          },
          "cleanCarfaxOnly": {
            "title": "Clean Carfax only",
            "type": "boolean",
            "description": "Keep only vehicles whose Carfax report is clean."
          },
          "sellerTypes": {
            "title": "Seller type",
            "type": "array",
            "description": "Dealer or private party.",
            "items": {
              "type": "string",
              "enum": [
                "dealer",
                "private"
              ],
              "enumTitles": [
                "Dealer",
                "Private party"
              ]
            }
          },
          "countries": {
            "title": "Country",
            "type": "array",
            "description": "Keep lots located in these countries, e.g. \"United States\", \"Canada\", \"Germany\".",
            "items": {
              "type": "string"
            }
          },
          "noReserveOnly": {
            "title": "No reserve only",
            "type": "boolean",
            "description": "Keep only lots offered without reserve (sold to the highest bidder whatever the price)."
          },
          "minBids": {
            "title": "Min bids",
            "minimum": 0,
            "type": "integer",
            "description": "Keep lots with at least this many bids, e.g. 30 for the most contested auctions."
          },
          "dateFrom": {
            "title": "Auction ended from",
            "type": "string",
            "description": "Keep auctions that ended on or after this day. A date like \"2024-01-01\", or a period like \"6 months\" or \"2 years\"."
          },
          "dateTo": {
            "title": "Auction ended to",
            "type": "string",
            "description": "Same format as \"Auction ended from\", e.g. \"2024-12-31\"."
          },
          "minPrice": {
            "title": "Min price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Price (or high bid) at least this."
          },
          "maxPrice": {
            "title": "Max price (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Price (or high bid) at most this."
          },
          "titleExcludes": {
            "title": "Must not contain",
            "type": "array",
            "description": "Drop lots whose title, make, model or trim contain any of these words, e.g. \"replica\", \"wheels\", \"sign\", \"project\".",
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "newest",
              "oldest",
              "ending_soon",
              "most_bids",
              "bid_high",
              "bid_low"
            ],
            "type": "string",
            "description": "Order of the results. Matters most when you set a Maximum."
          },
          "onlyNew": {
            "title": "New lots only",
            "type": "boolean",
            "description": "For scheduled runs: save only lots this same search has not saved before. The first run saves everything; later runs save just what is new. Kept per search (terms, links and filters)."
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Optional. Give \"New lots only\" a fixed name to keep its memory even after you change the filters."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}