Airbnb scraper

ExtractHub extractors are versioned web scrapers: each one is a saved scraper for one kind of page that returns structured JSON through an API. For Airbnb (airbnb.com) there is one public extractor: Airbnb - listing page. Together they return fields such as listingId, name, url, propertyType, roomType, headline, overview, guests and 17 more fields. Call one with your API key and a pinned extractor_id, from the REST API, the Batch API or an AI agent over MCP.

Airbnb scraper extractor

  • airbnb.com · @extracthub1/airbnb-listing@1 (v1.0.0)

    Airbnb listing page (airbnb.com/rooms/<id>): listing id, name, property and room type, guests / bedrooms / beds / baths, location and neighborhood, coordinates, rating, reviews count, Guest favorite, category ratings (cleanliness, accuracy, check-in, communication, location, value), highlights, description, host (name, Superhost, verified, rating, reviews, years hosting, response rate and time), amenities by group, house rules, safety and property notes, photos. No prices (Airbnb loads them after the page).

    Fields: listingId , name , url , propertyType , roomType , headline , overview , guests , location , neighborhood and 15 more

    Airbnb - listing page scraper: fields, versions and examples →

How to call the Airbnb scraper API

Every call needs your API key (X-API-Key) and a pinned extractor_id. This example uses @extracthub1/airbnb-listing@1 (Airbnb - listing page); open an extractor's page for its batch, Python and Node examples.

REST: realtime extract
curl -X POST "https://api.extracthub.io/api/extractor/extract" \
  -H "X-API-Key: $EXTRACTHUB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "extractor_id": "@extracthub1/airbnb-listing@1",
    "target": { "url": "https://airbnb.com/..." }
  }'
MCP: ask your agent (server https://api.extracthub.io/mcp), which calls the extract tool
Use ExtractHub to extract https://airbnb.com/... with @extracthub1/airbnb-listing@1
{
  "tool": "extract",
  "arguments": {
    "extractor_id": "@extracthub1/airbnb-listing@1",
    "url": "https://airbnb.com/..."
  }
}

See the web scraping API reference and the web scraping MCP server setup.

Need another Airbnb page type?

Build your own Airbnb scraper with an AI agent and the extractor builder skill, or in ExtractHub Studio. It stays private until you release it.

Airbnb scraper: frequently asked questions

Is there a ready-made Airbnb scraper?

Yes. ExtractHub lists one public extractor for airbnb.com. An extractor is a versioned web scraper for one kind of page: its owner released it as an immutable version with an output schema, and you call that version with your own API key.

What data can I scrape from Airbnb?

Airbnb - listing page returns listingId, name, url, propertyType, roomType, headline and 19 more. Every field is listed on the extractor's page with a sample response.

How do I call the Airbnb scraper API?

Send GET or POST https://api.extracthub.io/api/extractor/extract with your API key in the X-API-Key header, extractor_id=@extracthub1/airbnb-listing@1 and the URL of a airbnb.com page as the target. For many URLs use POST https://api.extracthub.io/api/extractor/batch. AI agents call the same extractor through the extract tool of the ExtractHub MCP server at https://api.extracthub.io/mcp.

Can I build my own Airbnb scraper?

Yes. Build an extractor for any Airbnb page type in ExtractHub Studio, or let an AI agent such as Claude Code build, test and release it with the open-source extractor builder skill. New extractors are private until you release them.