CalryOTA Docs
Availability

Get units free for a whole date range, grouped by room type

Returns, per room type, the units available on EVERY night of the requested stay. Use this for multi-room booking quantities — the day-level availability endpoint (including aggregate mode) cannot answer this, because a unit free on only some of the nights would still be counted.

GET
/api/v1/availability/{listingID}/available-units

Authorization

x-calry-api-key
x-calry-api-key<token>

In: header

Path Parameters

listingID*string

Unique identifier of the listing

Query Parameters

checkIn*string

First night of the stay (ISO date)

Formatdate-time
checkOut*string

Departure date, exclusive (ISO date)

Formatdate-time
listingScope?string

Ownership scope: 'self' rejects network-imported listings (404); 'all' (default) allows them. Injected server-side by scoped booking sites.

Value in"self" | "all"
scopeCollectionId?string

Collection the listing must belong to (a deployed site’s catalog scope); 404 when the listing is outside it.

Formatuuid

Header Parameters

x-calry-tenant-id?string

Optional tenant ID to specify which tenant to operate as. Controls access to listings and their availability. If not provided, the default tenant will be used.

Response Body

application/json

curl -X GET "https://example.com/api/v1/availability/123e4567-e89b-12d3-a456-426614174000/available-units?checkIn=2026-09-10&checkOut=2026-09-13"
{
  "roomTypes": [
    {
      "roomType": "Deluxe Stay at Hayashi",
      "unitIds": [
        "3830fa58-8d6e-417f-8191-ebc7b3f1213f"
      ],
      "count": 5,
      "minimumNights": 3
    }
  ]
}
Empty
Empty
Empty