---
title: "Get List of Receipts"
method: POST
path: "/api/consent/v2/receipts"
tags: ["Receipts V2"]
---

# Get List of Receipts

`POST /api/consent/v2/receipts`

Use this API to retrieve a list of all receipts. Depending on the query or header parameter values passed in the request, the response will return specific details about receipts, including relevant information about collection point interactions, purposes, and the associated purpose preferences and attributes.

> 🗒 Things to Know
> 
> #### Usage Guidelines
> - **Date & Time Range:**
>   - The timespan between the `fromDate` and `toDate` values must be 24 hours or less. 
>   - To ensure accurate and complete data retrieval across the intended date range, include full timestamps (e.g., `fromDate=2026-03-24T00:00:00` and `toDate=2026-03-25T23:59:59`). Omitting the time may result in partial or unexpected data results.
>   - The `fromDate` and `toDate` are evaluated against the consent creation date (i.e. when the receipt was sent), not when the receipt was saved. The saved date may occur slightly later due to processing delays. As a result, short time windows may temporarily show different totals across the OneTrust Platform, APIs, and dashboards.
> - **Data Scope & includeArchived Behavior:**
>   - By default, only receipts created within the last 90 days are returned. To retrieve receipts stored for more than 90 days, the `includeArchived` parameter must be used. Setting the `includeArchived` parameter to `true` or `false` returns all receipts. The pagination behavior differs based on this value.
>     - When `includeArchived=true`: Page size is customizable. When retrieving historic receipts, you can provide either the `receiptId` in the request parameters or the `identifier` in the request headers. Optional parameters such as `includeDataElements`, `includeConsentStrings`, `page`, and `nextMarker` can also be used. If `includeArchived=true` is set and additional parameters such as `fromDate` or `toDate` are included, this API will instead search only receipts stored within the last 90 days.
>     - When `includeArchived=false`: Page size is fixed at 20 records per page. For refined results, use the purpose and collection point filters.
> - **Filtering:** 
>   - You must choose one querying approach and cannot use both simultaneously to ensure predictable results. You can either:
>     - Search by identifier, which disables all other filters
>     - OR use the purpose and collection point filters. 
> - **Pagination:**
>   - If the number of records exceeds a single page:
>     - The response returns a `requestContinuation` value, which must be included in the next request body to continue pagination.
>     - When retrieving archived receipts, `nextMarker` must also be included in subsequent request bodies to paginate through results.
> - **Additional Information:**
>   - Purpose descriptions in the API response are returned inside `<p>` and `</p>` HTML tags. These tags can be sanitized based on your formatting needs.

## Query parameters

- `collectionPointGuid` string, uuid
- `receiptId` string, uuid
- `purposeGuid` string, uuid
- `organizationId` string, uuid
- `fromDate` string, date-time
- `toDate` string, date-time
- `includeDataElements` boolean
- `includeArchived` boolean
- `isAnonymous` boolean
- `includeConsentStrings` boolean
- `page` integer
- `size` integer
- `sort` 'consentCreationDate,asc' | 'consentCreationDate,desc'

## Headers

- `identifier` string
- `dataElementName` string
- `dataElementValue` string

## Request body

- ConsentAPIContinuationToken
  - `requestContinuation` string — Request continuation token used to paginate. If the number of records in the response is more than a page, it returns a `requestContinuation` token in the response. This `requestContinuation` token should be passed to the next request's body to paginate.
  - `nextMarker` string — Request continuation token used to paginate over historical receipts

## Response `200`

Successfully retrieved list of receipts.

- ConsentAPIReceiptInformationDetailSliceDto
  - `content` ConsentAPIReceiptInformationDetailDto[]
    - `id` string, uuid — The unique identifier for the receipt.
    - `otJwtVersion` integer — The version of the JWT used, if applicable.
    - `organizationId` string, uuid — The unique identifier of the organization.
    - `dataSubjectIdentifierHash` string — A hashed version of the data subject's identifier for secure reference.
    - `dataSubjectIdentifier` string — The original data subject identifier.
    - `collectionPointUUID` string, uuid — The unique identifier of the collection point where the consent was captured.
    - `collectionPointVersion` integer — The version of the collection point configuration.
    - `collectionPointName` string — The name of the collection point.
    - `consentCreationDate` string, date-time — The date and time when the consent was created.
    - `customPayload` string — A custom payload associated with the receipt (if applicable).
    - `purposes` ConsentAPIPurposeInformationDtoV2[] — An array of purposes for which the consent was provided.
      - `id` string, uuid — The unique identifier for the purpose.
      - `name` string — The name of the purpose.
      - `description` string — A brief description of the purpose.
      - `status` 'DRAFT' | 'ACTIVE' | 'RETIRED' — The status of the purpose.
      - `version` integer — The version number of the purpose.
      - `purposeType` 'STANDARD' | 'COOKIE' | 'IAB' | 'MOBILE' | 'NOTIFICATION_OPT_OUT' — The type of purpose.
      - `consentLifeSpan` integer — The lifespan of the consent for this purpose.
      - `transactionType` 'PENDING' | 'CONFIRMED' | 'WITHDRAWN' | 'EXPIRED' | 'NOTGIVEN' | 'OPT_OUT' | 'NO_CHOICE' | 'HARD_OPT_OUT' | 'EXTEND' | 'CHANGE_PREFERENCES' | 'CANCEL' | 'NO_OPT_OUT' | 'OPT_IN' | 'IMPLICIT' — The type of consent transaction.
      - `topics` ConsentAPIPurposeTopicDtoV2[] — An array of topics associated with the purpose.
        - `id` string, uuid — The unique identifier of the purpose and topic relation.
        - `transactionType` string
        - `name` string — The name of the purpose topic.
        - `integrationKey` string — The topic integration key (combination of purpose and topic names).
        - `languages` ConsentAPITopicLanguageDtoV2[] — A list of languages for a topic.
          - `name` string — The Topic name
          - `language` string — The Topic content language code
          - `default` boolean — Whether this language is the default one for the Topic
      - `purposeScopes` ConsentAPIDsPurposeScope[] — The list of purpose scopes associated with this data subject.
        - `key` string
        - `value` string
      - `customPreferences` ConsentAPIPurposeCustomPreferenceDtoV2[] — The custom preferences related to the purpose.
        - `id` string — The unique identifier of the Purpose and Custom Preference relation.
        - `name` string — The name of the custom preference.
        - `displayAs` 'BUTTONS' | 'CHECKBOXES' — The display type of the Custom Preference.
        - `customPreferenceOptions` ConsentAPICustomPreferenceOptionDtoV2[] — The custom preference options.
          - `id` string
          - `transactionType` string
          - `label` string — The Option label
          - `order` integer
          - `isDefault` boolean
        - `languages` ConsentAPICustomPreferenceLanguageDtoV2[]
          - `name` string — The name identifying the Custom Preference
          - `description` string — Whether this language is the default one for 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` ConsentAPICustomPreferenceOptionDtoV2[] — Options associated with a Custom Preference
            - `id` string
            - `transactionType` string
            - `label` string — The Option label
            - `order` integer
            - `isDefault` boolean
      - `purposeNote` ConsentAPIPurposeNoteDtoV2
        - `noteId` string, uuid — The unique identifier of the reason template.
        - `noteType` 'UNSUBSCRIBE_REASON' — The type of the note.
        - `noteLanguage` string — The language of the note.
        - `noteText` string — The actual text of the note.
        - `isValidNote` boolean — The flag that indicates if the purpose note is valid.
      - `attributes` object
      - `transactionId` string, uuid
      - `expiryDate` string, date-time
      - `purposeAttachments` ConsentAPIDsAttachments[]
        - `id` string, uuid
    - `test` boolean — The flag that indicates if the receipt is part of a test.
    - `origin` 'IMPORT' | 'API' | 'SDK' | 'ONETRUST' | 'PREFERENCE_CENTER' | 'EMAIL_CLIENT_ONE_CLICK' | 'HISTORIC_IMPORT' — The origin of the receipt, if specified.
    - `doubleOptIn` boolean — The flag that indicates if the consent was a double opt-in.
    - `language` string — The language in which the consent was recorded, if applicable.
    - `collectionPointType` string — The type of collection point.
    - `isAnonymous` boolean — The flag that indicates if the data subject is anonymous.
    - `attributes` object — Additional attributes related to the receipt.
    - `interactionDate` string, date-time — The date and time of the interaction.
    - `dataElements` object — The data elements tied to the receipt.
    - `unsubscribeAll` boolean — The flag that indicates if the data subject has unsubscribed from all communications.
    - `geolocation` ConsentAPIDsGeolocation
      - `country` string — The country of the captured consent.
      - `state` string — The abbreviated state of the captured consent.
      - `stateName` string — The state of the captured consent.
      - `purposeIds` string[] — A list of unique identifiers of the Purpose for which Geolocation parameters are sent.
    - `ruleEvaluationResults` ConsentAPIRuleEvaluationResult[]
      - `ruleId` string, uuid — The unique identifier of the consent rule.
      - `ruleGroupId` string, uuid — The unique identifier of the consent rule group.
      - `consentRuleType` 'CONSENT_INGEST' — The type of consent rule.
      - `evaluationResult` boolean — The consent rule's result.
      - `actionResults` ConsentAPIRuleActionResult[]
        - `ruleAction` string
        - `ruleActionParameter` string
        - `ruleActionStatus` 'COMPLETED' | 'PARTIALLY_COMPLETED' | 'NOT_INITIATED' | 'FAILED'
        - `downStreamRuleActions` ConsentAPIDownStreamRuleAction[]
          - `actionType` 'SEND_EMAIL' | 'DATA_SUBJECT_UPDATE' | 'DATA_SUBJECT_PROFILE_UPDATE' | 'PUBLISH_INTEGRATION_EVENT'
          - `ruleAction` string
          - `ruleActionParameter` string
      - `resultData` object[]
      - `additionalParams` object
    - `attachments` ConsentAPIDsAttachments[] — The attachments tied to the receipt.
      - `id` string, uuid
    - `consentString` ConsentAPIConsentString
      - `type` string — The type of the consent string.
      - `content` string — The content of the consent string.
    - `source` ConsentAPISource
      - `type` string — The type of source that captured the consent interaction.
      - `content` string — The URL or identifier of the source where the consent interaction took place.
      - `purposeIds` string[] — The unique identifiers of the purposes that the data subject must consent to in order for the source to be captured, such as the purpose ID for Advanced analytics or similar.
  - `pageable` ConsentAPIPageableObjectWithContinuationToken
    - `paged` boolean
    - `pageNumber` integer
    - `offset` integer
    - `pageSize` integer
    - `unpaged` boolean
    - `sort` ConsentAPISortObject
      - `empty` boolean
      - `sorted` boolean
      - `unsorted` boolean
    - `requestContinuation` string — The token used to paginate a response if the number of records is more than a page.
  - `first` boolean
  - `last` boolean — Flag indicating whether this is the last page or not.
  - `number` integer — The page number of the results.
  - `sort` ConsentAPISortObject
    - `empty` boolean
    - `sorted` boolean
    - `unsorted` boolean
  - `size` integer — The number of results per page.
  - `numberOfElements` integer
  - `empty` boolean

## 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/revisions/21de3aa0b170/schema)
