> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapio.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Search Airbnb

> Search Airbnb listings by free-text location, with optional dates and guest counts.



## OpenAPI

````yaml get /v1/airbnb/search
openapi: 3.1.0
info:
  title: Scrapio
  version: 1.0.0
  description: >-
    Turn any URL into structured data. Fetch raw HTML, crawl sites, extract
    structured content, interact with dynamic pages, and search the web through
    one API.
  contact:
    name: Scrapio Support
    url: https://scrapio.dev
  license:
    name: Proprietary
servers:
  - url: https://api.scrapio.dev
    description: Production
security:
  - bearerAuth: []
tags:
  - name: System
  - name: Fetch
  - name: Crawl
  - name: Map
  - name: Interact
  - name: Search
  - name: Google
  - name: Fast Search
  - name: Jobs
  - name: YouTube
  - name: Amazon
  - name: Walmart
  - name: Booking
  - name: Agoda
  - name: Airbnb
  - name: ChatGPT
  - name: Perplexity
  - name: Gemini
  - name: Bing
  - name: Reddit
  - name: TikTok
  - name: Apple App Store
  - name: Target
  - name: Monitors
paths:
  /v1/airbnb/search:
    get:
      tags:
        - Airbnb
      summary: Search Airbnb listings
      description: >-
        Searches Airbnb listings for a free-text location, returning structured
        results (name, price, rating, images, and more). Backed by our own
        maintained `airbnb` Web Scraping API target. Requires a Starter plan or
        higher.
      operationId: searchAirbnb
      parameters:
        - name: location
          in: query
          required: true
          schema:
            type: string
            minLength: 1
            description: Free-text location to search, e.g. 'New York'
        - name: check_in
          in: query
          required: false
          schema:
            description: Check-in date (YYYY-MM-DD)
            type: string
            pattern: ^\d{4}-\d{2}-\d{2}$
        - name: check_out
          in: query
          required: false
          schema:
            description: Check-out date (YYYY-MM-DD)
            type: string
            pattern: ^\d{4}-\d{2}-\d{2}$
        - name: adults
          in: query
          required: false
          schema:
            description: Number of adult guests
            type: integer
            exclusiveMinimum: 0
            maximum: 9007199254740991
        - name: children
          in: query
          required: false
          schema:
            description: Number of child guests
            type: integer
            minimum: 0
            maximum: 9007199254740991
        - name: infants
          in: query
          required: false
          schema:
            description: Number of infant guests
            type: integer
            minimum: 0
            maximum: 9007199254740991
        - name: pets
          in: query
          required: false
          schema:
            description: Number of pets
            type: integer
            minimum: 0
            maximum: 9007199254740991
      responses:
        '200':
          description: Structured Airbnb search results.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AirbnbSearchResponse'
        '400':
          description: Invalid search parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Missing or invalid API key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: Airbnb dedicated endpoints require a Starter plan or higher.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Daily credit cap exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Airbnb upstream failed or returned an unparseable page.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Airbnb execution backend unavailable or unconfigured.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      x-codeSamples:
        - lang: cURL
          label: cURL
          source: >-
            curl
            "https://api.scrapio.dev/v1/airbnb/search?location=New%20York&check_in=2026-09-01&check_out=2026-09-05&adults=2"
            \
              -H "Authorization: Bearer $SCRAPIO_API_KEY"
components:
  schemas:
    AirbnbSearchResponse:
      type: object
      properties:
        provider:
          type: string
          enum:
            - airbnb
        page_type:
          type: string
          enum:
            - search
        snapshot_at:
          type: string
        query_context:
          type: object
          properties:
            location:
              type: string
            check_in:
              type: string
            check_out:
              type: string
            adults:
              type: integer
              exclusiveMinimum: 0
              maximum: 9007199254740991
            children:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            infants:
              type: integer
              minimum: 0
              maximum: 9007199254740991
            pets:
              type: integer
              minimum: 0
              maximum: 9007199254740991
          required:
            - location
          additionalProperties: false
        meta_data:
          type: object
          properties:
            number_of_results:
              anyOf:
                - type: integer
                  minimum: 0
                  maximum: 9007199254740991
                - type: 'null'
          required:
            - number_of_results
          additionalProperties: false
        results:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              name:
                anyOf:
                  - type: string
                  - type: 'null'
              room_type:
                anyOf:
                  - type: string
                  - type: 'null'
              url:
                type: string
                format: uri
              rating:
                type: object
                properties:
                  average:
                    anyOf:
                      - type: number
                      - type: 'null'
                  review_count:
                    anyOf:
                      - type: integer
                        minimum: 0
                        maximum: 9007199254740991
                      - type: 'null'
                  label:
                    anyOf:
                      - type: string
                      - type: 'null'
                required:
                  - average
                  - review_count
                  - label
                additionalProperties: false
              price:
                type: object
                properties:
                  display:
                    anyOf:
                      - type: string
                      - type: 'null'
                  qualifier:
                    anyOf:
                      - type: string
                      - type: 'null'
                  accessibility_label:
                    anyOf:
                      - type: string
                      - type: 'null'
                required:
                  - display
                  - qualifier
                  - accessibility_label
                additionalProperties: false
              badges:
                type: array
                items:
                  type: string
              images:
                type: array
                items:
                  type: string
                  format: uri
              location:
                type: object
                properties:
                  city:
                    anyOf:
                      - type: string
                      - type: 'null'
                  latitude:
                    anyOf:
                      - type: number
                      - type: 'null'
                  longitude:
                    anyOf:
                      - type: number
                      - type: 'null'
                required:
                  - city
                  - latitude
                  - longitude
                additionalProperties: false
            required:
              - id
              - name
              - room_type
              - url
              - rating
              - price
              - badges
              - images
              - location
            additionalProperties: false
      required:
        - provider
        - page_type
        - snapshot_at
        - query_context
        - meta_data
        - results
      additionalProperties: false
    ErrorResponse:
      type: object
      properties:
        request_id:
          type: string
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
          required:
            - code
            - message
        diagnostics:
          type: object
          properties:
            outcome:
              type: string
              enum:
                - failed
            retryable:
              type: boolean
            blocked:
              type: boolean
            timed_out:
              type: boolean
          required:
            - outcome
            - retryable
          additionalProperties: false
      required:
        - request_id
        - error
      additionalProperties: false
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key

````