---
title: "Get Purpose Preference"
method: GET
path: "/api/consentmanager/v1/custompreferences/{custompreferenceId}"
tags: ["Purpose Preferences"]
---

# Get Purpose Preference

`GET /api/consentmanager/v1/custompreferences/{custompreferenceId}`

## Request

- Base URL: `https://hostname`
- URL: `https://hostname/api/consentmanager/v1/custompreferences/{custompreferenceId}`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://{hostname}/api/access/v1/oauth/token` scopes: `CONSENT`, `CONSENT_READ`

Use this API to retrieve a single Purpose Preference by its unique identifier along with details such as the Purpose Preference name, languages, number of options, created date, and updated date.

## Path parameters

- `custompreferenceId` string, uuid, required

## Query parameters

- `includeTranslations` boolean

## Response `200`

OK - Purpose Preference retrieved successfully.

- ConsentPreferencesUniversalConsentPreferenceManagCustomPreferenceDto
  - `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

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `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.dev/onetrust/apis/consent-preferences-universal-consent-preference-management.md) - [All operations](https://skmtc.dev/onetrust/apis/consent-preferences-universal-consent-preference-management/llms.txt) - [OpenAPI document](https://skmtc.dev/onetrust/apis/consent-preferences-universal-consent-preference-management/revisions/fe4a0697ec9d?raw)
