---
title: "Get a list of all available unit groups in a property"
method: GET
path: "/availability/v1/unit-groups"
tags: ["Availability"]
---

# Get a list of all available unit groups in a property

`GET /availability/v1/unit-groups`

Get the list of available unit groups for a specific property and time period.<br>You must have this scope: 'availability.read'.

## Query parameters

- `propertyId` string, required
- `from` string, date, required
- `to` string, date, required
- `timeSliceTemplate` 'DayUse' | 'OverNight'
- `unitGroupTypes` string[]
- `timeSliceDefinitionIds` string[]
- `unitGroupIds` string[]
- `adults` integer
- `childrenAges` integer[]
- `onlySellable` boolean
- `pageNumber` integer
- `pageSize` integer

## Response `200`

Return all available unit groups.

- AvailableUnitGroupListModel
  - `timeSlices` UnitGroupAvailabilityTimeSliceItemModel[], required — List of time slices
    - `from` string, date-time, required — Date and time the time slice begins<br />A date and time (without fractional second part) in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `to` string, date-time, required — Date and time the time slice ends<br />A date and time (without fractional second part) in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `property` PropertyAvailabilityModel, required
      - `physicalCount` integer, required — The number of units physically existing on the property
      - `houseCount` integer, required — The number of units physically existing excluding the ones which are out of inventory
      - `soldCount` integer, required — The number of sold units including units picked up from blocks
      - `occupancy` number, double, required — The percent value indicating the occupancy
      - `sellableCount` integer, required — The number of units available for selling. This is the house count excluding the out of order and the already sold units. Any defined overbooking limits are also already considered
      - `allowedOverbookingCount` integer, required — The number of units which are allowed for overbooking
      - `houseOverbookingLimit` integer, nullable — The overbooking limit set on the property level.
      - `maintenance` MaintenanceModel, required
        - `outOfService` integer, required — The number of units which are out of service
        - `outOfOrder` integer, required — The number of units which are out of order
        - `outOfInventory` integer, required — The number of units which are out of inventory
      - `block` BlockUnitsModel, required
        - `definite` integer, required — The number of units which are definitely blocked
        - `tentative` integer, required — The number of units which are tentatively blocked
        - `optional` integer, required — The number of units which are optionally blocked
        - `optionalDeducting` integer, required — The number of units which are optionally blocked and reduce availability
        - `picked` integer, required — The number of units which are picked from blocked
        - `remaining` integer, required — The number of units which are not yet picked
    - `unitGroups` UnitGroupAvailabilityItemModel[], required — List of unit group availabilities for this time slice
      - `unitGroup` EmbeddedUnitGroupModel, required
        - `id` string, required — The unit group id
        - `code` string, nullable — The code for the unit group that can be shown in reports and table views
        - `name` string, nullable — The name for the unit group
        - `description` string, nullable — The description for the unit group
        - `type` 'BedRoom' | 'MeetingRoom' | 'EventSpace' | 'ParkingLot' | 'Other', nullable — The unit group type
      - `physicalCount` integer, required — The number of units physically existing on the property
      - `houseCount` integer, required — The number of units physically existing excluding the ones which are out of inventory
      - `soldCount` integer, required — The number of sold units including units picked up from blocks
      - `occupancy` number, double, required — The percent value indicating the occupancy
      - `availableCount` integer, required — The number of units still available. This is the house count excluding the out of order units minus the already sold units.
      - `sellableCount` integer, required — The number of units available for selling already considering any defined overbooking limits. This number is the minimum of sellable units for the whole property (or house-level overbooking, if defined) and the sellable units of this unit group. If there are only 3 units sellable on the property, but 5 units sellable for this unit group, the sellable count will be 3. This situation can occur if another unit group or the whole house is overbooked.
      - `allowedOverbookingCount` integer, required — The number of units allowed for overbooking.
      - `maintenance` MaintenanceModel, required
        - `outOfService` integer, required — The number of units which are out of service
        - `outOfOrder` integer, required — The number of units which are out of order
        - `outOfInventory` integer, required — The number of units which are out of inventory
      - `block` BlockUnitsModel, required
        - `definite` integer, required — The number of units which are definitely blocked
        - `tentative` integer, required — The number of units which are tentatively blocked
        - `optional` integer, required — The number of units which are optionally blocked
        - `optionalDeducting` integer, required — The number of units which are optionally blocked and reduce availability
        - `picked` integer, required — The number of units which are picked from blocked
        - `remaining` integer, required — The number of units which are not yet picked
  - `count` integer, required — Total count of items

## Other responses

- `204` — There are no available unit groups matching your criteria.
- `400` — Bad request.
- `401` — You are unauthorized.
- `403` — Forbidden.
- `404` — The Request-URI could not be found.
- `422` — Validation errors in the request body or query params.
- `499` — Client closed request.
- `500` — An unexpected error occurred.
- `503` — The server is currently unavailable. Please try later.

---

[API](https://skmtc.dev/apaleo/apis/apaleo-availability-api.md) · [All operations](https://skmtc.dev/apaleo/apis/apaleo-availability-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apaleo/apaleo-availability-api/revisions/efbf2d427dd7/schema)
