A stay is an accommodation booking. This is the booking/visit view; for
revenue, follow order_id to Orders.
Requires the stays:read permission.
List stays
GET /admin/v0/stays?arrival_from=2026-07-01&arrival_to=2026-07-31
Authorization: Bearer YOUR_API_KEYReturns stays newest-first (by check-in date), in the paginated envelope.
Query parameters
| Parameter | Type | Description |
|---|---|---|
arrival_from | string | ISO 8601 date (YYYY-MM-DD); check-in at/after |
arrival_to | string | ISO 8601 date; check-in at/before |
updated_since | string | ISO 8601 timestamp; for incremental sync |
page | integer | Page index (default 1) |
per_page | integer | Items per page (default 50, max 200) |
Get a stay
GET /admin/v0/stays/{id}
Authorization: Bearer YOUR_API_KEYResponse
{
"data": {
"id": "a1b2…",
"hotel_id": "0c1d…",
"hotel_name": "Trevarefabrikken",
"accommodation_id": "4f5e…",
"accommodation_name": "Carpenters Room",
"room_id": "6a7b…",
"room_identifier": "301",
"check_in_date": "2026-07-04",
"check_out_date": "2026-07-06",
"nights": 2,
"occupancy_adults": 2,
"occupancy_children": 0,
"occupancy_infants": 0,
"status": "Upcoming",
"order_id": "7eeecefd-…",
"customer_id": "8f268b4a-…",
"booked_at": "2026-06-01T10:15:00+02:00",
"created_at": "2026-06-01T10:15:00+02:00",
"updated_at": "2026-07-04T14:00:00+02:00",
"cancelled_at": null
}
}Fields
| Field | Type | Notes |
|---|---|---|
id | string | Stay public id |
hotel_id | string | The hotel (organization) public id |
hotel_name | string | The hotel (organization) name |
accommodation_id | string | Room type (accommodation) public id |
accommodation_name | string | Room type name, e.g. "Carpenters Room" |
room_id | string | Assigned physical room public id |
room_identifier | string | Assigned room identifier, e.g. "301" |
check_in_date | string | Arrival date |
check_out_date | string | Departure date |
nights | number | Number of nights |
occupancy_adults | number | Adults |
occupancy_children | number | Children |
occupancy_infants | number | Infants |
status | string | Display label (see note below) |
order_id | string | The order this stay belongs to (revenue) |
customer_id | string | Pseudonymous customer id (no PII) |
booked_at | string | When the customer booked. Earlier than created_at for imported and OTA bookings |
created_at | string | When the stay reached SERVOS |
updated_at | string | Last change to the stay |
cancelled_at | string | When it was cancelled; null if not cancelled |
status is a human-readable label — one of Upcoming, Arriving today,
In-house, Departing today, Checked out, No-show, Cancelled. It's for
display, not logic: see
Conventions → Status labels.