{
  "openapi": "3.0.1",
  "info": {
    "title": "GovDeals Vehicle Auction Scraper: VIN, Odometer & Title Status",
    "description": "Extract US government surplus and seized vehicle auction listings from GovDeals.com: cars, trucks, SUVs, pickups, and military vehicles with current bid, VIN, odometer, title status, full photo galleries, and pickup location. No GovDeals account needed. Re-run on a schedule to track new lots.",
    "version": "0.2",
    "x-build-id": "h2mAM5xBzx6qtik4n"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/getascraper~govdeals-vehicle-auction-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-getascraper-govdeals-vehicle-auction-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/getascraper~govdeals-vehicle-auction-scraper/runs": {
      "post": {
        "operationId": "runs-sync-getascraper-govdeals-vehicle-auction-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/getascraper~govdeals-vehicle-auction-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-getascraper-govdeals-vehicle-auction-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": {
          "startUrls": {
            "title": "Custom start URLs (optional)",
            "type": "array",
            "description": "Paste one or more GovDeals.com category or search links directly, built however you like on the site itself. When set, this replaces the category list below.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "categories": {
            "title": "Vehicle categories",
            "type": "array",
            "description": "Which vehicle categories to include. Leave all selected to cover the full vehicle lineup. Ignored when Start URLs is set.",
            "items": {
              "type": "string",
              "enum": [
                "automobiles-cars",
                "suv",
                "pickup-trucks",
                "passenger-vehicles",
                "trucks",
                "military-vehicles",
                "classic-custom-cars"
              ],
              "enumTitles": [
                "Automobiles / Cars",
                "SUVs",
                "Pickup trucks",
                "Passenger vehicles",
                "Trucks (all types)",
                "Military vehicles",
                "Classic & custom cars"
              ]
            },
            "default": [
              "automobiles-cars",
              "suv",
              "pickup-trucks",
              "passenger-vehicles",
              "trucks",
              "military-vehicles",
              "classic-custom-cars"
            ]
          },
          "minCurrentBid": {
            "title": "Minimum current bid (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip lots whose current bid is below this amount."
          },
          "maxCurrentBid": {
            "title": "Maximum current bid (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Skip lots whose current bid is above this amount."
          },
          "states": {
            "title": "Pickup states (optional)",
            "type": "array",
            "description": "Limit results to these two-letter US state codes for the pickup/auction location, e.g. TX, CA, FL. Leave empty for all states.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "fetchFullDetails": {
            "title": "Fetch full lot details",
            "type": "boolean",
            "description": "Open each lot's detail page to collect VIN, odometer, title status, full description, and all photos. Turn off for a faster run that only returns the summary fields visible on the category page (make, model, year, current bid, location).",
            "default": false
          },
          "maxItems": {
            "title": "Max vehicle lots",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Stop the run after this many vehicle lots have been collected.",
            "default": 25
          },
          "monitorScope": {
            "title": "Monitor name",
            "type": "string",
            "description": "Give a short name (letters, numbers, dashes) to track lots across scheduled runs, for example ga-pickups. Later runs with the same name mark each lot as new, bid changed, or unchanged against what it saw last time. No competing GovDeals scraper tracks bid movement this way. Leave empty to turn monitoring off and run a normal one-off scrape.",
            "default": ""
          },
          "monitoringMode": {
            "title": "What to return when monitoring",
            "enum": [
              "all",
              "changesOnly"
            ],
            "type": "string",
            "description": "New and changed only returns just the lots that are new or whose bid moved since the last run. All lots returns every matching lot with its change status. Only applies when a monitor name is set.",
            "default": "all"
          },
          "resetMonitoringState": {
            "title": "Reset saved monitoring state",
            "type": "boolean",
            "description": "Start fresh for this monitor name, so every lot is reported as new again. Does not change any dataset you already collected.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy servers to use for the run. Apify Proxy is recommended if you plan to run this Actor frequently or at higher volume.",
            "default": {
              "useApifyProxy": 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}