Airbnb Calendar Availability Scraper — Listing Calendar avatar

Airbnb Calendar Availability Scraper — Listing Calendar

Pricing

from $2.80 / 1,000 calendar days

Go to Apify Store
Airbnb Calendar Availability Scraper — Listing Calendar

Airbnb Calendar Availability Scraper — Listing Calendar

Scrape Airbnb listing calendars day by day: available, bookable, check-in/out and min nights. Input room URLs or IDs plus a date range; one Dataset row per night. For occupancy pipelines and availability research — not a city search.

Pricing

from $2.80 / 1,000 calendar days

Rating

0.0

(0)

Developer

Noah Adler

Noah Adler

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

13 days ago

Last modified

Share

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

Airbnb calendar scraper / availability API: get day-by-day availability 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 · Clean CSV/JSON for occupancy pipelines


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
4Keep bookable / check-in / min-nights flags when the calendar exposes them

What you get

Availability

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

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 false (prices are almost never on the public calendar)
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": false
}

Output example

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

Output fields

FieldTypeNotes
listingIdstringNumeric Airbnb id
listingUrlstringCanonical rooms URL
datestringYYYY-MM-DD
availablebooleanFree to book
bookableboolean|nullReservable if the calendar says so
minNightsnumber|nullMinimum stay
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 occupancy tools with night-level availability
  • QA that a listing’s open dates match your PMS

Limitations

  • Not a search-by-city scraper.
  • This Actor is an availability calendar. Airbnb’s calendar API in this stack does not return reliable nightly amounts.
  • 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.

Does this return nightly prices?
No. Use it for availability / calendar flags. price may stay null.

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


Keywords

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