---
title: "List all profiles across all types"
method: GET
path: "/group-profile/v1/profiles"
tags: ["Profile"]
---

# List all profiles across all types

`GET /group-profile/v1/profiles`

## Request

- Base URL: `https://api.cloudbeds.com`
- URL: `https://api.cloudbeds.com/group-profile/v1/profiles`
- Auth: HTTP bearer

## Query parameters

- `profileIds` integer[]
- `status` ProfileStatus[]
- `profileType` ProfileType[]
- `name` string
- `code` string
- `sort` string
- `pageToken` string
- `limit` integer

## Headers

- `x-property-id` integer
- `x-organization-id` integer, required

## Response `200`

List all profiles successfully

- ProfileListResponse: Cursor-based pagination metadata for list responses
  - `data` ProfileResponse[]: Array of profile data
    - `id` string: Unique identifier for the profile
    - `profileType` 'COMPANY' | 'GROUP' | 'TRAVEL_AGENT': Profile type
    - `code` string, required: Profile code (company code, group code, or IATA number for travel agents)
    - `name` string, required: Profile name (company name, group name, or agency name)
    - `status` 'PENDING' | 'ACTIVE' | 'INACTIVE' | 'CANCELLED' | 'ARCHIVED', required: Profile status
    - `cellPhone` string: Cell phone number
    - `phone` string: Primary phone number
    - `email` string, email: Primary email address
    - `externalCrmId` string: External CRM system reference ID
    - `optIn` boolean: Opt-in status
    - `optInType` 'MARKETING' | 'TRANSACTIONAL': Type of opt-in
    - `optInMethods` 'EMAIL' | 'SMS' | 'NOTIFICATION': Opt-in communication method
    - `address` Address: Flexible address object with country-specific fields. The countryCode determines the expected address format. All address fields except id and countryCode are stored as dynamic properties. Common fields include: address1, address2, street, number, city, state, zip, etc.
      - `id` integer: Unique identifier for the address
      - `countryCode` string: ISO 3166-1 alpha-2 country code (determines address format)
    - `useBillingAsMainAddress` boolean: When true, use billing address as the main address instead of the address field
    - `billingDetails` BillingDetails: Billing details for profiles and contact persons
      - `billingEntity` boolean: Whether this is a billing entity
      - `legalName` string: Legal name for billing purposes
      - `billingEmail` string, email: Billing email address
      - `billingAddress` Address: Flexible address object with country-specific fields. The countryCode determines the expected address format. All address fields except id and countryCode are stored as dynamic properties. Common fields include: address1, address2, street, number, city, state, zip, etc.
        - `id` integer: Unique identifier for the address
        - `countryCode` string: ISO 3166-1 alpha-2 country code (determines address format)
      - `billingCurrency` string: Billing currency code (ISO 4217 - 3 uppercase letters, e.g., USD, EUR, GBP)
      - `paymentMethod` 'DIRECT_BILL' | 'CASH' | 'CHECK' | 'CREDIT_CARD' | 'DEBIT_CARD' | 'VOUCHER' | 'PAY_BY_LINK' | 'THIRD_PARTY_PAYMENT': Payment method. Allowed values are DIRECT_BILL, CASH, CHECK, CREDIT_CARD, DEBIT_CARD, VOUCHER, PAY_BY_LINK, THIRD_PARTY_PAYMENT
      - `billingInstructions` string: Special billing instructions
      - `invoiceRecipientEmail` string, email: Email address for invoice delivery
      - `creditLimit` number: Credit limit amount
      - `taxId` string: Tax identification number
      - `billingFrequency` 'PER_STAY' | 'WEEKLY' | 'MONTHLY' | 'ON_DEMAND': Billing frequency. Allowed values are PER_STAY, WEEKLY, MONTHLY, ON_DEMAND
      - `invoiceDueDays` integer: Number of days until invoice is due
    - `createdAt` string, date-time: Creation timestamp
    - `updatedAt` string, date-time: Last update timestamp
    - `attributes` object: Dictionary containing profile-specific data (groupProfile, companyProfile, or travelAgentProfile). Only one profile type should be present.
      - `groupProfile` GroupProfile
        - `groupType` 'WEDDING' | 'SOCIAL' | 'SMERF' | 'CORPORATE' | 'ASSOCIATION' | 'EDUCATION' | 'MEETING' | 'CONFERENCE' | 'MICE' | 'EXHIBITIONS' | 'INCENTIVE' | 'OTHER': Type of group
        - `groupId` string: Unique group identifier
        - `cutOffDate` string, date: Booking cut-off date
        - `internalSalesManager` string: Internal sales manager name
        - `specialRequirements` string: Special requirements or notes
        - `roomNightCommitment` integer: Room night commitment
        - `roomNightType` 'USD' | 'PERCENTAGE' | 'NUMBER': Type of room night commitment (USD, Percentage, or Number)
      - `companyProfile` CompanyProfile
        - `companyType` 'CORPORATE' | 'SME' | 'NON_PROFIT' | 'ENTERPRISE' | 'GOVERNMENT' | 'ASSOCIATION' | 'LOCAL' | 'B2B' | 'PARTNERSHIP' | 'OTHER': Company type. Allowed values are CORPORATE, SME, NON_PROFIT, ENTERPRISE, GOVERNMENT, ASSOCIATION, LOCAL, B2B, PARTNERSHIP, OTHER
        - `parentCompanyId` integer: Parent company ID if this is a subsidiary
        - `website` string: Company website URL
        - `contractStartDate` string, date: Contract start date
        - `contractEndDate` string, date: Contract end date
        - `roomNightCommitment` integer: Annual room night commitment
        - `roomNightType` 'USD' | 'PERCENTAGE' | 'NUMBER': Type of room night commitment (USD, Percentage, or Number)
      - `travelAgentProfile` TravelAgentProfile
        - `agencyId` string: Agency identifier
        - `agencyType` 'OTA' | 'RETAIL' | 'CORPORATE_AGENT' | 'CONSORTIA' | 'WHOLESALER' | 'GROUP_TOUR' | 'TOUR_OPERATOR' | 'DOMESTIC' | 'FOREIGN' | 'OTHER': Travel agency type. Allowed values are OTA, RETAIL, CORPORATE_AGENT, CONSORTIA, WHOLESALER, GROUP_TOUR, TOUR_OPERATOR, DOMESTIC, FOREIGN, OTHER
        - `commissionable` boolean: Whether this agent is eligible for commission
        - `commissionType` 'PERCENTAGE' | 'FLAT_RATE': Type of commission (Percentage or Flat Rate)
        - `commissionAmount` number: Commission amount (percentage or flat rate value)
        - `commissionTerms` string: Terms of commission payout
        - `commissionCalculation` 'CHECK_IN' | 'CHECK_OUT' | 'INCLUDED_IN_RATE' | 'NOT_INCLUDED_IN_RATE' | 'NA': When commission is calculated
  - `nextPageToken` string, nullable: Token to fetch the next page of results. Pass this value as the `pageToken` query parameter in the next request. When null, there are no more pages available.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/cloudbeds/apis/group-profile-api.md) - [All operations](https://skmtc.dev/cloudbeds/apis/group-profile-api/llms.txt) - [OpenAPI document](https://skmtc.dev/cloudbeds/apis/group-profile-api/revisions/a1801dfbb09e?raw)
