{
  "openapi": "3.0.1",
  "info": {
    "title": "Row52 Junkyard & Salvage Yard Parts Scraper",
    "description": "Find which self-service junkyard (Pick-n-Pull) has a matching donor vehicle in stock. Search by year/make/model plus ZIP + radius, look up an exact VIN, browse a specific yard's newest arrivals, or list every yard location across the US and Canada.",
    "version": "1.0",
    "x-build-id": "Iccz9HWgF0Z18ieDG"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~row52-junkyard-parts-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-row52-junkyard-parts-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/crawlerbros~row52-junkyard-parts-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-row52-junkyard-parts-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/crawlerbros~row52-junkyard-parts-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-row52-junkyard-parts-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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "byVin",
              "byYard",
              "listYards"
            ],
            "type": "string",
            "description": "What to fetch.",
            "default": "search"
          },
          "year": {
            "title": "Vehicle year (mode=search, byYard)",
            "minimum": 1950,
            "maximum": 2027,
            "type": "integer",
            "description": "Exact model year to match, e.g. 2015. Takes priority over Year from/Year to if both are set. Leave blank to use a year range instead, or leave all three blank to match any year."
          },
          "yearMin": {
            "title": "Year from (mode=search, byYard)",
            "minimum": 1950,
            "maximum": 2027,
            "type": "integer",
            "description": "Lower bound of a model-year range (inclusive), e.g. 2010. Ignored if 'Vehicle year' (exact) is set. Leave blank for no lower bound."
          },
          "yearMax": {
            "title": "Year to (mode=search, byYard)",
            "minimum": 1950,
            "maximum": 2027,
            "type": "integer",
            "description": "Upper bound of a model-year range (inclusive), e.g. 2018. Ignored if 'Vehicle year' (exact) is set. Leave blank for no upper bound."
          },
          "make": {
            "title": "Make (mode=search, byYard)",
            "enum": [
              "Acura",
              "Alfa Romeo",
              "AMC",
              "Asuna",
              "Audi",
              "Bertone",
              "BMW",
              "Buick",
              "Cadillac",
              "Chevrolet",
              "Chrysler",
              "Daewoo",
              "Daihatsu",
              "Datsun",
              "Dodge",
              "Eagle",
              "Fiat",
              "Ford",
              "Geo",
              "GMC",
              "Honda",
              "Hummer",
              "Hyundai",
              "Infiniti",
              "International",
              "Isuzu",
              "Jaguar",
              "Jeep",
              "Kia",
              "Lancia",
              "Land Rover",
              "Lexus",
              "Lincoln",
              "Maserati",
              "Mazda",
              "Mercedes-Benz",
              "Mercury",
              "Merkur",
              "MG",
              "Mini",
              "Mitsubishi",
              "Nash",
              "Nissan",
              "Oldsmobile",
              "Opel",
              "Peugeot",
              "Plymouth",
              "Pontiac",
              "Porsche",
              "Ram",
              "Rambler",
              "Renault",
              "Saab",
              "Saturn",
              "Scion",
              "Smart",
              "Sterling",
              "Studebaker",
              "Subaru",
              "Suzuki",
              "Toyota",
              "Triumph",
              "Volkswagen",
              "Volvo",
              "Willys",
              "Yugo"
            ],
            "type": "string",
            "description": "Vehicle manufacturer. Leave blank to match any make."
          },
          "model": {
            "title": "Model contains (mode=search, byYard)",
            "type": "string",
            "description": "Free-text, case-insensitive match against the model name, e.g. `Civic` or `Silverado`. Leave blank to match any model."
          },
          "zipCode": {
            "title": "ZIP / postal code (mode=search, listYards)",
            "type": "string",
            "description": "US 5-digit ZIP or Canadian postal code (e.g. `90210` or `T2B 1N2`). Used with Radius to find nearby yards. Leave blank to search all yards nationwide."
          },
          "radius": {
            "title": "Radius in miles (mode=search, listYards)",
            "enum": [
              "10",
              "25",
              "50",
              "100",
              "250",
              "500"
            ],
            "type": "string",
            "description": "Only used when ZIP / postal code is set. These are the exact radius options Row52's own search form offers.",
            "default": "50"
          },
          "vin": {
            "title": "VIN (mode=byVin)",
            "type": "string",
            "description": "Full 17-character Vehicle Identification Number to look up."
          },
          "yardId": {
            "title": "Yard ID (mode=byYard)",
            "minimum": 1,
            "maximum": 999999,
            "type": "integer",
            "description": "Numeric Row52 location ID. Use `listYards` mode first to find IDs, or use Yard name instead."
          },
          "yardName": {
            "title": "Yard name contains (mode=byYard)",
            "type": "string",
            "description": "Free-text, case-insensitive match against the yard name or city, e.g. `Sacramento` or `Antelope`."
          },
          "state": {
            "title": "State / province (mode=listYards)",
            "enum": [
              "Arizona",
              "Arkansas",
              "California",
              "Florida",
              "Georgia",
              "Illinois",
              "Indiana",
              "Kansas",
              "Massachusetts",
              "Missouri",
              "Nevada",
              "Ohio",
              "Oregon",
              "Rhode Island",
              "Texas",
              "Utah",
              "Virginia",
              "Washington",
              "Alberta",
              "British Columbia"
            ],
            "type": "string",
            "description": "Restrict the yard directory to one US state or Canadian province. Leave blank to list every yard."
          },
          "sortBy": {
            "title": "Sort by (mode=search, byYard)",
            "enum": [
              "dateAdded",
              "year",
              "make",
              "model",
              "yard"
            ],
            "type": "string",
            "description": "Field to sort matching vehicles by.",
            "default": "dateAdded"
          },
          "sortOrder": {
            "title": "Sort order",
            "enum": [
              "asc",
              "desc"
            ],
            "type": "string",
            "description": "Ascending or descending.",
            "default": "desc"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Hard cap on emitted records.",
            "default": 30
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}