New to Claude Skills? Learn how to install them →

browser-act on GitHub

Airbnb Listing Detail

Free

Fetch comprehensive details for Airbnb listings easily.

by browser-act5.3k stars on browser-act/skills
1 views
Updated Aug 5, 2026
Get this skill

Free · Opens the source repo

What Airbnb Listing Detail does

The Airbnb Listing Detail skill allows users to retrieve detailed information about specific Airbnb properties using their unique listing IDs. By leveraging the internal GraphQL API, this skill can extract a wealth of information, including property title, room type, description, amenities, photos, location coordinates, city, house rules, highlights, overall ratings, review counts, and bedroom configurations. This functionality is particularly useful for developers and designers who need to integrate Airbnb data into their applications or perform analyses on property listings.

To use this skill, simply provide a numeric listing ID, which can be found in the URL of any Airbnb property page. The skill operates in a browser context, meaning it does not require any specific page navigation or user authentication, making it straightforward to implement. Users can also specify optional parameters such as check-in and check-out dates to refine the data retrieved, which is essential for obtaining accurate pricing information.

This skill is designed for users who frequently work with Airbnb data, whether for personal projects, data analysis, or application development. It streamlines the process of gathering property details, allowing users to focus on utilizing this data rather than spending time on manual retrieval. The skill's output is structured in JSON format, making it easy to parse and integrate into various applications.

While the skill is powerful, it does have limitations. For instance, it does not provide personal details about hosts, and pricing information is only available when check-in and check-out dates are specified. Additionally, users should be mindful of rate limits when making multiple requests in quick succession. Overall, the Airbnb Listing Detail skill is a valuable tool for anyone looking to efficiently access detailed Airbnb property information.

When to use it

Use this skill when you need detailed data about specific Airbnb listings for analysis, integration, or reporting.

When not to use it

Avoid using this skill for bulk data extraction without appropriate rate limiting, as it may trigger API restrictions.

What you can build with it

Integrating Airbnb Data into an App

Developers can use this skill to pull Airbnb listing details into their applications, enhancing user experience with real-time property information.

Conducting Market Analysis

Data analysts can retrieve property details to perform market comparisons and analyses, aiding in investment decisions.

Creating Travel Planning Tools

Designers can utilize the skill to build travel planning tools that display Airbnb options based on user preferences.

How to install Airbnb Listing Detail

View source

1. Install with the skills CLI

npx skills add browser-act/skills/airbnb-listing-detail --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by browser-act

Airbnb — Listing Detail

Listing ID → full property detail via internal GraphQL API (no login required)

Language

All process output to user (progress updates, process notifications) follows the user's language.

Objective

Fetch comprehensive listing data for an Airbnb property using the internal StaysPdpSections GraphQL API.

Prerequisites

  • Browser is open (any page). The API call is made via fetch() in the browser context — no specific page navigation required.
  • No login required — the API endpoint is publicly accessible

Pre-execution Checks

1. Tool Readiness

If browser-act has been confirmed available in the current session → skip this step.

Invoke browser-act via Skill tool to load usage. If installation or configuration issues arise, follow its guidance to resolve then retry.

Capability Components

This Skill's operational boundary = what the user can manually do in their browser. It only reads data already displayed to the user on the page, never bypassing authentication or access controls. JS code is encapsulated in Python files under the scripts/ directory, invoked via eval "$(python scripts/xxx.py {params})". $(...) is bash syntax; it is recommended to use the bash tool for execution.

API: fetch listing detail

eval "$(python scripts/listing-detail.py '{listing_id}')"

Parameters:

  • listing_id: numeric Airbnb listing ID (e.g., 5476930). Extract from listing URL: airbnb.com/rooms/{listing_id}
  • --checkin: check-in date in YYYY-MM-DD format, default: none (price info unavailable without dates)
  • --checkout: check-out date in YYYY-MM-DD format, default: none
  • --adults: number of adult guests, default: 1
  • --locale: response locale, default: en
  • --currency: price currency code, default: USD

Output example:

{
  "id": "5476930",
  "url": "https://www.airbnb.com/rooms/5476930",
  "title": "Bright Studio in Notting Hill",
  "room_type": "ENTIRE_HOME",
  "description": "<p>Welcome to this charming studio...</p>",
  "photos": ["https://a0.muscache.com/im/pictures/...jpeg"],
  "lat": 51.5101,
  "lng": -0.1949,
  "city": "London, England, United Kingdom",
  "amenities": [
    {"name": "Kitchen", "available": true},
    {"name": "Wifi", "available": true}
  ],
  "house_rules": ["Check-in after 3:00 PM", "Checkout before 11:00 AM", "1 guest maximum"],
  "highlights": [
    {"title": "Self check-in", "subtitle": "Check yourself in with the keypad."}
  ],
  "rating_overall": 4.85,
  "review_count": 142,
  "ratings": [
    {"category": "CLEANLINESS", "value": "4.9"},
    {"category": "LOCATION", "value": "4.8"}
  ],
  "bedrooms": [
    {"title": "Bedroom 1", "subtitle": "1 king bed"}
  ]
}

Error handling: If error: true is returned with HTTP 4xx, verify the listing ID is valid by visiting https://www.airbnb.com/rooms/{listing_id} in the browser. If No data in response is returned, the listing may have been removed or the API schema may have changed — check the raw field for details.

Pagination

Not applicable — each call returns complete detail for one listing.

Success Criteria

title is not null AND amenities.length >= 1 AND photos.length >= 1

Known Limitations

  • rating_overall and review_count are null for new listings with no reviews
  • bedrooms array may be empty for studio or hotel-style rooms
  • Host personal details (bio, profile photo, response rate) are not available from this endpoint — they return as deferred sentinel sections
  • Price per night is not included in the response without --checkin and --checkout dates
  • Calling this endpoint too rapidly may trigger rate limiting; add 1-2 second delays between batch requests

Execution Efficiency

  • Batch orchestration: Write a bash script to loop through listing IDs serially with a 1-second delay between calls
  • Test before batch execution: After writing a batch script, test with 1-2 listing IDs to verify output before running full batch
  • Error resumption: Save results per listing ID; resume from the breakpoint on failure

Experience Notes

Path: {working-directory}/browser-act-skill-forge-memories/airbnb-scraper-airbnb-listing-detail.memory.md

Before execution: If the file exists, read it first — it records unexpected situations encountered during past executions (e.g., a strategy has become ineffective); adjust strategy order accordingly.

After execution: If an unexpected situation is encountered (strategy became ineffective, page redesigned, anti-scraping upgraded, better path discovered), append a line: {YYYY-MM-DD}: {what happened} → {conclusion}

Normal execution does not write to the file. Do not record what listing IDs were fetched or how many results were returned — those are task outputs, not experience.

Frequently asked questions about Airbnb Listing Detail

Similar skills