{
  "openapi": "3.0.1",
  "info": {
    "title": "Airbnb Professional Host Scraper",
    "description": "Extract professional Airbnb host business contacts for B2B lead generation. Get verified company emails, phone numbers, names, addresses and registration details (RCS, SIRET). Search by city, listing URLs or host profile across 55+ Airbnb markets. Built for real estate agencies and sales teams.",
    "version": "1.0",
    "x-build-id": "D7QdMe3F0Ni6HsolX"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/silentflow~airbnb-professional-host-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-silentflow-airbnb-professional-host-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/silentflow~airbnb-professional-host-scraper/runs": {
      "post": {
        "operationId": "runs-sync-silentflow-airbnb-professional-host-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/silentflow~airbnb-professional-host-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-silentflow-airbnb-professional-host-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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "city",
              "bulkUrls",
              "hostProfileUrl"
            ],
            "type": "string",
            "description": "**City search** - Discover all professional hosts in a city or region.\n\n**Listing URLs** - Paste one or multiple listing URLs for enrichment.\n\n**Host profile** - Extract all listings and contact details from a host profile page.",
            "default": "city"
          },
          "city": {
            "title": "Cities or Regions",
            "type": "array",
            "description": "Add one city or region per line. The scraper searches each one and combines all results into a single dataset.",
            "items": {
              "type": "string"
            }
          },
          "listingUrls": {
            "title": "Listing URL(s)",
            "type": "array",
            "description": "Paste one URL or hundreds. Works with airbnb.fr, airbnb.es, airbnb.com. Each item can be a plain URL or { \"url\": \"https://...\" }.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "hostProfileUrl": {
            "title": "Host Profile URL",
            "type": "string",
            "description": "URL of the host's profile page (e.g., https://www.airbnb.fr/users/show/12345678)."
          },
          "locale": {
            "title": "Market / Language",
            "enum": [
              "fr",
              "es",
              "en",
              "de",
              "it",
              "pt",
              "nl",
              "da",
              "sv",
              "no",
              "fi",
              "pl",
              "cs",
              "hu",
              "ro",
              "el",
              "tr",
              "ru",
              "ja",
              "ko",
              "zh",
              "th",
              "id",
              "ms",
              "vi",
              "ar",
              "he",
              "hi",
              "en-gb",
              "en-au",
              "en-ca",
              "en-ie",
              "en-nz",
              "en-sg",
              "en-za",
              "en-hk",
              "es-mx",
              "es-ar",
              "es-co",
              "es-cl",
              "es-pe",
              "pt-br",
              "pt-pt",
              "fr-be",
              "fr-ch",
              "de-at",
              "de-ch",
              "zh-tw",
              "hr",
              "bg",
              "sk",
              "sl",
              "et",
              "lv",
              "lt",
              "is"
            ],
            "type": "string",
            "description": "Selects the Airbnb domain and adapts parsing to the local language. Company detection is available for FR (SAS/SARL/SCI), ES (SL/SRL), EN (LLC/LTD), DE (GmbH/AG), IT (SRL/SPA), PT (Lda/LTDA), NL (BV/NV).",
            "default": "fr"
          },
          "maxPages": {
            "title": "Max Pages per City",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Each page returns ~18 listings. Start with 2-3 pages to test, then scale up. Set to 0 for no limit.",
            "default": 3
          },
          "deduplicateHosts": {
            "title": "One Row per Host (Deduplicate)",
            "type": "boolean",
            "description": "Collapse multiple listings from the same host into a single row. Keeps the most complete contact info. Best for outreach and lead generation.",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}