Stay search prices one date range for every public accommodation. Use it to render a room list with prices, rooms left and the free cancellation deadline.
All endpoints are scoped to the organization that owns the API key:
/store/v0
Search stays
GET /store/v0/accommodations/stay_searchQuery parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
check_in | date (YYYY-MM-DD) | yes | First night. Must not be in the past. |
check_out | date (YYYY-MM-DD) | yes | Departure date. Must be after check_in. |
adults | integer | no | Defaults to 2. |
children | integer | no | Defaults to 0. |
infants | integer | no | Defaults to 0. |
accommodation_ids[] | string | no | Limit the search to these accommodations. Defaults to all public accommodations. |
Response
{
"stay_search": {
"check_in": "2026-10-02",
"check_out": "2026-10-04",
"adults": 2,
"children": 0,
"infants": 0,
"offers": [
{
"accommodation_id": "2f1b2d7c-6a51-4d35-9b5a-9b0c3b8efb2a",
"bookable": true,
"rooms_left": 2,
"nights": 2,
"total": { "cents": 360000, "currency": "NOK", "amount": 3600.0, "formatted": "3 600 NOK", "abbreviated": "3.6k NOK" },
"nightly_average": { "cents": 180000, "currency": "NOK", "amount": 1800.0, "formatted": "1 800 NOK", "abbreviated": "1.8k NOK" },
"free_cancellation_until": "2026-09-25T15:00:00+02:00"
}
]
}
}bookableisfalsewhen no room is free for the whole range, the party does not fit, or a restriction blocks the dates.total,nightsandnightly_averageare absent when the accommodation has no price for the range.totalandnightly_averageinclude pricing rules that depend on the stay's length, so the nightly average can differ from single-night prices.free_cancellation_untilis absent when a fee always applies or the deadline has passed.
Errors
An invalid search returns 422 with the failing fields in details:
{
"error": "Check out must be greater than 2026-10-02",
"details": { "check_out": ["must be greater than 2026-10-02"] }
}