{
  "openapi": "3.0.1",
  "info": {
    "title": "GovPlanet Scraper - Government Surplus & Military Auction Data",
    "description": "Scrape GovPlanet government surplus and military auctions: item, price, meter, location, auction close time, decoded serial number, full inspection report, NSN and demilitarization codes, buyer fees and pickup terms.",
    "version": "0.1",
    "x-build-id": "uxUlgVMdw9MLZfb4u"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/parseforge~govplanet-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-parseforge-govplanet-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/parseforge~govplanet-scraper/runs": {
      "post": {
        "operationId": "runs-sync-parseforge-govplanet-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/parseforge~govplanet-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-parseforge-govplanet-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": {
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Keywords to search GovPlanet with, one search per term. Example: humvee, generator, forklift.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Paste any GovPlanet URL: a search, a category page such as https://www.govplanet.com/Dump+Trucks, or a single item page. Item URLs go straight to the detail pass.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "itemIds": {
            "title": "Item numbers",
            "type": "array",
            "description": "GovPlanet item numbers to scrape directly, e.g. 15733324. Skips search entirely.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "auctionEventIds": {
            "title": "Auction event IDs",
            "type": "array",
            "description": "Sale group IDs of specific auctions. Every lot in the auction is returned. Get the IDs by turning on the auction calendar below.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "includeAuctionCalendar": {
            "title": "Include the auction calendar",
            "type": "boolean",
            "description": "Also write one row per upcoming auction (name, date, start time, format, marketplace, lot count and its event ID).",
            "default": false
          },
          "marketplaces": {
            "title": "Marketplaces",
            "type": "array",
            "description": "GovPlanet.com lists the whole Ritchie Bros. online network. Pick GovPlanet for government and military surplus only.",
            "items": {
              "type": "string",
              "enum": [
                "G",
                "I",
                "M",
                "S",
                "T"
              ],
              "enumTitles": [
                "GovPlanet (government surplus)",
                "IronPlanet",
                "Marketplace-E",
                "SalvageSale",
                "TruckPlanet"
              ]
            },
            "default": []
          },
          "buyingFormats": {
            "title": "Buying format",
            "type": "array",
            "description": "How the item sells.",
            "items": {
              "type": "string",
              "enum": [
                "D",
                "A",
                "S",
                "B",
                "M"
              ],
              "enumTitles": [
                "Auction (any)",
                "Online Auction",
                "Sealed Auction",
                "Buy Now",
                "Make Offer"
              ]
            },
            "default": []
          },
          "categoryIds": {
            "title": "Category IDs",
            "type": "array",
            "description": "GovPlanet category IDs, taken from the `c=` parameter of a category page. Examples: 1000 Automobiles, 2274 Dump Trucks, 3 Excavators, 4770 Forklifts, 13 Generators.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "typeIds": {
            "title": "Type IDs",
            "type": "array",
            "description": "Leaf type IDs, from the `t=` parameter in the Type facet. Narrower than a category, e.g. 3856 = T/A Dump Truck.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "makes": {
            "title": "Makes",
            "type": "array",
            "description": "Manufacturer as GovPlanet spells it: Cat, Ford, Oshkosh, AM General, Kenworth, Genie.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "models": {
            "title": "Models",
            "type": "array",
            "description": "Model as GovPlanet spells it, e.g. F-450, T800, M1097R1.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "GovPlanet location codes: USA, USA-TX, USA-CA, CAN, CAN-ON, EUR, EUR-ITA, AUS, MEX, NZL.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "yearBuckets": {
            "title": "Year bands",
            "type": "array",
            "description": "GovPlanet's own year bands. For an exact range use minYear and maxYear instead.",
            "items": {
              "type": "string",
              "enum": [
                "2020",
                "2015",
                "2010",
                "2000",
                "1900"
              ],
              "enumTitles": [
                "2020 - 2024",
                "2015 - 2019",
                "2010 - 2014",
                "2000 - 2009",
                "Before 2000"
              ]
            },
            "default": []
          },
          "priceBands": {
            "title": "Price bands",
            "type": "array",
            "description": "GovPlanet's price facet, written as currency=floor. Examples: p_us=10000 for $10,000-$49,999, p_us=-1 for anything priced in USD, p_can=50000, p_eu=100000, p_gbp=-1.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "ironCladAssurance": {
            "title": "IronClad Assurance",
            "enum": [
              "any",
              "Y",
              "N"
            ],
            "type": "string",
            "description": "IronClad Assurance means the item carries a guaranteed inspection report.",
            "default": "any"
          },
          "truckCategory": {
            "title": "Truck duty class",
            "enum": [
              "",
              "1",
              "2",
              "3"
            ],
            "type": "string",
            "description": "GovPlanet's duty class facet, available on truck categories only.",
            "default": ""
          },
          "sort": {
            "title": "Sort order",
            "enum": [
              "bm asc",
              "p asc",
              "p desc",
              "ad asc",
              "ad desc",
              "yr desc"
            ],
            "type": "string",
            "description": "How GovPlanet orders the results before pagination. \"Ending sooner\" is the one to use when you care about auctions about to close.",
            "default": "bm asc"
          },
          "minYear": {
            "title": "Minimum year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Exact bound on the model year parsed from the listing. Items with no year are dropped when this is set."
          },
          "maxYear": {
            "title": "Maximum year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Upper bound on the model year parsed from the listing."
          },
          "minPrice": {
            "title": "Minimum price",
            "minimum": 0,
            "type": "integer",
            "description": "In the item's own currency, which is reported in priceCurrency."
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 0,
            "type": "integer",
            "description": "Upper bound, in the item's own currency."
          },
          "minMeter": {
            "title": "Minimum meter reading",
            "minimum": 0,
            "type": "integer",
            "description": "Miles, kilometres or hours, whichever the item reports in meterUnit."
          },
          "maxMeter": {
            "title": "Maximum meter reading",
            "minimum": 0,
            "type": "integer",
            "description": "Upper bound on miles, kilometres or hours."
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Keep only items whose parsed location country matches, e.g. United States, Canada.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "states": {
            "title": "States or provinces",
            "type": "array",
            "description": "Keep only items in these states or provinces, e.g. Texas, California, Ontario.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "titleIncludes": {
            "title": "Must contain",
            "type": "array",
            "description": "Keep an item only if its title, features or seller notes contain one of these words.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "titleExcludes": {
            "title": "Must not contain",
            "type": "array",
            "description": "Drop an item if its title, features or seller notes contain any of these words.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "onlyWithPhotos": {
            "title": "Only items with photos",
            "type": "boolean",
            "description": "Drop lots that have no photo on the listing.",
            "default": false
          },
          "onlyWithBids": {
            "title": "Only items open to bidding",
            "type": "boolean",
            "description": "Drops Buy Now and Make Offer listings that take no bids.",
            "default": false
          },
          "onlyWithInspection": {
            "title": "Only items with IronClad Assurance",
            "type": "boolean",
            "description": "Keep only lots covered by a guaranteed IronPlanet inspection report.",
            "default": false
          },
          "minInspectionRating": {
            "title": "Minimum inspection rating",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "Keep only lots whose average component rating is at least this many stars, 1 to 5. Reads the inspection block; you do not have to buy it to filter on it."
          },
          "demilCodeIs": {
            "title": "Demilitarization codes",
            "type": "array",
            "description": "Keep only lots carrying one of these DoD demil codes, e.g. A, B, Q. Reads the manifest block.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "onlyWithManifest": {
            "title": "Only lots with a government manifest",
            "type": "boolean",
            "description": "Drops network lots that carry no NSN or demil code. Reads the manifest block.",
            "default": false
          },
          "onlyWithSerialNumber": {
            "title": "Only lots with a readable serial number",
            "type": "boolean",
            "description": "Drops lots whose serial GovPlanet does not publish. Reads the serial block.",
            "default": false
          },
          "maxTransactionFeePercent": {
            "title": "Maximum transaction fee %",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Keep only lots whose buyer transaction fee is at or below this percentage. Reads the fees block."
          },
          "closingBefore": {
            "title": "Closing before",
            "type": "string",
            "description": "ISO date or datetime, e.g. 2026-09-01. Keep only lots whose auction closes before it. Reads the item profile block."
          },
          "closingAfter": {
            "title": "Closing after",
            "type": "string",
            "description": "ISO date or datetime. Keep only lots whose auction closes after it. Reads the item profile block."
          },
          "includeItemProfile": {
            "title": "Item profile (+13 columns)",
            "type": "boolean",
            "description": "Adds priceLabel, bidIncrement, availability, manufacturerPartNumber, locationCity, locationPostalCode, auctionOpensAt, auctionEndsAt, saleGroupId, itemCondition, watchers, photoCount and noticesAndRestrictions. Bills item-profile per row that returns one.",
            "default": false
          },
          "includeInspectionReport": {
            "title": "Inspection report (+5 columns)",
            "type": "boolean",
            "description": "Every component the IronPlanet inspector rated, with star rating, comment and whether a photo backs it. Bills inspection-report per row that returns one.",
            "default": false
          },
          "includeManifest": {
            "title": "Government manifest (+3 columns)",
            "type": "boolean",
            "description": "GovPlanet lots only: national stock number (NSN / LSN), DoD demilitarization code, DTID and quantity. Bills manifest-record per row that returns one.",
            "default": false
          },
          "includeSerialNumber": {
            "title": "Serial number / VIN (+1 column)",
            "type": "boolean",
            "description": "GovPlanet hides the serial behind an obfuscated script; this decodes it back to plain text. Bills serial-decode per serial actually recovered.",
            "default": false
          },
          "includePhotoGallery": {
            "title": "Full photo gallery (+1 column)",
            "type": "boolean",
            "description": "Every inspection photo with its caption, component category, thumbnail and high-resolution URL, often 50 to 150 per lot. Bills media-gallery per row that returns one.",
            "default": false
          },
          "includeTermsAndLogistics": {
            "title": "Fees, taxes and pickup terms (+8 columns)",
            "type": "boolean",
            "description": "Buyer fee schedule, transaction fee percentage, sales tax jurisdiction, payment window, pickup terms and crated shipping dimensions. Bills logistics-terms per row that returns one.",
            "default": false
          },
          "maxItems": {
            "title": "Maximum items",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "How many items to write. GovPlanet lists about 25,000 at a time.",
            "default": 100
          },
          "maxPagesPerSearch": {
            "title": "Maximum pages per search",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Result pages to read per search before moving to the next one.",
            "default": 50
          },
          "resultsPerPage": {
            "title": "Results per page",
            "minimum": 20,
            "maximum": 100,
            "type": "integer",
            "description": "GovPlanet accepts 20, 60 or 100. Leave at 100 for the fewest requests.",
            "default": 100
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Datacenter proxy is enough — GovPlanet needs no browser and no residential IP.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "BUYPROXIES94952"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}