Airbnb Calendar / Availability API avatar

Airbnb Calendar / Availability API

Pricing

from $4.00 / 1,000 calendar days

Go to Apify Store
Airbnb Calendar / Availability API

Airbnb Calendar / Availability API

Get day-by-day Airbnb availability (and nightly price when available) for one or many listings. Input URLs or IDs + date range; output one Dataset row per day. Clean schema export for research, pricing and lead workflows.

Pricing

from $4.00 / 1,000 calendar days

Rating

0.0

(0)

Developer

Noah Adler

Noah Adler

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Airbnb Calendar / Availability API — Day-by-Day Listing Calendar

Airbnb calendar scraper / availability API: get day-by-day availability (and nightly price when Airbnb exposes it) for one or many listings. Input URLs or IDs + date range → one Dataset row per day.

Built for hosts, revenue managers and STR tools that already have listing IDs — not a city search scraper (that niche is crowded). This Actor focuses on calendar depth.

Scope: Availability calendar only. Does not search Airbnb by city. Max 50 listings / run and 366 days per listing in v0.1.

Why this Actor: Per-day rows · URLs or numeric IDs · Currency / locale · Pricing when available · Clean CSV/JSON for pricing models


Table of contents

  1. What this Actor does
  2. What you get
  3. Features
  4. Input
  5. Output example
  6. Output fields
  7. Quick start (API)
  8. Use cases
  9. Limitations
  10. FAQ
  11. Keywords

What this Actor does

StepAction
1Resolve each Airbnb URL / ID to a listing
2Fetch public availability calendar months
3Emit one row per night in your date range
4Attach nightly price when present in the calendar payload

What you get

Availability

  • date, available (bool), listing id / URL
  • Blocked / booked nights as unavailable

Pricing (when exposed)

  • Nightly amount + currency
  • Useful for ADR pipelines when price is filled

Run meta

  • scrapedAt timestamp for every row

Features

CapabilityDetail
Listing-firstURLs (/rooms/{id}) or raw IDs
Day grainOne Dataset row per date — easy filters in Sheets / BI
Date windowstartDate / endDate (ISO)
Currency / localee.g. EUR + es
BatchUp to 50 listings per run

Input

FieldRequiredDescription
startUrlsYesAirbnb listing URLs or IDs
startDateNoYYYY-MM-DD (default: today UTC)
endDateNoYYYY-MM-DD (default: start + 90d)
currencyNoDefault EUR
localeNoDefault es
includePricingNoDefault true
proxyConfigurationNoApify Proxy recommended if blocked

Example

{
"startUrls": [
"https://www.airbnb.com/rooms/860663943931949474"
],
"startDate": "2026-10-01",
"endDate": "2026-12-31",
"currency": "EUR",
"locale": "es",
"includePricing": true
}

Output example

{
"listingId": "860663943931949474",
"listingUrl": "https://www.airbnb.com/rooms/860663943931949474",
"date": "2026-10-05",
"available": true,
"price": 142,
"currency": "EUR",
"scrapedAt": "2026-09-19T20:00:00.000Z"
}

Output fields

FieldTypeNotes
listingIdstringNumeric Airbnb id
listingUrlstringCanonical rooms URL
datestringYYYY-MM-DD
availablebooleanFree to book
pricenumber|nullNightly when provided
currencystring|nullISO code
scrapedAtstringISO timestamp

Quick start (API)

from apify_client import ApifyClient
client = ApifyClient("<YOUR_TOKEN>")
run = client.actor("YOUR_USERNAME/airbnb-calendar-availability").call(
run_input={
"startUrls": ["860663943931949474"],
"startDate": "2026-10-01",
"endDate": "2026-10-31",
"currency": "EUR",
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

Use cases

  • Build occupancy / ADR models (pair with our Occupancy Actor)
  • Monitor competitor calendars for a fixed listing set
  • Feed pricing tools with night-level availability
  • QA that a listing’s open dates match your PMS

Limitations

  • Not a search-by-city scraper.
  • Prices are often missing on blocked nights or some markets.
  • Airbnb anti-bot can require proxy on some IPs.
  • Respect Airbnb Terms of Service.

FAQ

Can I pass city search URLs?
No — use listing room URLs or IDs only.

Why is price null?
Airbnb often omits price on unavailable days or in some locales.

Max range?
366 days from startDate in v0.1.


Keywords

airbnb calendar, airbnb availability api, airbnb availability scraper, listing calendar, nightly availability, airbnb pricing calendar, str calendar api