CalryOTA Docs
Listing

Get units for a listing

Retrieves the units associated with a listing, including auto-generated units for single-unit properties.

GET
/api/v1/listing/{id}/units

Authorization

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

In: header

Path Parameters

id*string

Unique identifier of the listing

Query Parameters

displayCurrency?string

Currency code for displaying pricing (ISO 4217)

integrationAccountID?string

Filter listings by integration account ID

status?string

Filter listings by status

Value in"ACTIVE" | "INACTIVE"
listingType?string

Filter by listing source

Value in"imported" | "self"
sort?string

Ordering of the result. 'rank' returns the requesting tenant's ranked listings first (rank ascending), then unranked ones in the default order — the same order the booking site's search uses (no effect on channel-key requests). 'name' orders alphabetically by listing name. Omitted: the default recently-updated-first order.

Value in"rank" | "name"
search?string

Case-insensitive text search over the listing name and internal name. Whitespace-separated words must all match, in any order ("comfort double studio" matches "Studio Modern Comfort Double"). Applied before pagination, so meta.total counts matches.

Lengthlength <= 100
listingScope?string

Ownership scope: 'self' hides network-imported listings; 'all' (default) includes them.

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

Collection the listing must belong to (a deployed site’s catalog scope). Unknown or foreign collections yield 404.

Formatuuid
guests?number

Minimum number of guests the listing can accommodate

Range1 <= value <= 100
bedroomCount?number

Number of bedrooms

Range0 <= value <= 20
bathroomCount?number

Number of bathrooms

Range0 <= value <= 20
amenities?array<string>

Array of amenity IDs to filter by

petFriendly?boolean

Filter for pet-friendly listings

propertyType?array<string>

Filter by listing property type values such as Villa, Apartment, or House

tags?array<string>

Filter by tag IDs

location?string

Location coordinates in format "latitude,longitude"

radius?number

Search radius in kilometers

Range0.1 <= value <= 100
page?number

Page number for pagination

Range1 <= value
limit?number

Number of items per page

Range1 <= value <= 100

Header Parameters

x-calry-tenant-id?string

Optional tenant ID to specify which tenant to operate as. If not provided, the default tenant will be used.

Response Body

application/json

application/json

curl -X GET "https://example.com/api/v1/listing/123e4567-e89b-12d3-a456-426614174000/units"
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "providerUnitID": "unit-123",
    "name": "Ocean View Suite",
    "description": "Beautiful suite with ocean views",
    "inventoryCount": 2,
    "maxOccupancy": 4,
    "bedroomCount": 2,
    "bathroomCount": 2,
    "basePrice": 200,
    "currency": "USD",
    "isAutoGenerated": false,
    "status": "ACTIVE",
    "roomType": "Deluxe",
    "amenities": [
      {
        "name": "Balcony",
        "description": "Private balcony",
        "type": "outdoor"
      },
      {
        "name": "Mini Bar",
        "description": "Stocked mini bar",
        "type": "amenity"
      }
    ],
    "pictures": [
      {
        "url": "https://example.com/photo1.jpg",
        "description": "Suite interior"
      },
      {
        "url": "https://example.com/photo2.jpg",
        "description": "Balcony view"
      }
    ],
    "createdAt": "2025-01-01T00:00:00.000Z",
    "updatedAt": "2025-01-02T00:00:00.000Z"
  }
]
{
  "timestamp": "2025-03-05T11:45:49.631Z",
  "path": "<URL_PATH>",
  "message": "Authentication failed",
  "details": []
}
Empty