{
  "openapi": "3.0.1",
  "info": {
    "title": "FINN Motor Scraper: Norway Cars, MC and Boats",
    "description": "FINN motor ads in Norway: used cars, vans, MC, boats, caravans and motorhomes, by make, model, county, dealer id, plate or VIN, searches split past FINN's 2,500 cap, no login. Rows: merke, modell, årsmodell, kilometerstand, pris ekskl. omreg., EU-kontroll, dealer card. Pay per result; Excel, API.",
    "version": "0.1",
    "x-build-id": "kyfQQjCJEsXb7lDul"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/automation_craft~finn-motor-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-automation_craft-finn-motor-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/automation_craft~finn-motor-scraper/runs": {
      "post": {
        "operationId": "runs-sync-automation_craft-finn-motor-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/automation_craft~finn-motor-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-automation_craft-finn-motor-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": {
          "vehicleTypes": {
            "title": "Vehicle types",
            "type": "array",
            "description": "Which FINN motor searches to read, each its own search: used cars (vans, new cars, leasing and auctions are filters of it), motorcycles, mopeds and scooters, ATVs, snowmobiles, boats, boat engines, docks, caravans, motorhomes, trucks, buses, construction machinery, tractors, farm tools, combine harvesters, or all business vehicles at once. Left empty: used cars.",
            "items": {
              "type": "string",
              "enum": [
                "car",
                "mc",
                "scooter",
                "atv",
                "snowmobile",
                "boat",
                "boatEngine",
                "boatDock",
                "caravan",
                "mobileHome",
                "truck",
                "bus",
                "construction",
                "tractor",
                "agriTools",
                "threshers",
                "b2bAll"
              ],
              "enumTitles": [
                "Used cars (vans, new, leasing and auctions by filter)",
                "Motorcycles",
                "Mopeds and scooters",
                "ATVs",
                "Snowmobiles",
                "Boats",
                "Boat engines",
                "Boat docks and berths",
                "Caravans",
                "Motorhomes",
                "Trucks",
                "Buses",
                "Construction machinery",
                "Tractors",
                "Farm tools",
                "Combine harvesters",
                "All business vehicles (trucks, buses, construction, farm)"
              ]
            }
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Search words, each one its own search (\"tesla model y\", \"hengerfeste\", \"bobil alkove\", \"RIB\"). FINN matches them in the ad texts. Left empty, each vehicle type is searched without words, newest first.",
            "items": {
              "type": "string"
            }
          },
          "dealerIds": {
            "title": "Dealer ids",
            "type": "array",
            "description": "Every ad of one dealer: FINN dealer ids (the companyId of a dealer row, the number in a dealer's FINN page address such as 706939412), each its own search per vehicle type (FINN's own dealer filter, the one behind \"Se forhandlerens annonser\"). Not together with plates or vins.",
            "items": {
              "type": "string"
            }
          },
          "plates": {
            "title": "Plates to look up",
            "type": "array",
            "description": "Norwegian plates such as \"BT27916\" or \"BT 27916\" (one to three letters and one to five digits, sent in both forms FINN stores them, with or without the space), or a personalised plate of 2 to 8 letters and digits holding a digit: each looks for the FINN ad of that vehicle in each vehicle type (used cars when vehicleTypes is empty), up to 10 standard plates (each sent in both forms) or 20 personalised plates to one FINN search. A row is delivered only when the ad page itself shows the plate asked; each plate's result (found, not found) is on its search's free coverage row. At most 300 a run; not together with keywords or dealerIds.",
            "items": {
              "type": "string"
            }
          },
          "vins": {
            "title": "VINs to look up",
            "type": "array",
            "description": "Vehicle identification numbers (11 to 17 letters and digits holding both): each looks for the FINN ad of that vehicle, as plates do, 20 VINs to one FINN search. A row is delivered only when the ad page itself shows the VIN asked; a VIN no ad carries is free (its search's coverage row says not found).",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Places",
            "type": "array",
            "description": "Counties, municipalities or districts by FINN's Norwegian name (\"Oslo\", \"Bergen\", \"Trøndelag\") or FINN's value (\"0.20061\"). Several places are one search (any of them).",
            "items": {
              "type": "string",
              "enumSuggestedValues": [
                "Agder",
                "Akershus",
                "Buskerud",
                "Finnmark",
                "Innlandet",
                "Møre og Romsdal",
                "Nordland",
                "Oslo",
                "Rogaland",
                "Telemark",
                "Troms",
                "Trøndelag",
                "Vestfold",
                "Vestland",
                "Østfold",
                "Utlandet"
              ]
            }
          },
          "latitude": {
            "title": "Latitude",
            "minimum": 57,
            "maximum": 81,
            "type": "number",
            "description": "With longitude and radiusKm: search around a point in Norway (FINN's own map radius)."
          },
          "longitude": {
            "title": "Longitude",
            "minimum": 4,
            "maximum": 32,
            "type": "number",
            "description": "With latitude and radiusKm."
          },
          "radiusKm": {
            "title": "Radius (km)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "With latitude and longitude: the distance in kilometres."
          },
          "minPrice": {
            "title": "Minimum price",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "integer",
            "description": "The lowest price in kroner (on leasing ads FINN's price is the monthly price), sent to FINN."
          },
          "maxPrice": {
            "title": "Maximum price",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "integer",
            "description": "The highest price in kroner, sent to FINN."
          },
          "sellerType": {
            "title": "Seller",
            "enum": [
              "any",
              "private",
              "business"
            ],
            "type": "string",
            "description": "Private sellers only, or dealers only (FINN's own seller filter of each vehicle type). A car a private person sells through a private sale service is a private seller's row here while FINN files it under dealers: Dealers only leaves it out (free), Private sellers only does not find it, Any seller delivers it.",
            "default": "any"
          },
          "postedToday": {
            "title": "New today",
            "type": "boolean",
            "description": "Only ads FINN marks as new (\"Nye i dag\", the last 24 hours).",
            "default": false
          },
          "smoothTradeOnly": {
            "title": "FINN safe trade only",
            "type": "boolean",
            "description": "Only ads with FINN's safe trade (\"Smidig handel\", \"Smidig bilhandel\", \"Smidig MC-handel\"), where the vehicle type offers it.",
            "default": false
          },
          "makes": {
            "title": "Makes",
            "type": "array",
            "description": "\"Tesla\", \"Volvo\", \"Yamaha\", \"Bavaria\" and the other makes FINN lists for the vehicle type.",
            "items": {
              "type": "string"
            }
          },
          "models": {
            "title": "Models",
            "type": "array",
            "description": "Cars only, with makes: models or series by FINN's name (\"Model Y\", \"XC60\", \"Golf\").",
            "items": {
              "type": "string"
            }
          },
          "minYear": {
            "title": "Minimum model year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Every vehicle type with a model year."
          },
          "maxYear": {
            "title": "Maximum model year",
            "minimum": 1900,
            "maximum": 2100,
            "type": "integer",
            "description": "Every vehicle type with a model year."
          },
          "minMileage": {
            "title": "Minimum mileage (km)",
            "minimum": 0,
            "maximum": 5000000,
            "type": "integer",
            "description": "Every vehicle type whose FINN search has a mileage filter (FINN's own list; a type without one refuses it free)."
          },
          "maxMileage": {
            "title": "Maximum mileage (km)",
            "minimum": 0,
            "maximum": 5000000,
            "type": "integer",
            "description": "As minMileage."
          },
          "minPowerHp": {
            "title": "Minimum power (hp)",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Every vehicle type whose FINN search has a power filter (FINN's own list; a type without one refuses it free)."
          },
          "maxPowerHp": {
            "title": "Maximum power (hp)",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "As minPowerHp."
          },
          "minSeats": {
            "title": "Minimum seats",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Cars only."
          },
          "maxSeats": {
            "title": "Maximum seats",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Cars only."
          },
          "fuelTypes": {
            "title": "Fuel",
            "type": "array",
            "description": "\"Bensin\", \"Diesel\", \"El\", \"Hybrid bensin\", \"Plug-in Bensin\" and the other names FINN lists (cars, MC, scooters, boats).",
            "items": {
              "type": "string"
            }
          },
          "transmissions": {
            "title": "Gearbox",
            "type": "array",
            "description": "Cars and motorhomes: \"Automat\" or \"Manuell\".",
            "items": {
              "type": "string"
            }
          },
          "bodyTypes": {
            "title": "Body or type",
            "type": "array",
            "description": "The body or type FINN lists for the vehicle type: \"Stasjonsvogn\", \"SUV/Offroad\", \"Kombi 5-dørs\" (cars); \"Adventure\", \"Cruiser\" (MC); \"RIB\", \"Daycruiser\" (boat classes); \"Alkove\" (motorhomes); farm tool and truck types.",
            "items": {
              "type": "string"
            }
          },
          "wheelDrives": {
            "title": "Wheel drive",
            "type": "array",
            "description": "Cars and motorhomes: \"Firehjulsdrift\", \"Forhjulsdrift\", \"Bakhjulsdrift\".",
            "items": {
              "type": "string"
            }
          },
          "colours": {
            "title": "Colour",
            "type": "array",
            "description": "Cars only: \"Svart\", \"Hvit\", \"Grå\", \"Blå\" and the other names FINN lists.",
            "items": {
              "type": "string"
            }
          },
          "salesForms": {
            "title": "Sales form",
            "type": "array",
            "description": "\"Bruktbil til salgs\", \"Nybil til salgs\", \"Leasing\", \"Auksjon\" (cars); \"Brukt båt\", \"Ny båt\", \"Båt til leie\", \"Båt ønskes\" (boats); \"Til salgs\", \"Leies ut\" (caravans, motorhomes); \"Til salgs\", \"Til leie\", \"Ønskes kjøpt\" (docks).",
            "items": {
              "type": "string"
            }
          },
          "vansOnly": {
            "title": "Vans only",
            "type": "boolean",
            "description": "Cars only: vans (FINN's registration class \"Varebil\"). Not together with registrationClasses.",
            "default": false
          },
          "registrationClasses": {
            "title": "Registration class",
            "type": "array",
            "description": "Cars only: \"Personbil\", \"Varebil\", \"Kombinertbil\", \"Minibuss\", \"Lett lastebil\", \"Annet\".",
            "items": {
              "type": "string"
            }
          },
          "equipment": {
            "title": "Equipment",
            "type": "array",
            "description": "Cars only: \"Hengerfeste\" (towbar), \"Apple CarPlay\", \"Bluetooth\", \"Cruisekontroll\", \"Klimaanlegg\", \"Kupévarmer\", \"Motorvarmer\", \"Parkeringsensor bak\", \"Ryggekamera\", \"Skinn- og semiskinninteriør\", \"Soltak/glasstak\". Several values: any of them.",
            "items": {
              "type": "string"
            }
          },
          "warrantyTypes": {
            "title": "Warranty and exchange right",
            "type": "array",
            "description": "Cars only: \"Garanti\" (warranty), \"Bytterett\" (right to exchange), \"Programbil\" (a maker's certified used car).",
            "items": {
              "type": "string"
            }
          },
          "conditionDocuments": {
            "title": "Condition documents",
            "type": "array",
            "description": "Cars only: \"Service\" (service history), \"Testrapport\" (test report), \"Tilstandsrapport\" (condition report).",
            "items": {
              "type": "string"
            }
          },
          "wheelSets": {
            "title": "Wheel sets",
            "type": "array",
            "description": "Cars only: \"Ett hjulsett\" or \"To eller flere hjulsett\".",
            "items": {
              "type": "string"
            }
          },
          "vehicleConditions": {
            "title": "New or used",
            "type": "array",
            "description": "MC, caravans and motorhomes: \"Ny MC\" or \"Brukt MC\"; \"Ny\" or \"Brukt\".",
            "items": {
              "type": "string"
            }
          },
          "vehicleLocations": {
            "title": "Vehicle stands in",
            "type": "array",
            "description": "Boats, caravans and motorhomes: \"Norge\" or \"Utlandet\".",
            "items": {
              "type": "string"
            }
          },
          "minEngineCc": {
            "title": "Minimum engine size (cc)",
            "minimum": 0,
            "maximum": 20000,
            "type": "integer",
            "description": "MC, scooters, ATVs and snowmobiles: FINN's engine size in cubic centimetres."
          },
          "maxEngineCc": {
            "title": "Maximum engine size (cc)",
            "minimum": 0,
            "maximum": 20000,
            "type": "integer",
            "description": "As minEngineCc."
          },
          "minLengthFeet": {
            "title": "Minimum boat length (feet)",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Boats: FINN's length in feet."
          },
          "maxLengthFeet": {
            "title": "Maximum boat length (feet)",
            "minimum": 0,
            "maximum": 1000,
            "type": "integer",
            "description": "Boats."
          },
          "minLengthCm": {
            "title": "Minimum length (cm)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Caravans and motorhomes: FINN's length in centimetres."
          },
          "maxLengthCm": {
            "title": "Maximum length (cm)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Caravans and motorhomes."
          },
          "minWidthCm": {
            "title": "Minimum width (cm)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Boats, docks and caravans: FINN's width in centimetres."
          },
          "maxWidthCm": {
            "title": "Maximum width (cm)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Boats, docks and caravans."
          },
          "minWeightKg": {
            "title": "Minimum weight (kg)",
            "minimum": 0,
            "maximum": 200000,
            "type": "integer",
            "description": "Caravans, motorhomes and trucks: FINN's weight in kilograms (total weight on trucks)."
          },
          "maxWeightKg": {
            "title": "Maximum weight (kg)",
            "minimum": 0,
            "maximum": 200000,
            "type": "integer",
            "description": "Caravans, motorhomes and trucks."
          },
          "minTrailerWeightKg": {
            "title": "Minimum towing weight (kg)",
            "minimum": 0,
            "maximum": 50000,
            "type": "integer",
            "description": "Cars only: the largest trailer weight in kilograms."
          },
          "maxTrailerWeightKg": {
            "title": "Maximum towing weight (kg)",
            "minimum": 0,
            "maximum": 50000,
            "type": "integer",
            "description": "Cars only."
          },
          "minBoatEngineHp": {
            "title": "Minimum boat engine power (hp)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Boats: the power of the boat's engine."
          },
          "maxBoatEngineHp": {
            "title": "Maximum boat engine power (hp)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Boats."
          },
          "minTopSpeedKnots": {
            "title": "Minimum top speed (knots)",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "Boats."
          },
          "maxTopSpeedKnots": {
            "title": "Maximum top speed (knots)",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "Boats."
          },
          "berths": {
            "title": "Berths",
            "type": "array",
            "description": "Boats, caravans and motorhomes: FINN's groups \"1 - 2\", \"3 - 4\", \"5 - 6\", \"7 eller flere senger\".",
            "items": {
              "type": "string"
            }
          },
          "seatGroups": {
            "title": "Seats (groups)",
            "type": "array",
            "description": "Boats and motorhomes: FINN's seat groups such as \"4 - 6\" or \"10 eller flere seter\".",
            "items": {
              "type": "string"
            }
          },
          "boatEngineTypes": {
            "title": "Boat engine type",
            "type": "array",
            "description": "Boats: \"Innenbords\" (inboard), \"Utenbords\" (outboard), \"Annet\". (Boat engines for sale: use bodyTypes.)",
            "items": {
              "type": "string"
            }
          },
          "boatEngineIncluded": {
            "title": "Boat engine included",
            "type": "array",
            "description": "Boats: FINN's values \"Innenbords\" (engine included) or \"Nei\" (none).",
            "items": {
              "type": "string"
            }
          },
          "boatMaterials": {
            "title": "Boat material",
            "type": "array",
            "description": "Boats: \"Glassfiber\", \"Aluminium\", \"Plast\", \"Tre\", \"Annet\".",
            "items": {
              "type": "string"
            }
          },
          "attributeFilters": {
            "title": "Any other FINN filter",
            "type": "object",
            "description": "Any other filter of the vehicle type's own FINN filter list, by FINN's name or Norwegian label, with values by label or value, or {\"min\": n, \"max\": n} for a range. For example {\"truck_segment\": [\"Trekkvogn\"], \"engine_effect\": {\"min\": 400}}. A filter the vehicle type does not offer is refused with the filters it does offer."
          },
          "postedAfter": {
            "title": "Posted on or after",
            "type": "string",
            "description": "Only ads published on or after this day in Norway (YYYY-MM-DD), checked on every row."
          },
          "postedWithinHours": {
            "title": "Posted within (hours)",
            "minimum": 1,
            "maximum": 8760,
            "type": "integer",
            "description": "Only ads published within this many hours of the run's start, checked on every row."
          },
          "includeKeywords": {
            "title": "Must contain",
            "type": "array",
            "description": "Words an ad must contain (its title, and its description when the ad page is read). Any one of them, or all with requireAllKeywords.",
            "items": {
              "type": "string"
            }
          },
          "requireAllKeywords": {
            "title": "Require all words",
            "type": "boolean",
            "description": "With includeKeywords: every word must be in the ad.",
            "default": false
          },
          "excludeKeywords": {
            "title": "Must not contain",
            "type": "array",
            "description": "Ads holding any of these words are left out, free.",
            "items": {
              "type": "string"
            }
          },
          "titleOnly": {
            "title": "Look in titles only",
            "type": "boolean",
            "description": "includeKeywords and excludeKeywords look at the title only.",
            "default": false
          },
          "excludeAdIds": {
            "title": "Exclude FINN codes",
            "type": "array",
            "description": "FINN codes (finnkode) or ad links never to deliver.",
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "Search links",
            "type": "array",
            "description": "Search pages copied from FINN motor (https://www.finn.no/mobility/search/<type>?...), read with all their filters. FINN's sort order in a link is not sent (FINN asks robots not to); the link is read in FINN's default order, newest first.",
            "items": {
              "type": "string"
            }
          },
          "adUrls": {
            "title": "Ad links or FINN codes",
            "type": "array",
            "description": "Vehicle ad links (https://www.finn.no/mobility/item/<FINN code>, or the older car, boat, MC and business vehicle ad links) or FINN codes (finnkode): each read with its ad page and billed as one Vehicle. A removed or unknown ad is a free row.",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "Maximum rows",
            "minimum": 1,
            "maximum": 200000,
            "type": "integer",
            "description": "The most paid rows (vehicles) the run delivers, across all searches and links.",
            "default": 100
          },
          "maxItemsPerSearch": {
            "title": "Maximum rows per search",
            "minimum": 1,
            "maximum": 200000,
            "type": "integer",
            "description": "The most paid rows from one search or search link."
          },
          "maxPagesPerSearch": {
            "title": "Maximum pages per search",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "The most result pages read for one search (50 ads a page)."
          },
          "maxRowsPerSearch": {
            "title": "Rows read per search",
            "minimum": 1,
            "maximum": 200000,
            "type": "integer",
            "description": "How many rows of each search are read at most, the rows left out by a filter included (no limit by default)."
          },
          "includeDetails": {
            "title": "Include the ad page",
            "type": "boolean",
            "description": "Read each ad's page: the full description, every key fact and all images, the equipment list, first registration, EU control dates, owners, warranty, whether the service plan was followed, condition report, declared damages, the price with and without the registration fee (and VAT on business vehicles), leasing terms, battery and range, weights, lengths and machine facts, FINN's loan example, and the dealer card (organisation number, address, phone, e-mail, website, opening hours, brands, memberships, years on FINN, ad count). Included in the Vehicle price, no extra event; it takes about a second per row.",
            "default": false
          },
          "includeSimilarVehicles": {
            "title": "Add similar vehicles (add-on)",
            "type": "boolean",
            "description": "FINN's own list of up to 6 similar vehicles for each ad (FINN code, link, title, year and mileage text, price, image), read with the ad's vehicle type, every kind. Reads the ad page too (in the Vehicle price). One extra read per row; billed as one Similar vehicles list per row that carries one. An ad FINN lists none for: empty and free.",
            "default": false
          },
          "includePersonalData": {
            "title": "Include personal data",
            "type": "boolean",
            "description": "Deliver the fields that name or reach a private person: a private seller's plate and VIN (in their fields, in the key facts and in the vehicle register and liens check links that carry the plate), FINN id, street and exact map point (off: the point is rounded to 2 decimals, about 1 km, when FINN gives it to the address), the seller's own links and ad references, contact persons' names, phones and e-mails on any ad, and the contacts found in the texts of private ads. Off: those fields are empty; a dealer's name, FINN id, organisation number, address, website and dealer card (with the phone and e-mail of the dealer's FINN profile) are business data and always delivered, while a contact block on a dealer's ad counts as a person unless it carries the dealer's own FINN name. Plate and VIN lookups work either way. You are responsible for a lawful use, GDPR included.",
            "default": false
          },
          "priceSummary": {
            "title": "Price summary per search",
            "type": "boolean",
            "description": "Each search's coverage row carries the count, lowest, quartiles, median, mean and highest price of the ads it met (free).",
            "default": true
          },
          "includeRawData": {
            "title": "Include raw search row",
            "type": "boolean",
            "description": "Add FINN's search row as served (a private seller's only with personal data on).",
            "default": false
          },
          "descriptionFormat": {
            "title": "Description format",
            "enum": [
              "asServed",
              "text",
              "markdown"
            ],
            "type": "string",
            "description": "How the ad description is delivered.",
            "default": "asServed"
          },
          "descriptionMaxLength": {
            "title": "Description maximum length",
            "minimum": 20,
            "maximum": 100000,
            "type": "integer",
            "description": "Cut descriptions to this many characters (descriptionCut marks the row)."
          },
          "outputFields": {
            "title": "Fields to keep",
            "type": "array",
            "description": "Keep only these row fields, by the names the rows carry (\"adId\", \"url\", \"make\", \"model\", \"year\", \"mileage\", \"dealer\", \"similarVehicles\"); the row's identity, title, price, place, status and image count, and the fields of every add-on that is billed, always stay. Not together with compactOutput.",
            "items": {
              "type": "string"
            }
          },
          "compactOutput": {
            "title": "Compact rows",
            "type": "boolean",
            "description": "Deliver only the most used fields (handy for AI agents).",
            "default": false
          },
          "excludeEmptyFields": {
            "title": "Leave out empty fields",
            "type": "boolean",
            "description": "Drop fields that are empty on a row.",
            "default": false
          },
          "extractContacts": {
            "title": "Extract contacts from texts",
            "type": "boolean",
            "description": "Add the e-mail addresses, phone numbers, websites and social profiles written in the title and description (dealers' ads always; private ads with includePersonalData on).",
            "default": false
          },
          "phoneExtractionMode": {
            "title": "Phone extraction",
            "enum": [
              "strict",
              "lenient"
            ],
            "type": "string",
            "description": "With extractContacts."
          },
          "failIfIncomplete": {
            "title": "Fail if incomplete",
            "type": "boolean",
            "description": "End the run as failed when a search or link could not be read in full (the rows delivered stay).",
            "default": false
          },
          "maxFailedRequestsPercent": {
            "title": "Fail above this share of failed reads (%)",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "End the run as failed when more of its reads failed."
          },
          "completenessTolerancePercent": {
            "title": "Complete within this share of FINN's count (%)",
            "minimum": 0,
            "maximum": 50,
            "type": "number",
            "description": "Your own bar for a complete search: a search counts as complete when it met at least FINN's count of ads less this percent (and less the number of ads below). Empty: the fixed rule (98 percent of FINN's count less 2 ads on a split search, 99 percent less 2 on one search). Used by the coverage rows' complete and by Fail if incomplete; plate and VIN lookup searches keep their own rule (a lookup says not found only when its search was read to its end)."
          },
          "completenessToleranceAbsolute": {
            "title": "Complete within this many ads of FINN's count",
            "minimum": 0,
            "maximum": 100000,
            "type": "integer",
            "description": "Your own bar for a complete search, in ads: a search counts as complete when it met at least FINN's count less this many ads (and less the percent above). Empty: the fixed rule."
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Leave as is: FINN motor is read through Apify's datacenter proxy, which every FINN motor door answers. Your own proxy links replace it."
          },
          "requestsPerSecond": {
            "title": "Requests per second",
            "minimum": 0.2,
            "maximum": 2,
            "type": "number",
            "description": "The pace of the run's one exit (0.2 to 2).",
            "default": 1
          },
          "maxConcurrency": {
            "title": "Requests in flight",
            "minimum": 1,
            "maximum": 4,
            "type": "integer",
            "description": "At most this many requests in flight, inside the pace (FINN is never asked more than requestsPerSecond requests a second): ad pages and add-on pages are read on this many lanes.",
            "default": 4
          },
          "maxRequestRetries": {
            "title": "Retries",
            "minimum": 0,
            "maximum": 5,
            "type": "integer",
            "description": "Tries of a failed read after the first.",
            "default": 2
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}