---
title: "Get Purpose Details by Data Subject"
method: GET
path: "/rest/api/consent/v4/datasubjects/profiles/{purposeGuid}"
tags: ["Data Subjects V4"]
---

# Get Purpose Details by Data Subject

`GET /rest/api/consent/v4/datasubjects/profiles/{purposeGuid}`

## Request

- Base URL: `https://hostname`
- URL: `https://hostname/rest/api/consent/v4/datasubjects/profiles/{purposeGuid}`
- Auth: OAuth 2
  - Client credentials
  - Token URL: `https://{hostname}/api/access/v1/oauth/token` scopes: `CONSENT`, `CONSENT_READ`

Use this API to retrieve a data subject’s purpose details for a specific purpose. The response will include details such as the last transaction date, consent date, and purpose preferences.

## Path parameters

- `purposeGuid` string, uuid, required

## Headers

- `identifier` string, required

## Response `200`

OK

- ConsentAPIDataSubjectProfileResponseDto
  - `id` string, uuid: Unique Identifier identifying a Purpose
  - `identifier` string: The data subject identifier of the data subject.
  - `lastReceiptId` string, uuid: Unique Identifier identifying a Receipt
  - `name` string: The Purpose name
  - `version` integer: Version of the Purpose
  - `status` string: The status of the purpose for the data subject.
  - `firstTransactionDate` string, date-time: The date and time that the first transaction was written to the database.
  - `lastTransactionDate` string, date-time: The date and time that the last transaction was written to the database.
  - `withdrawalDate` string, date-time: The date and time that the data subject withdrew consent for the purpose.
  - `reactivationDate` string, date-time: Indicates the date and time on which a consent will be reactivated. This is set when a purpose is snoozed until the specified date and time. The consent remains snoozed until this date, after which it is automatically reactivated and becomes active again.
  - `consentDate` string, date-time: The date and time that the data subject gave their last active consent.
  - `expiryDate` string, date-time: The explicit expiration date after which the purpose is no longer valid and no further consent is collected against it.
  - `totalTransactionCount` integer: The total number of Transactions recorded against this Purpose
  - `topicsList` string[]: The list of topics associated with the purpose.
  - `topics` ConsentAPIDataSubjectProfileTopicResponseDto[]: The details of the topics for which transactions were recorded.
    - `id` string, uuid: Unique Identifier identifying a Purpose Topic
    - `name` string: The name of the topic.
  - `customPreferencesMap` object: The list of purpose preferences associated with the purpose.
  - `customPreferences` ConsentAPIDsProfileCustomPreferenceResponseDto[]: The details of the purpose preferences for which transactions were recorded.
    - `id` string, uuid: The unique identifier of the purpose preference.
    - `name` string: The name of the purpose preference.
    - `options` ConsentAPIDsProfileCustomPreferenceOptionResponseDto[]: List containing the Custom Preference's Options
      - `id` string, uuid: The unique identifiers of the purpose preference options.
      - `name` string: The name of the purpose preference options.
  - `lastTransactionCollectionPointId` string, uuid
  - `lastTransactionCollectionPointVersion` integer
  - `purposeNote` ConsentAPIPurposeNoteResponseDto
    - `noteId` string, uuid: The unique identifier of the reason template.
    - `noteType` 'UNSUBSCRIBE_REASON': The type of reason template.
    - `noteLanguage` string: The ISO code for the language of the reason template.
    - `noteText` string: The text of the reason template.
    - `isValidNote` boolean: This flag indicates whether the note is a valid reason template.
  - `lastUpdatedDate` string, date-time: The date and time of the latest change to the data subject profile in the database.to any of: Purpose version, Purpose Status, or Topic/Custom Preference selections
  - `lastInteractionDate` string, date-time: The date and time of the data subject's last interaction with the purpose.
  - `attributes` object: The additional attributes associated with the purpose.
  - `geolocation` ConsentAPIDataSubjectGeolocationResponseDto
    - `dataSubjectId` string, uuid: The unique identifier of the data subject.
    - `receiptGuid` string, uuid: The unique identifier of the consent receipt for which geolocation details were sent.
    - `country` string: The country where the consent interaction occurred.
    - `state` string: The state code where the consent interaction occurred.
    - `stateName` string: The name of the state where the consent interaction occurred.
  - `attachments` ConsentAPIDataSubjectAttachmentResponseDto[]: Documents attached to Data Subject Profile
    - `attachmentId` string, uuid: The unique identifier of the file attached to the data subject record.
    - `fileName` string: The name of the file attached to the data subject record.
    - `uploadedBy` string: The name of the user who uploaded the file.
    - `uploadDate` string, date-time: The date and time on which the file was uploaded.
  - `source` ConsentAPIDataSubjectSourceResponseDto
    - `dataSubjectId` string, uuid: The unique identifier of the data subject.
    - `receiptGuid` string, uuid: The unique identifier of the consent receipt for which source details were sent.
    - `sourceType` string: The type of source that captured the consent interaction.
    - `sourceContent` string: The URL or identifier of the source where the consent interaction took place.

## 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.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)
