Skip to content

Listings

The listings preset routes are shortcuts over /v1/search that pin a filter flag so you don’t have to remember it. They accept the same body as /v1/search and return the same response shape.

Endpoints

POST /v1/listings/superhost

Returns only stays whose host.is_superhost === true. The upstream listing endpoint doesn’t filter by superhost natively, so we drop non-matching rows in the worker. This means the returned count may be smaller than maxItems, and we only charge credits for the rows we actually return.

Terminal window
curl -X POST https://api.stayingapi.com/v1/listings/superhost \
-H "Authorization: Bearer sk_live_..." \
-H "content-type: application/json" \
-d '{ "location": "Lisbon, Portugal", "maxItems": 25 }'

POST /v1/listings/luxury

Pins a priceMin of $300/night (or your value if it’s higher). Filtering is enforced upstream, so count reliably equals what you asked for.

Terminal window
curl -X POST https://api.stayingapi.com/v1/listings/luxury \
-H "Authorization: Bearer sk_live_..." \
-H "content-type: application/json" \
-d '{ "location": "Aspen, CO", "maxItems": 25 }'

POST /v1/listings/instant-book

Tags the search for instant-book intent. The upstream listing endpoint does not currently expose an instant-book filter, so results are not actually filtered yet — the response includes meta.warning so you can detect the soft-filter state. Treat this as experimental.

Terminal window
curl -X POST https://api.stayingapi.com/v1/listings/instant-book \
-H "Authorization: Bearer sk_live_..." \
-H "content-type: application/json" \
-d '{ "location": "Austin, TX", "maxItems": 25 }'

Request body

Same shape as /v1/search. All location, date, capacity, and price knobs work identically. maxItems defaults to 50 (sync limit).

Response shape

Identical to /v1/search — an array of canonical Stay rows plus meta pagination.

{
"data": [ /* Array<Stay> */ ],
"meta": {
"count": 25,
"limit": 25,
"has_more": false,
"next_page_token": null
},
"request_id": "req_..."
}

Hard caps

Listings presets are sync-only and capped at maxItems = 50. For larger result sets, call /v1/search directly and replicate the filter logic yourself.

Next