{
  "openapi": "3.0.1",
  "info": {
    "title": "Webmotors Scraper - Brazil Car Listings, Prices & FIPE",
    "description": "Every car on a Webmotors search as one row: make, model, version, year built and model year, price and where it sits against the FIPE table, mileage, gearbox, fuel, colour, body, features, dealer or private seller, town, photos and a link. Filter by state, price, year, mileage, gearbox and more.",
    "version": "0.1",
    "x-build-id": "scjwrqEXKpprCnq2b"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/dami_studio~webmotors-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-dami_studio-webmotors-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/dami_studio~webmotors-scraper/runs": {
      "post": {
        "operationId": "runs-sync-dami_studio-webmotors-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/dami_studio~webmotors-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-dami_studio-webmotors-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": {
          "make": {
            "title": "Make",
            "type": "string",
            "description": "The make as Webmotors spells it: Fiat, Volkswagen, Chevrolet, Mercedes-Benz, Caoa Chery. A make the site doesn't know returns nothing and charges nothing. Leave it empty if you only use search links below."
          },
          "model": {
            "title": "Model",
            "type": "string",
            "description": "Optional, and it needs a make above. The model as the site names it: Argo, Onix, Corolla, Compass. A model the site doesn't know returns nothing and charges nothing."
          },
          "maxItems": {
            "title": "Maximum listings",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "The most listings returned in one run, across every search. Each one returned is charged once. Repeats are skipped and cost nothing. Webmotors lets a single search reach 10,000 listings; past that, narrow it by price, year or state."
          },
          "sort": {
            "title": "Order",
            "enum": [
              "relevance",
              "year-desc",
              "mileage-asc",
              "price-asc",
              "price-desc"
            ],
            "type": "string",
            "description": "The order listings are read in. With a limit below the number of listings, this decides which ones you get."
          },
          "searchUrls": {
            "title": "Search links",
            "maxItems": 10,
            "type": "array",
            "description": "Or paste up to 10 results pages from webmotors.com.br, with the filters you picked there. One car's page is not a search and is skipped. The fields on this form don't apply to a pasted link.",
            "items": {
              "type": "string"
            }
          },
          "state": {
            "title": "State",
            "enum": [
              "Acre (AC)",
              "Alagoas (AL)",
              "Amapá (AP)",
              "Amazonas (AM)",
              "Bahia (BA)",
              "Ceará (CE)",
              "Distrito Federal (DF)",
              "Espírito Santo (ES)",
              "Goiás (GO)",
              "Maranhão (MA)",
              "Mato Grosso (MT)",
              "Mato Grosso do Sul (MS)",
              "Minas Gerais (MG)",
              "Pará (PA)",
              "Paraíba (PB)",
              "Paraná (PR)",
              "Pernambuco (PE)",
              "Piauí (PI)",
              "Rio de Janeiro (RJ)",
              "Rio Grande do Norte (RN)",
              "Rio Grande do Sul (RS)",
              "Rondônia (RO)",
              "Roraima (RR)",
              "Santa Catarina (SC)",
              "São Paulo (SP)",
              "Sergipe (SE)",
              "Tocantins (TO)"
            ],
            "type": "string",
            "description": "Only cars sold in this state. Leave it empty for the whole country. There is no city filter on the search this actor uses, but every row carries the town, so you can narrow it afterwards."
          },
          "priceFrom": {
            "title": "Price from (R$)",
            "minimum": 0,
            "maximum": 100000000,
            "type": "integer",
            "description": "Lowest asking price, in reais."
          },
          "priceTo": {
            "title": "Price to (R$)",
            "minimum": 0,
            "maximum": 100000000,
            "type": "integer",
            "description": "Highest asking price, in reais."
          },
          "yearFrom": {
            "title": "Model year from",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Earliest model year. Brazilian listings carry two years, the year built and the model year; this is the model year."
          },
          "yearTo": {
            "title": "Model year to",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Latest model year."
          },
          "mileageFrom": {
            "title": "Mileage from (km)",
            "minimum": 0,
            "maximum": 2000000,
            "type": "integer",
            "description": "Lowest mileage, in kilometres."
          },
          "mileageTo": {
            "title": "Mileage up to (km)",
            "minimum": 0,
            "maximum": 2000000,
            "type": "integer",
            "description": "Highest mileage, in kilometres. Set it to 0 to get only brand-new cars."
          },
          "fuel": {
            "title": "Fuel",
            "enum": [
              "Gasolina e álcool",
              "Gasolina",
              "Diesel",
              "Gasolina e elétrico",
              "Elétrico",
              "Álcool",
              "Gasolina, álcool e gás natural",
              "Gás natural",
              "Álcool e gás natural",
              "Gasolina e gás natural",
              "Gasolina, álcool, gás natural e benzina"
            ],
            "type": "string",
            "description": "Flex cars are \"Gasolina e álcool\". Set this and every row comes back tagged with it; leave it empty and the fuel is read out of the version text instead, which names it on about 8 of every 10 listings."
          },
          "transmission": {
            "title": "Gearbox",
            "enum": [
              "Automática",
              "Manual",
              "CVT",
              "Semi-automática",
              "Automatizada",
              "Automatizada DCT",
              "DHT",
              "Automática Sequencial"
            ],
            "type": "string",
            "description": "The site keeps CVT, DCT and the other automatics apart, so pick the one you mean."
          },
          "bodyType": {
            "title": "Body",
            "enum": [
              "Utilitário esportivo",
              "Hatchback",
              "Sedã",
              "Picape",
              "Van/Utilitário",
              "Minivan",
              "Cupê",
              "Conversível",
              "Perua/SW",
              "Buggy"
            ],
            "type": "string",
            "description": "\"Utilitário esportivo\" is the site's name for an SUV; \"Perua/SW\" is an estate."
          },
          "color": {
            "title": "Colour",
            "enum": [
              "Branco",
              "Preto",
              "Cinza",
              "Prata",
              "Azul",
              "Vermelho",
              "Verde",
              "Marrom",
              "Bege",
              "Amarelo",
              "Laranja",
              "Dourado",
              "Vinho",
              "Roxo",
              "Rosa",
              "Bronze",
              "Indefinida"
            ],
            "type": "string",
            "description": "The colour the seller picked. \"Indefinida\" is the site's own catch-all."
          },
          "armored": {
            "title": "Armour",
            "enum": [
              "Sem blindagem",
              "Com blindagem"
            ],
            "type": "string",
            "description": "Armoured cars are a real slice of the Brazilian market, so the site filters on it."
          },
          "sellerType": {
            "title": "Seller",
            "enum": [
              "Loja",
              "Concessionária",
              "Pessoa Física"
            ],
            "type": "string",
            "description": "\"Loja\" is an independent dealer, \"Concessionária\" a franchised one, \"Pessoa Física\" a private seller."
          },
          "features": {
            "title": "Equipment",
            "uniqueItems": true,
            "type": "array",
            "description": "Every item you pick has to be on the car. The list is the site's own, in its own words.",
            "items": {
              "type": "string",
              "enum": [
                "Ar condicionado",
                "Vidros elétricos",
                "Travas elétricas",
                "Freio ABS",
                "Airbag",
                "Alarme",
                "Desembaçador traseiro",
                "Rodas de liga leve",
                "Ar quente",
                "Volante com regulagem de altura",
                "Retrovisores elétricos",
                "Sensor de estacionamento",
                "Bancos em couro",
                "Banco com regulagem de altura",
                "Limpador traseiro",
                "Controle de tração",
                "Encosto de cabeça traseiro",
                "Direção hidráulica",
                "Controle automático de velocidade",
                "GPS",
                "Rádio",
                "Retrovisor fotocrômico",
                "Teto solar",
                "Sensor de chuva",
                "Tração 4x4",
                "Farol de xenônio",
                "Bancos dianteiros com aquecimento",
                "CD Player",
                "Protetor de caçamba",
                "Capota marítima",
                "DVD Player",
                "CD e MP3 Player",
                "Rádio e toca fitas",
                "Disqueteira"
              ]
            }
          },
          "attributes": {
            "title": "Paperwork and history",
            "uniqueItems": true,
            "type": "array",
            "description": "The badges sellers put on a listing. \"Aceita troca\" means they'll take a trade-in, \"IPVA pago\" that this year's road tax is paid, \"Alienado\" that the car still has finance on it.",
            "items": {
              "type": "string",
              "enum": [
                "Aceita troca",
                "IPVA pago",
                "Licenciado",
                "Único dono",
                "Garantia de fábrica",
                "Todas as revisões feitas pela concessionária",
                "Todas as revisões feitas pela agenda do carro",
                "Alienado"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}