---
title: "Returns a list of all group bookings, filtered by the specified parameters."
method: GET
path: "/booking/v0-nsfw/groups"
tags: ["Group"]
---

# Returns a list of all group bookings, filtered by the specified parameters.

`GET /booking/v0-nsfw/groups`

## Request

- Base URL: `https://api.apaleo.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.apaleo.com/booking/v0-nsfw/groups`
- Auth: OAuth 2
  - Implicit: `https://identity.apaleo.com/connect/authorize`
  - Scopes: `groups.read`, `reservations.read`, `reservations.manage`, `admin`

Returns a list of all group bookings, filtered by the specified parameters.
If no parameters are set, returns the entire list<br>You must have at least one of these scopes: 'groups.read, reservations.read, reservations.manage'.<br>For fine-grained clients, you must have this permission: 'core.groups.read'.

## Query parameters

- `textSearch` string
- `propertyIds` string[]
- `from` string, date-time
- `to` string, date-time
- `statuses` string[]
- `hasActivePaymentAccount` boolean
- `commercialStatuses` string[]
- `operationalStatuses` string[]
- `pageNumber` integer
- `pageSize` integer
- `sort` string[]
- `expand` string[]

## Response `200`

OK

- GroupListModel
  - `groups` GroupItemModel[], required
    - `id` string, required: Group id
    - `from` string, date-time, nullable: Start date and time of the earliest block for this group<br />A date and time 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, nullable: End date and time of the latest block for this group<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `name` string, required: Name of the group
    - `booker` BookerModel
      - `title` 'Mr' | 'Ms' | 'Dr' | 'Prof' | 'Mrs' | 'Other', nullable: Title of the booker
      - `gender` 'Female' | 'Male' | 'Other' | 'Unknown', nullable: Gender of the booker
      - `firstName` string, nullable: First name of the booker
      - `middleInitial` string, nullable: Middle initial of the booker
      - `lastName` string, required: Last name of the booker
      - `email` string, nullable: Email address of the booker
      - `phone` string, nullable: Phone number of the booker
      - `address` PersonAddressModel
        - `addressLine1` string, nullable
        - `addressLine2` string, nullable
        - `postalCode` string, nullable
        - `city` string, nullable
        - `regionCode` string, nullable: ISO 3166-2 region code including the country prefix (e.g. US-CA, DE-BY).
        - `countryCode` string, nullable
      - `nationalityCountryCode` string, nullable: The booker's nationality, in ISO 3166-1 alpha-2 code
      - `identificationNumber` string, nullable: The booker's identification number for the given identificationType.
      - `identificationIssueDate` string, date, nullable: The issue date of the booker's identification document.
      - `identificationExpiryDate` string, date, nullable: The expiry date of the booker's identification document.
      - `identificationType` 'SocialInsuranceNumber' | 'PassportNumber' | 'IdNumber' | 'DriverLicenseNumber' | 'VisaNumber' | 'ForeignerIdentityNumber' | 'TaxIdentificationNumber' | 'Other', nullable: The type of the identificationNumber
      - `company` PersonCompanyModel
        - `name` string, nullable: Name of the company
        - `taxId` string, nullable: Tax or Vat ID of the company
      - `preferredLanguage` string, nullable: ISO 639-1 language code (the language, not the country code): e.g. vi not vn, ja not jp, cs not cz, zh not cn.
      - `birthDate` string, date, nullable: Birth date
      - `birthPlace` string, nullable: The place of birth
    - `comment` string, nullable: Additional information and comments
    - `bookerComment` string, nullable: Additional information and comment by the booker
    - `paymentAccount` PaymentAccountModel: DEPRECATED: PaymentAccountModel is deprecated, use `/booking/v1/payment-accounts` instead. This model will be removed on May 15, 2026.
      - `accountNumber` string, nullable: The account number (e.g. masked credit card number or last 4 digits)
      - `accountHolder` string, nullable: The account holder (e.g. card holder)
      - `expiryMonth` string, nullable: The credit card's expiration month
      - `expiryYear` string, nullable: The credit card's expiration year
      - `paymentMethod` string, nullable: The payment method (e.g. Visa)
      - `payerEmail` string, nullable: The email address of the shopper / customer
      - `payerReference` string, nullable: The payer reference. It is used to make recurring captures and its usage is allowed only in the scope of the booking. For the reason above this is a write-only field.
      - `isVirtual` boolean: Indicates if the payment account is a virtual credit card. If not specified it defaults to 'false'
      - `isActive` boolean, required: Indicates if the payment account can be used for capturing payments. A payment account is active, when it has a valid payer reference set
      - `inactiveReason` string, nullable: A reason why account is inactive
    - `hasActivePaymentAccount` boolean: True if the booking has at least one active payment account, false otherwise. This is a read-only property and is not set by the client. It is used to determine if the booking has an active payment account without having to retrieve the payment account details.
    - `created` string, date-time, required: Date of creation<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `modified` string, date-time, required: Date of last modification<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `blocks` GroupBlockModel[], nullable: Blocks within this group
      - `id` string, required: Block id
      - `status` 'Tentative' | 'Definite' | 'Canceled' | 'Optional', required: Status of the block
      - `property` EmbeddedPropertyModel, required
        - `id` string, required: The property id
        - `code` string, nullable: The code for the property that can be shown in reports and table views
        - `name` string, nullable: The name for the property
        - `description` string, nullable: The description for the property
      - `ratePlan` EmbeddedRatePlanModel, required
        - `id` string, required: The rate plan id
        - `code` string, nullable: The code for the rate plan that can be shown in reports and table views
        - `name` string, nullable: The name for the rate plan
        - `description` string, nullable: The description for the rate plan
        - `isSubjectToCityTax` boolean, required: Whether the rate plan is subject to city tax or not
      - `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
      - `marketSegment` EmbeddedMarketSegmentModel: The market segment identifier to help categorize your bookings for revenue management and reporting purposes.
        - `id` string, required: The market segment id
        - `code` string, nullable: The market segment code
        - `name` string, nullable: The market segment name
      - `grossDailyRate` MonetaryValueModel, required
        - `amount` number, double, required
        - `currency` string, required
      - `rateIncludesCityTax` boolean: Whether the gross daily rate includes the city taxes that are configured as included in the rate. They're deducted from it for the guests of a picked up reservation. Blocks created before this was introduced don't include them, until their gross daily rate is changed
      - `from` string, date-time, required: Start date and time from which the inventory will be blocked<br />A date and time 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: End date and time until which the inventory will be blocked<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
      - `blockedUnits` integer, required: Number of units blocked
      - `pickedReservations` integer, required: Number of reservations already picked from this block
      - `created` string, date-time, required: Date of creation<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
      - `modified` string, date-time, required: Date of last modification<br />A date and time in UTC or with UTC offset as defined in <a href="https://en.wikipedia.org/wiki/ISO_8601">ISO8601:2004</a>
    - `actions` ActionModelGroupActionNotAllowedGroupActionReason[], nullable: The list of actions for this group
      - `action` 'Delete', required
      - `isAllowed` boolean, required
      - `reasons` ActionReasonModelNotAllowedGroupActionReason[], nullable
        - `code` 'DeleteNotAllowedForGroupWithBlocks', required
        - `message` string, required
    - `propertyIds` string[], required: The list of property ids this group belongs to
    - `commercialStatus` GroupCommercialStatusModel
      - `code` string, required: The code of the commercial status
      - `label` string, required: The label of the commercial status, resolved from the current value
    - `operationalStatus` 'NoReservations' | 'Upcoming' | 'PartiallyInHouse' | 'InHouse' | 'PartiallyCheckedOut' | 'Completed', nullable: Operational status of the group's reservations. Null when not yet computed, or when group operational status is not exposed.
    - `reservationBreakdown` GroupReservationBreakdownModel
      - `upcoming` integer, nullable: Number of upcoming reservations. Omitted when not yet computed.
      - `inHouse` integer, nullable: Number of in-house reservations. Omitted when not yet computed.
      - `checkedOut` integer, nullable: Number of checked-out reservations. Omitted when not yet computed.
      - `canceled` integer, nullable: Number of canceled reservations. Omitted when not yet computed.
      - `noShow` integer, nullable: Number of no-show reservations. Omitted when not yet computed.
  - `count` integer, required: Total count of items

## Other responses

- `204`: No group bookings found.
- `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-booking-api-not-safe-for-work.md) - [All operations](https://skmtc.dev/apaleo/apis/apaleo-booking-api-not-safe-for-work/llms.txt) - [OpenAPI document](https://skmtc.dev/apaleo/apis/apaleo-booking-api-not-safe-for-work/revisions/a1b6a2f6b879?raw)
