Dedicated ScrapersAirbnb Scraper API
Airbnb logoDedicated Airbnb API

Airbnb Scraper API — Stays, Availability & Experiences

The fastest way to start scraping Airbnb at scale. Structured JSON for listing search with live pricing, full property detail, 12-month availability calendars, paginated reviews, and experiences — worldwide, with anti-bot bypass built in.

6Endpoints
12 moAvailability calendar
GlobalAny market
From $0.75Per 1K requests

No credit card required · PAYG credits never expire

Get Airbnb Listing
# Get full detail for an Airbnb listing
import scrapebadger

client = scrapebadger.ScrapeBadger("sb_live_...")

listing = client.airbnb.listing(
    room_id="20669368"
)
200 OK1.9s · 5 credits
{
  "room_id": "20669368",
  "title": "Charming barn conversion",
  "room_type": "Entire home/apt",
  "person_capacity": 2,
  "rating": 4.8,
  "review_count": 214,
  "is_superhost": true,
  "amenities": [ "Wifi", "Kitchen", "..." ],
  "latitude": 52.084, "longitude": -1.768
}
API Reference

Airbnb API — 6 Dedicated Endpoints

Structured JSON responses with normalized data models. No HTML parsing. No proxy management.

GET
/v1/airbnb/search
Search stays by place name or map bounding box, with dates, guests, price and property filters
5 cr / req
GET
/v1/airbnb/listings/{room_id}
Amenities, house rules, host profile, ratings breakdown, coordinates and photos
5 cr / req
GET
/v1/airbnb/listings/{room_id}/calendar
Day-by-day availability up to 12 months — bookable dates, check-in/out windows, min/max nights
5 cr / req
GET
/v1/airbnb/listings/{room_id}/reviews
Paginated guest reviews with reviewer, rating, date, text and host response
5 cr / req
GET
/v1/airbnb/experiences
Search Airbnb Experiences by location — title, duration, rating, price and coordinates
5 cr / req
GET
/v1/airbnb/experiences/{experience_id}
Full experience detail — description, rating, host, location and photos
5 cr / req
Coverage

Stays and Experiences, Worldwide

Search any city or region by name, or target a precise map area with a bounding box. Set currency and locale per request — the same data model everywhere.

Stays searchLive nightly & total pricing
AvailabilityDay-by-day, up to 12 months
ReviewsPaginated, with host replies
ExperiencesSearch + full detail
Any currency, any locale: Pass currency (USD, EUR, GBP, …) to control price display and locale for localized text. Search geocodes free-text place names server-side, or accepts a precise ne/sw bounding box for map-driven crawls.
Why ScrapeBadger

Built for Reliability at Scale

ScrapeBadger's Airbnb Scraper API handles everything Airbnb throws at automated requests — so your pipeline keeps running.

Stays + experiences

One API covers Airbnb stays and experiences: listing search with live pricing, full property detail, availability calendars, paginated reviews, plus experiences search and detail.

Real availability calendars

The calendar endpoint returns day-by-day availability for up to 12 months — bookable dates, check-in/out windows, and minimum/maximum nights per date, straight from Airbnb.

Rich listing data

Every listing ships title, description, room type, guest capacity, full amenity and house-rule lists, host profile, per-category ratings breakdown, GPS coordinates, and all photos.

Search anywhere

Pass a plain place name (geocoded server-side) or a precise map bounding box, with check-in/out dates, guests, price, bedrooms, beds, bathrooms and room-type filters. Paginate with a cursor.

Pay per success only

Credits are only deducted for successful responses. If Airbnb returns an error or a request is blocked, no credits are consumed — and no Airbnb account or API key is needed.

SDKs for 12 languages

Official SDKs for 12 languages — Python, Node.js, Go, Rust, PHP, C#, Java, Kotlin, Ruby, Swift, Dart, C++ — generated from one OpenAPI spec, or use the REST API directly.

Pricing

Pay Per Request. Credits Never Expire.

You only pay for successful responses — failed requests are always free. PAYG credits never expire; volume subscription tiers reduce per-credit cost further.

Free trial
1,000 credits free
= 200 requests
Credits expire
Never
Buy once, use anytime
Failed requests
Always free
Pay for success only
Live cost estimator
Credits per request5
Total credits needed5,000
Loading plans…
Code Example

Simple Integration. Any Language.

Get started in minutes with Node.js, Python, or plain HTTP requests.

The scrapebadger Node.js library wraps the Airbnb API with typed methods. Install with npm install scrapebadger, then start scraping Airbnb in a few lines of code.

Node.js — Search + Calendar
import ScrapeBadger from 'scrapebadger'

const client = new ScrapeBadger({
  apiKey: 'sb_live_...'
})

// Search stays in Paris for specific dates
const results = await client.airbnb.search({
  location: 'Paris, France',
  checkIn: '2026-10-10',
  checkOut: '2026-10-13',
  adults: 2,
})

// Get a 12-month availability calendar for the first result
const first = results.listings[0]
const calendar = await client.airbnb.calendar({
  roomId: first.roomId,
  months: 12,
})
console.log(first.title, calendar.months.length)
FAQ

Frequently Asked Questions

Common questions about scraping Airbnb with the API — Node.js, Python, or REST.

What data does the Airbnb Scraper API return?

Search returns listing cards with room_id, title, rating and review count, nightly/total price, badges, coordinates and photos, plus a next-page cursor. Listing detail adds the full description, amenities, house rules, host profile, a per-category ratings breakdown and all photos. The calendar endpoint returns day-by-day availability for up to 12 months, and the reviews endpoint returns paginated guest reviews with host responses. Experiences search and detail cover Airbnb Experiences.

Which countries does the API cover?

Airbnb is global and so is the API — search any city or region worldwide by name, or pass a map bounding box for precise areas. Set the currency parameter (USD, EUR, GBP, …) to control price display and locale for localized text. Defaults are USD and English.

How do I get a listing’s availability?

Call /v1/airbnb/listings/{room_id}/calendar with a start month/year and the number of months (up to 12). Each day returns available, bookable, availableForCheckin, availableForCheckout and min/max nights. The room_id comes from a search result or an Airbnb room URL (airbnb.com/rooms/{id}).

What is the pricing for the Airbnb Scraper API?

Every endpoint — search, listing detail, availability calendar, reviews, experiences search and experience detail — costs 5 credits per request. Health checks are free. PAYG credits never expire; monthly subscriptions reduce the per-credit cost further. Failed requests are always free.

How do I scrape Airbnb with Node.js?

Install with `npm install scrapebadger`, initialise the client with your API key, then call client.airbnb.search({ location: "Paris, France", checkIn: "2026-10-10", checkOut: "2026-10-13" }) or client.airbnb.calendar({ roomId: "20669368", months: 12 }). The SDK returns typed objects, and search results expose pagination via nextPageCursor.

Plans & subscriptions

Bigger volume? Save up to 64%

Per-request credit costs are listed above. For higher monthly volume, subscription tiers reduce the per-credit rate substantially. All Airbnb endpoints — search, listings, calendar, reviews, and experiences — included on every plan.

Get started

Start Scraping Airbnb Today

1,000 free credits. No credit card. Get your API key in under a minute.

PAYG credits never expire · Pay only for successful requests · Stays & experiences