{
  "openapi": "3.0.1",
  "info": {
    "title": "Airbnb Scraper: Full Listing Details Breakdown",
    "description": "Easily pull Airbnb data without coding. This scraper gets you listing titles, prices, descriptions, and more—perfect for automating dashboards, workflows, or data reports using clean, structured output.",
    "version": "0.1",
    "x-build-id": "6kOas35No7BsR5CyD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapier~airbnb-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapier-airbnb-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/scrapier~airbnb-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapier-airbnb-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/scrapier~airbnb-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapier-airbnb-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": {
          "listingSearchTerms": {
            "title": "🏙️ Place keywords to profile",
            "type": "array",
            "description": "Cities, neighborhoods, or paste-style keywords whose listings you want profiled. Examples: `london`, `paris`, or US-style `Austin--TX`. One entry per line. 🌆",
            "items": {
              "type": "string"
            }
          },
          "listingUrlsOrIds": {
            "title": "🔗 Direct room links / IDs (or search URLs)",
            "type": "array",
            "description": "Paste direct listing links / IDs like `https://www.airbnb.com/rooms/12345678` or `12345678` to profile a specific stay (no search, no area filter), or full Airbnb **search URLs**. 🔗",
            "items": {
              "type": "string"
            }
          },
          "pricingCheckIn": {
            "title": "🛎️ Quote check-in",
            "type": "string",
            "description": "Start of the stay window used to price each listing — calendar date **or** relative (e.g. `14 days`, `2 weeks`). Future dates give live prices. 📆"
          },
          "pricingCheckOut": {
            "title": "🚪 Quote check-out",
            "type": "string",
            "description": "End of the pricing window — must be **after** check-in. Same calendar or relative style as above. 🌅"
          },
          "priceCurrency": {
            "title": "💵 Price currency",
            "enum": [
              "USD",
              "EUR",
              "GBP",
              "JPY",
              "AUD",
              "CAD",
              "CHF",
              "CNY",
              "INR",
              "BRL",
              "MXN",
              "SEK",
              "NOK",
              "DKK",
              "PLN",
              "NZD",
              "SGD",
              "HKD",
              "KRW",
              "TRY",
              "ZAR",
              "AED",
              "THB",
              "MYR",
              "PHP",
              "IDR",
              "CZK",
              "HUF",
              "ILS",
              "SAR",
              "CLP",
              "ARS",
              "COP",
              "PEN",
              "RON",
              "BGN",
              "HRK",
              "ISK",
              "TWD",
              "VND"
            ],
            "type": "string",
            "description": "Currency for every listing's price breakdown and total quote. 💶"
          },
          "contentLocale": {
            "title": "🌐 Content language & region",
            "enum": [
              "en-US",
              "en-GB",
              "en-AU",
              "en-CA",
              "en-IN",
              "en-IE",
              "fr-FR",
              "fr-CA",
              "de-DE",
              "es-ES",
              "es-MX",
              "es-AR",
              "it-IT",
              "pt-BR",
              "pt-PT",
              "ja-JP",
              "ko-KR",
              "zh-CN",
              "zh-TW",
              "nl-NL",
              "nl-BE",
              "sv-SE",
              "da-DK",
              "nb-NO",
              "fi-FI",
              "pl-PL",
              "ru-RU",
              "tr-TR",
              "el-GR",
              "cs-CZ",
              "hu-HU",
              "ro-RO",
              "uk-UA",
              "id-ID",
              "th-TH",
              "vi-VN",
              "ms-MY",
              "hi-IN",
              "he-IL",
              "ar-SA",
              "ca-ES",
              "hr-HR",
              "sk-SK",
              "sl-SI",
              "bg-BG",
              "lt-LT",
              "lv-LV",
              "et-EE"
            ],
            "type": "string",
            "description": "Language/region Airbnb uses to label each listing's details, amenities, and prices. 🗣️"
          },
          "sortOrder": {
            "title": "↕️ Sort search results",
            "enum": [
              "relevance",
              "price_asc",
              "price_desc"
            ],
            "type": "string",
            "description": "Order Airbnb returns search results in before we collect them. Example: `price_asc` for cheapest-first. Ignored for direct `/rooms/` links. Default `relevance`. 🔀",
            "default": "relevance"
          },
          "includeAmenities": {
            "title": "🧺 Include amenities",
            "type": "boolean",
            "description": "When **on** ✅ collect the full grouped **amenities** list (Wi-Fi, kitchen, pool, safety, etc.) for each listing. Turn off for a lighter, faster dataset. Default on. 🧺",
            "default": true
          },
          "maxPhotos": {
            "title": "🖼️ Max photos per listing",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "Cap how many gallery image URLs to keep per listing. Example: `10` keeps the first 10 photos. Leave `0` for the **entire** gallery. Default 0 (all). 📸",
            "default": 0
          },
          "maxListings": {
            "title": "🏠 Max listings to profile",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Stop after building this many full listing profiles that **match your search** (and your area rules). 📊"
          },
          "maxSearchPages": {
            "title": "📄 Max search pages (optional)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Advanced: limit how many search-result pages to scroll before profiling. Leave empty for a sensible auto cap. Ignored for direct `/rooms/` links. 📑"
          },
          "includeNearbyMatches": {
            "title": "🌍 Include nearby / similar-name matches",
            "type": "boolean",
            "description": "Leave **off** to profile only listings that truly belong to the area you searched (best when a city name exists in many countries). Turn **on** to also profile nearby or similar-named places. 🗺️"
          },
          "regionFilter": {
            "title": "📍 Region / state / province",
            "enum": [
              "",
              "Addis Ababa",
              "Alberta",
              "Andalusia",
              "Antioquia",
              "Auckland",
              "Australian Capital Territory",
              "Baden-Württemberg",
              "Bali",
              "Bangkok",
              "Bavaria",
              "Beijing",
              "Berlin",
              "Bogotá D.C.",
              "Brussels-Capital Region",
              "British Columbia",
              "Buenos Aires Province",
              "Busan",
              "California",
              "Cairo Governorate",
              "Casablanca-Settat",
              "Catalonia",
              "Córdoba",
              "Delhi",
              "Dubai",
              "Dublin",
              "Eastern Cape",
              "England",
              "Flanders",
              "Florida",
              "Gauteng",
              "Guangdong",
              "Hanoi",
              "Hokkaido",
              "Ho Chi Minh City",
              "Hong Kong",
              "Istanbul",
              "Jakarta",
              "Jalisco",
              "Kanagawa Prefecture",
              "Karnataka",
              "KwaZulu-Natal",
              "Lagos State",
              "Lazio",
              "Lesser Poland",
              "Lima Province",
              "Lombardy",
              "Madrid",
              "Maharashtra",
              "Manitoba",
              "Metropolitan Manila",
              "Mexico City",
              "Minas Gerais",
              "Moscow Oblast",
              "New Brunswick",
              "New South Wales",
              "New York",
              "North Holland",
              "North Rhine-Westphalia",
              "Northern Ireland",
              "Nova Scotia",
              "Ohio",
              "Ontario",
              "Oregon",
              "Osaka Prefecture",
              "Pennsylvania",
              "Provence-Alpes-Côte d'Azur",
              "Quebec",
              "Queensland",
              "Rio de Janeiro",
              "Riyadh Province",
              "Saint Petersburg",
              "Santiago Metropolitan",
              "Saskatchewan",
              "São Paulo",
              "Scotland",
              "Seoul",
              "Shanghai",
              "Sichuan",
              "Singapore",
              "South Australia",
              "South Holland",
              "Stockholm County",
              "Taipei",
              "Tamil Nadu",
              "Tasmania",
              "Tel Aviv District",
              "Texas",
              "Tokyo",
              "Victoria",
              "Viken",
              "Wales",
              "Wallonia",
              "Wellington",
              "Western Australia",
              "Western Cape",
              "Zurich",
              "Île-de-France"
            ],
            "type": "string",
            "description": "Optional region to disambiguate the search area — pick the closest match, or leave empty. US tip: you can also use `City--ST` in the keywords field. 🇺🇸"
          },
          "countryFilter": {
            "title": "🌎 Country",
            "enum": [
              "",
              "United States",
              "United Kingdom",
              "Canada",
              "Australia",
              "France",
              "Germany",
              "Italy",
              "Spain",
              "Japan",
              "India",
              "Brazil",
              "Mexico",
              "Ireland",
              "Netherlands",
              "Portugal",
              "Belgium",
              "Austria",
              "Switzerland",
              "Sweden",
              "Norway",
              "Denmark",
              "Poland",
              "Czech Republic",
              "Hungary",
              "Greece",
              "Turkey",
              "South Korea",
              "China",
              "Taiwan",
              "Hong Kong",
              "Singapore",
              "New Zealand",
              "South Africa",
              "United Arab Emirates",
              "Saudi Arabia",
              "Israel",
              "Argentina",
              "Chile",
              "Colombia",
              "Thailand",
              "Malaysia",
              "Indonesia",
              "Philippines",
              "Vietnam",
              "Egypt",
              "Nigeria",
              "Russia",
              "Ukraine",
              "Romania",
              "Finland",
              "Croatia",
              "Slovenia",
              "Slovakia",
              "Bulgaria",
              "Serbia",
              "Iceland",
              "Luxembourg",
              "Estonia",
              "Latvia",
              "Lithuania",
              "Pakistan",
              "Bangladesh",
              "Peru",
              "Ecuador",
              "Uruguay",
              "Costa Rica",
              "Panama",
              "Morocco",
              "Kenya",
              "Qatar",
              "Kuwait",
              "Bahrain",
              "Oman",
              "Cyprus",
              "Malta",
              "Montenegro",
              "Albania",
              "North Macedonia"
            ],
            "type": "string",
            "description": "Optional country to disambiguate the search area (helps when two cities share a name). Leave empty if you’re sure. 🏳️"
          },
          "proxyConfiguration": {
            "title": "🔌 Proxy",
            "type": "object",
            "description": "Configure Apify Proxy if needed; otherwise we connect directly. ☁️"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}