Endpoint reference
Availability
Day-by-day availability for a known listing over a date window.
/v1/availabilityDay-by-day availability for a known listing over a date window.
Live calls are asynchronous — you poll for the result
stay_test_ key) and from live cache hits. A live (stay_live_) call that has to scrape returns HTTP 202 with a data.jobId instead of blocking. Poll GET /v1/jobs/{jobId} (always free) until data.status is completed, then read the payload below from data.result (not data); the reconstructed meta — credits, platformResults, warnings — sits at the top level. Jobs usually finish in tens of seconds but can run several minutes (240s+), so budget your wait. The @stayingapi/sdk auto-polls a 202 to completion and hands you this exact synchronous-looking envelope — the simplest way to consume the API. See the response envelope for all three shapes.Get day-by-day availability for a known listing (or a batch of listings) on one platform over a date window. Each day reports whether it is available, its minimum-night requirement, and whether check-in / check-out / booking is allowed.
Parameters
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
platform | enum | Yes | — | Single platform (not a fan-out endpoint). |
listingId | string | One of | — | A single listing id on platform. |
listingIds[] | string[] | One of | — | A batch of listing ids on platform. |
url | string | One of | — | Full listing URL (alternative to an id). |
startDate | date | Yes | — | YYYY-MM-DD; not in the past. |
endDate | date | Yes | — | After startDate; window ≤ 365 days. |
onlyAvailable | boolean | No | false | If true, only bookable dates are returned. |
Request & response
GET /v1/availability?platform=airbnb&listingId=42307961&startDate=2026-07-13&endDate=2026-07-20
Host: api.stayingapi.com
Authorization: Bearer stay_live_…{
"data": [
{
"platform": "airbnb",
"listingId": "42307961",
"dates": [
{ "date": "2026-07-13", "available": true, "minNights": 7, "checkIn": true, "checkOut": false, "bookable": true },
{ "date": "2026-07-14", "available": true, "minNights": 7, "checkIn": false, "checkOut": false, "bookable": true }
]
}
],
"meta": {
"requestId": "req_av…",
"platforms": ["airbnb"],
"cached": false, "partial": false,
"creditsCharged": 5, "currency": "USD", "pagination": null,
"platformResults": [
{ "platform": "airbnb", "status": "ok", "creditsCharged": 5, "cached": false, "count": 1 }
],
"warnings": []
}
}Code samples
The same call in every language that matters — all returning the identical unified schema.
curl -sS "https://api.stayingapi.com/v1/availability?platform=airbnb&listingId=42307961&startDate=2026-07-13&endDate=2026-07-20" \
-H "Authorization: Bearer $STAYINGAPI_KEY"Try it
Run this endpoint against the deterministic sandbox right now — a real 200, zero credits, no sign-up. The credit cost of the equivalent live call is from 5 credits / listing.
/v1/availabilityRuns against the deterministic Airbnb sandbox fixture — a real 200, zero credits.
Run the call to see a live, deterministic sandbox response.
curl -sS "https://api.stayingapi.com/v1/availability" \
-H "Authorization: Bearer $STAYINGAPI_KEY"Workflows using this
Ready-made automations built on /v1/availability — an importable n8n workflow + a portable AI-agent skill each.
- Property availability watch → alert — Watch a listing over a date window and get alerted the moment a wanted date becomes available.
- New-inventory monitor → CRM lead feed — Re-run a saved search on a schedule, diff it against the last run, and sync only the newly-listed properties into a CRM or Sheet as leads.
- Competitor rate & availability benchmark → report — Benchmark your listing’s rate and availability against a defined comp-set and get a weekly position report.
- Agent-native scouting via MCP — Connect StayingAPI as a Claude/Cursor MCP connector and scout stays, compare prices and check availability conversationally — no keys pasted.
- Event / peak-date demand radar — Watch supply and prices around an event or peak date-window in a city and get alerted when demand tightens.
Notes & gotchas
Window cap: 365 days