---
title: "Get List of Purposes"
method: GET
path: "/api/consentmanager/v1/purposes"
tags: ["Purposes"]
deprecated: true
---

# Get List of Purposes

`GET /api/consentmanager/v1/purposes`

> **Deprecated.**

> ❗️ End of Support Notification
>
>  This API is now deprecated. Any customers leveraging this API are encouraged to use the [Get List of Purpose Versions API](https://developer.onetrust.com/onetrust/reference/getgroupedpurposesv2). For more information, see [OneTrust API Sunsetting & Deprecation Guidelines](https://developer.onetrust.com/onetrust/reference/onetrust-api-sunsetting-deprecation-guidelines).

Use this API to retrieve a paged list of purposes.

## Query parameters

- `page` integer
- `size` integer
- `sort` 'id,asc' | 'id,desc' | 'name,asc' | 'name,desc' | 'purposeStatus,asc' | 'purposeStatus,desc' | 'purposeType,asc' | 'purposeType,desc' | 'version,asc' | 'version,desc' | 'createdDate,asc' | 'createdDate,desc' | 'lastModifiedDate,asc' | 'lastModifiedDate,desc' | 'publishedDate,asc' | 'publishedDate,desc'

## Response `200`

OK - Successfully retrieved purposes

- ConsentPreferencesUniversalConsentPreferenceManagPagePurposeDetailsDto
  - `content` ConsentPreferencesUniversalConsentPreferenceManagPurposeDetailsDto[] — The list of items for the current page.
    - `Id` string, uuid — Globally unique identifier of the Purpose
    - `Label` string — Name of the Purpose
    - `Description` string — Detailed description of the Purpose's intended use
    - `Status` 'DRAFT' | 'ACTIVE' | 'RETIRED' — Status of the Purpose
    - `Version` integer — Current version of the Purpose
    - `RetireOnDate` string, date-time — Date when the purpose will be retired
    - `ParentPurposeId` string, uuid — Unique identifier of the parent purpose
    - `ExternalReference` string — External reference identifier for the purpose
    - `PurposeType` 'STANDARD' | 'COOKIE' | 'IAB' | 'MOBILE' | 'NOTIFICATION_OPT_OUT' — Type of the purpose
    - `ConsentLifeSpan` integer — Lifespan of the consent in seconds
    - `ImplicitConsentLifeSpan` integer — Lifespan for implicit consents in seconds
    - `ImplicitConsentConfirmDesc` string — Description shown when confirming implicit consent
    - `PurposeCategory` ConsentPreferencesUniversalConsentPreferenceManagAttributeValueInformation
      - `id` string, uuid — Unique identifier for the attribute option
      - `value` string, required — Attribute value
      - `valueKey` string — Translation key used for localizing the value
      - `colorCode` string — Color code associated with the option. Used for score-based attributes.
      - `optionSelectionValue` string — Selection score value linked to the option. Used for score-based or numerical-based attributes.
      - `displayLabel` string — Display name for the option, used for external attributes managed by other systems
      - `associatedAttributeValueInformation` ConsentPreferencesUniversalConsentPreferenceManagAssociatedAttributeValueInformation[] — Associated attribute option information
        - `id` string, uuid — Unique identifier for the attribute option
        - `value` string, required — Attribute value
        - `valueKey` string — Translation key used for localizing the value
        - `colorCode` string — Color code associated with the option. Used for score-based attributes.
      - `disabled` boolean — Indicates whether this attribute option is currently disabled.
    - `Languages` ConsentPreferencesUniversalConsentPreferenceManagPurposeLanguageDto[] — List of languages supported by the purpose
      - `Name` string, required — The Purpose name
      - `Description` string, required — The Purpose description
      - `Description of Implicit Purpose Confirmation checkbox` string — The Implicit Purpose Confirmation checkbox description
      - `Language` string — The Purpose content language code
      - `Default` boolean — Whether this language is the default one for the Purpose
      - `HardOptOutMessage` string — The message to display with the purpose when the consent status is Hard opt-out. This message only displays when hardOptOutDisplayFormat is set to LOCK.
    - `Topics` ConsentPreferencesUniversalConsentPreferenceManagPurposeTopicDto[] — List of topics associated with the purpose
      - `Id` string, uuid — The unique identifier of the Purpose and Topic relation
      - `Name` string — The Topic name
      - `IntegrationKey` string — The Topic integration key (combination of Purpose and Topic names)
      - `CanDelete` boolean — Whether this Topic can be deleted or not
    - `CustomPreferences` ConsentPreferencesUniversalConsentPreferenceManagPurposeCustomPreferenceDto[] — List of custom preferences associated with the purpose
      - `Id` string, uuid, required — Unique identifier for the Custom Preference
      - `Name` string, required — The display name of the Custom Preference
      - `Description` string — Detailed description explaining the purpose and usage of this Custom Preference
      - `SelectionType` 'SINGLE_CHOICE' | 'MULTI_CHOICE' | 'SINGLE_CHOICE' | 'MULTI_CHOICE', required — Defines how options can be selected in this Custom Preference
      - `DisplayAs` 'BUTTONS' | 'CHECKBOXES' | 'BUTTONs' | 'CHECKBOXES' | 'DROPDOWN' | 'RADIO_BUTTONS', required — Specifies how the preference options should be displayed in the UI
      - `CreatedDate` string, date-time — Timestamp when the Custom Preference was created
      - `UpdatedDate` string, date-time — Timestamp when the Custom Preference was last updated
      - `NumberOfOptions` integer — Total number of available options for this Custom Preference
      - `Required` boolean — Indicates whether a response is mandatory for this Custom Preference
      - `NumberOfLanguages` integer — Number of languages this Custom Preference has been translated into
      - `DefaultLanguage` string — The default language code for this Custom Preference (BCP 47 format)
      - `Disabled` boolean — Indicates if this Custom Preference is currently disabled
      - `Options` ConsentPreferencesUniversalConsentPreferenceManagCustomPreferenceOptionDto[] — List of available options for this Custom Preference
        - `Id` string, uuid — Unique Identifier identifying an Option
        - `Label` string — The Option label
        - `Order` integer — The order of the option, Starts from 0
        - `IsDefault` boolean — Whether the Option is default option or not
        - `CanDelete` boolean — Whether the Option can be deleted or not
        - `Disabled` boolean — Whether Custom Preference is disabled or not
      - `Languages` ConsentPreferencesUniversalConsentPreferenceManagCustomPreferenceLanguageDto[] — List of language configurations for this Custom Preference
        - `Name` string, required — The Custom Preference name
        - `Description` string, required — The description of the Custom Preference
        - `Language` string — The Custom Preference content language code
        - `Default` boolean — Whether this language is the default one for the Custom Preference
        - `Options` ConsentPreferencesUniversalConsentPreferenceManagCustomPreferenceOptionDto[] — Options associated with a Custom Preference
          - `Id` string, uuid — Unique Identifier identifying an Option
          - `Label` string — The Option label
          - `Order` integer — The order of the option, Starts from 0
          - `IsDefault` boolean — Whether the Option is default option or not
          - `CanDelete` boolean — Whether the Option can be deleted or not
          - `Disabled` boolean — Whether Custom Preference is disabled or not
      - `Organizations` string[] — List of Organization IDs that have access to this Custom Preference
      - `TotalLinkedActivePurposes` integer — Count of active purposes that reference this Custom Preference
      - `PurposeCustomPreferenceId` string, uuid — Unique identifier of the Purpose and Custom Preference relation
    - `ExpiryDateType` 'LAST_TRANSACTION_DATE' | 'CONSENT_DATE' — Date field considered for purpose lifespan/expiry
    - `attributeValues` object — Map of attribute values associated with the purpose
    - `IsMajorVersion` boolean
    - `HardOptOutDisplayFormat` 'HIDE' | 'LOCK' — The format in which the purpose displays in a Trust Center when the consent status is Hard opt-out. Hard opt-out purposes can either be displayed but locked, or hidden.
    - `attributes` object — Additional attributes attached to the purpose
    - `EnableGeolocation` boolean — Flag to enable geolocation tracking for this purpose
    - `LastMajorVersion` integer — Last major version number of the purpose
    - `VersionNotes` string — Notes about the current version of the purpose
    - `HardOptOutMessage` string — The message to display with the purpose when the consent status is Hard opt-out. This message only displays when hardOptOutDisplayFormat is set to LOCK.
  - `empty` boolean — The flag to check if the entity is empty or not.
  - `first` boolean — The flag to check if the entity is first entity or not.
  - `last` boolean — The flag to check if the entity is last entity or not.
  - `number` integer — The number associated with the result.
  - `numberOfElements` integer — Total number of elements in the result.
  - `pageable` ConsentPreferencesUniversalConsentPreferenceManagPageableObject
    - `offset` integer
    - `sort` ConsentPreferencesUniversalConsentPreferenceManagSortObject
      - `empty` boolean
      - `unsorted` boolean
      - `sorted` boolean
    - `pageNumber` integer
    - `pageSize` integer
    - `paged` boolean
    - `unpaged` boolean
  - `sort` ConsentPreferencesUniversalConsentPreferenceManagSortObject
    - `empty` boolean
    - `unsorted` boolean
    - `sorted` boolean
  - `totalPages` integer — Total number of pages in the result list.
  - `totalElements` integer — Total number of elements in the result.
  - `size` integer — Size of the result list.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `429` — Too Many Requests. For more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).
- `500` — Internal Server Error

---

[API](https://skmtc.net/onetrust/apis/platform-access-management.md) · [All operations](https://skmtc.net/onetrust/apis/platform-access-management/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/onetrust/platform-access-management/versions/21de3aa0b170/schema)
