OneTrust Consent & Preferences — Universal Consent & Preference Management (OAS)

The Universal Consent & Preference Management APIs are used to integrate external systems and stream line the flow of data with Universal Consent & Preference Management in the OneTrust Platform. (97 o perations.)

Operations 97

GET /api/consentmanager/v1/collectionpoints Get List of Collection Points #
POST /api/consentmanager/v1/collectionpoints Create Collection Point #
GET /api/consentmanager/v1/collectionpoints/{collectionpointGuid}/token Get Collection Point Token #
PUT /api/consentmanager/v1/collectionpoints/{collectionpointId} Update Existing Collection Point #
PUT /api/consentmanager/v1/collectionpoints/{collectionpointId}/disable Update Collection Point Status #
POST /api/consentmanager/v1/custom-indexes Create Custom Index #
GET /api/consentmanager/v1/custom-indexes/{runId}/status Get Index Creation Status #
GET /api/consentmanager/v1/custompreferences Get List of Purpose Preferences #
POST /api/consentmanager/v1/custompreferences Create Purpose Preference #
PUT /api/consentmanager/v1/custompreferences/{customPreferenceId} Update Purpose Preference #
GET /api/consentmanager/v1/custompreferences/{custompreferenceId} Get Purpose Preference #
POST /api/consentmanager/v1/datasubjects/dataelements Update Data Subject's Data Elements #
PUT /api/consentmanager/v1/datasubjects/merge Deduplicate Data Subjects #
POST /api/consentmanager/v1/datasubjects/merge/{mergeRequestId} Deduplicate Data Subjects #
GET /api/consentmanager/v1/datasubjects/profiles Get List of Data Subjects #
GET /api/consentmanager/v1/datasubjects/purposes Get List of Purposes for a Data Subject #
GET /api/consentmanager/v1/export-duplicate-datasubject/{mergeRequestId} Generate Export of Duplicate Data Subjects #
GET /api/consentmanager/v1/linktokens Get List of Data Subject Tokens #
GET /api/consentmanager/v1/preferencecenters/{prefcenterId}/datasubjects/preferences Get Data Subject's Preferences in a Preference Center #
PUT /api/consentmanager/v1/preferencecenters/{prefcenterId}/datasubjects/preferences Update Data Subject's Preferences in a Preference Center #
DELETE /api/consentmanager/v1/preferencecenters/{prefcenterId}/datasubjects/preferences Withdraw Data Subject's Consent for All Purposes in a Preference Center #
GET /api/consentmanager/v1/preferencecenters/{prefcenterId}/preferences Get Preference Center Schema #
GET /api/consentmanager/v1/purposes Get List of Purposes #
POST /api/consentmanager/v1/purposes Create Purpose #
POST /api/consentmanager/v1/purposes/{purposeGuid} Create New Purpose Version #
PUT /api/consentmanager/v1/purposes/{purposeId} Update Purpose #
GET /api/consentmanager/v1/purposes/{purposeId}/datasubjects Get List of Data Subjects by Purpose #
PUT /api/consentmanager/v1/purposes/{purposeId}/publish Publish Purpose #
PUT /api/consentmanager/v1/purposes/{purposeId}/retire Retire Purpose #
GET /api/consentmanager/v1/receipt-list Get List of Receipts by Data Subject #
GET /api/consentmanager/v1/receipts Get List of Receipt Details by Data Subject #
GET /api/consentmanager/v1/receipts/{id} Get Receipt #
GET /api/consentmanager/v1/scheduled-jobs/merge-request Get List of Scheduled Exports #
POST /api/consentmanager/v1/scheduled-jobs/merge-request Create Scheduled Export of Duplicate Data Subjects #
GET /api/consentmanager/v1/scheduled-jobs/merge-request/{mergeRequestGuid} Get Scheduled Export #
DELETE /api/consentmanager/v1/scheduled-jobs/merge-request/{mergeRequestGuid} Delete Scheduled Export #
PUT /api/consentmanager/v1/transactions/withdraw/fordatasubject Withdraw Consent on Behalf of a Data Subject #
GET /api/consentmanager/v1/transactions/withdraw/purpose/{purposeId} Withdraw Data Subject's Consent #
GET /api/consentmanager/v2/collectionpoints Get List of Collection Points #
POST /api/consentmanager/v2/collectionpoints/{collectionPointGuid}/version Create New Collection Point Version #
GET /api/consentmanager/v2/datasubjects Get List of Data Subjects #
DELETE /api/consentmanager/v2/datasubjects/profiles Delete Purposes from Data Subject #
POST /api/consentmanager/v2/datasubjects/search Search Data Subjects #
GET /api/consentmanager/v2/linkedidentitygroups Get List of Data Subject Groups #
POST /api/consentmanager/v2/linkedidentitygroups Create Data Subject Group #
GET /api/consentmanager/v2/linkedidentitygroups/{linkedIdentityGroupId} Get Data Subject Group #
PUT /api/consentmanager/v2/linkedidentitygroups/{linkedIdentityGroupId} Update Data Subject Group #
DELETE /api/consentmanager/v2/linkedidentitygroups/{linkedIdentityGroupId} Delete Data Subject Group #
GET /api/consentmanager/v2/preferencecenterpage/{preferencecenterpageid}/schema Get Preference Center Page Schema #
GET /api/consentmanager/v2/preferencecenters Get List of Preference Centers #
GET /api/consentmanager/v2/preferencecenters/{preferencecenterid}/schema Get Preference Center Root Schema #
GET /api/consentmanager/v2/purposes Get List of Purpose Versions #
GET /api/consentmanager/v2/purposes/{purposeId} Get Purpose #
GET /api/consent/v2/consent-groups Get List of Consent Groups #
POST /api/consent/v2/consent-groups Create Consent Group #
GET /api/consent/v2/consent-groups/settings Get Priority Scores for Purpose Statuses #
PUT /api/consent/v2/consent-groups/settings Update Priority Scores for Purpose Statuses #
GET /api/consent/v2/consent-groups/{consentGroupGuid} Get Consent Group #
POST /api/consent/v2/consent-groups/{consentGroupGuid}/consent-groups Add Consent Groups to Parent Consent Group #
DELETE /api/consent/v2/consent-groups/{consentGroupGuid}/consent-groups Remove Consent Groups from Parent Consent Group #
POST /api/consent/v2/consent-groups/{consentGroupGuid}/data-subjects Add Data Subjects to Parent Consent Group #
DELETE /api/consent/v2/consent-groups/{consentGroupGuid}/data-subjects/{dataSubjectGuid} Remove Data Subject from Parent Consent Group #
PUT /api/consent/v2/consent-groups/{consentGroupGuid}/purpose-rules Update Consent Group Purpose Rule #
POST /api/consent/v2/consent-groups/{consentGroupGuid}/purpose-rules Add Purpose Rules to Consent Group #
DELETE /api/consent/v2/consent-groups/{consentGroupGuid}/purpose-rules/{purposeGuid} Remove Purpose Rule from Consent Group #
DELETE /api/consent/v2/datasubject-purposes/{purposeGuid} Delete Purpose from Data Subjects #
DELETE /api/consent/v2/datasubjects Delete Data Subjects #
POST /api/consent/v2/receipts Get List of Receipts #
POST /api/consent/v2/transactions Get List of Transactions #
GET /rest/api/consent/v1/deletion-certificates Get List of Deletion Certificates #
DELETE /rest/api/consent/v1/receipts/cross-device Delete Cross Device Consents and Receipts #
DELETE /rest/api/consent/v4/data-subjects Delete Data Subject #
DELETE /rest/api/consent/v4/data-subjects/profiles Delete Purposes from Data Subjects #
GET /rest/api/consent/v4/datasubjects Get List of Data Subjects #
GET /rest/api/consent/v4/datasubjects/basic-details Get Data Subject #
GET /rest/api/consent/v4/datasubjects/details Get Data Subject Details #
GET /rest/api/consent/v4/datasubjects/ds-profiles Get List of All Purpose Details by Data Subject #
GET /rest/api/consent/v4/datasubjects/linktokens Get Data Subject Token #
GET /rest/api/consent/v4/datasubjects/profiles Get List of All Purpose Details for All Data Subjects #
GET /rest/api/consent/v4/datasubjects/profiles/unordered Get Optimized List of All Purpose Details for All Data Subjects #
GET /rest/api/consent/v4/datasubjects/profiles/{purposeGuid} Get Purpose Details by Data Subject #
POST /rest/api/consent/v4/datasubjects/search-by-element Search Data Subjects by Data Element #
GET /rest/api/consent/v4/datasubjects/unordered Get Optimized List of Data Subjects #
GET /rest/api/consent/v4/groups Get List of Data Subject Groups #
POST /rest/api/consent/v4/jobs Create Job #
GET /rest/api/consent/v4/linkedidentitygroups Get List of Data Subject Group Associations by Data Subject #
POST /rest/api/consent/v4/linkedidentitygroups Create Data Subject Group #
PUT /rest/api/consent/v4/linkedidentitygroups/{dataSubjectGroupId} Update Data Subject Group #
GET /rest/api/consent/v4/linkedidentitygroups/{dataSubjectGroupId}/members Get List of Data Subject Group Members #
GET /rest/api/consent/v4/linktokens Get List of Data Subject Tokens #
POST /rest/api/preferences/v1/attachments Upload Consent Attachment #
GET /rest/api/preferences/v1/attachments/{attachmentId} Download Consent Attachment #
DELETE /rest/api/preferences/v1/attachments-reference/{attachmentId} Remove Consent Attachment #
DELETE /rest/api/preferences/v1/datasubjects/{identifier}/attachment-references Remove All Consent Attachments #
GET /rest/api/preferences/v1/datasubjects/{identifier}/attachments Download All Consent Attachments #
GET /rest/api/preferences/v3/datasubject-profiles Get List of Data Subjects #
GET /rest/api/preferences/v3/datasubjects/profile Get Data Subject #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/consent-and-preferences-universal-consent-and-preference-management-oas"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

onetrust-consent-preferences-universal-consent-preference-management-oas-openapi.json Raw ↑
{"openapi":"3.1.0","info":{"title":"Consent & Preferences - Universal Consent & Preference Management (OAS)","version":"1.0","contact":{"name":"OneTrust Support","url":"https://my.onetrust.com/s/contactsupport"},"license":{"name":"Apache 2.0","url":"https://www.apache.org/licenses/LICENSE-2.0"},"description":"The Universal Consent & Preference Management APIs are used to integrate external systems and streamline the flow of data with Universal Consent & Preference Management in the OneTrust Platform."},"servers":[{"url":"https://{hostname}","variables":{"hostname":{"default":"hostname","description":"The OneTrust hostname such as app.onetrust.com, app-eu.onetrust.com, app-de.onetrust.com, app-uk.onetrust.com, app-apac.onetrust.com, trial.onetrust.com, or uat.onetrust.com."}}}],"tags":[{"name":"Collection Points","description":"The Collection Points APIs are used to manage where and how consent is collected.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Collection Points"},{"name":"Collection Points V2","description":"The Collection Points V2 APIs are used to manage collection points using version 2 of the API.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Collection Points V2"},{"name":"Consent Attachments","description":"APIs for managing Consent Attachments.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Consent Attachments"},{"name":"Consent Groups","description":"APIs for managing Consent Groups and their configurations.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Consent Groups"},{"name":"Consent Rate Optimization","description":"API for optimizing consent rate.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Consent Rate Optimization"},{"name":"Custom Index Management","x-displayName":"Custom Index Management"},{"name":"Data Subject Groups","description":"The Data Subject Groups APIs are used to manage groups of data subjects.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subject Groups"},{"name":"Data Subject Groups V4","description":"The Data Subjects V4 APIs are used to manage data subject information, preferences, and consent records.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subject Groups V4"},{"name":"Data Subjects","description":"The Data Subjects APIs are used to manage individuals whose data is being processed.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subjects"},{"name":"Data Subjects V2","description":"The Data Subjects V2 APIs are used to manage data subjects using version 2 of the API.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subjects V2"},{"name":"Data Subjects V3","description":"The Data Subjects V3 APIs are used to manage data subject information, preferences, and consent records.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subjects V3"},{"name":"Data Subjects V4","description":"The Data Subjects V4 APIs are used to manage data subject information, preferences, and consent records.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Data Subjects V4"},{"name":"Deduplicate Data Subjects","description":"The Deduplicate Data Subjects APIs are used to merge duplicate data subject profiles.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Deduplicate Data Subjects"},{"name":"Deletion Certificates","description":"APIs to retrieve a paginated list of deletion certificates.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Deletion Certificates"},{"name":"Jobs","description":"The Jobs APIs are used to manage scheduled jobs for bulk actions.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Jobs"},{"name":"Magic Link Tokens","description":"The Magic Link Tokens APIs are used to generate secure, one-time-use links for authentication.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Magic Link Tokens"},{"name":"Magic Link Tokens V4","description":"The Magic Link Tokens V4 APIs are used to manage secure, time-limited tokens for data subject verification and authentication.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Magic Link Tokens V4"},{"name":"Preference Centers","description":"The Preference Centers APIs are used to manage data subjects' preferences in a preference center.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Preference Centers"},{"name":"Preference Centers V2","description":"The Preference Centers V2 APIs are used to manage preference centers using version 2 of the API.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Preference Centers V2"},{"name":"Purpose Preferences","description":"The Purpose Preferences APIs are used to manage preferences related to specific data collection purposes.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Purpose Preferences"},{"name":"Purposes","description":"The Purposes APIs are used to manage the reasons for which data is collected.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Purposes"},{"name":"Purposes V2","description":"The Purposes V2 APIs are used to manage purposes using version 2 of the API.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Purposes V2"},{"name":"Receipts","description":"The Receipts APIs are used to manage records of consent transactions.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Receipts"},{"name":"Receipts V2","description":"APIs for managing consent receipts (V2).","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Receipts V2"},{"name":"Transactions","description":"The Transactions APIs are used to manage consent transactions.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Transactions"},{"name":"Transactions V2","description":"APIs for managing consent transactions.","externalDocs":{"description":"OpenAPI 3.1.0 - Download Definition","url":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"x-displayName":"Transactions V2"}],"paths":{"/api/consentmanager/v1/collectionpoints":{"get":{"operationId":"getCollectionPointsUsingGET","summary":"Get List of Collection Points","description":"Use this API to retrieve a list of all Collection Points. The response will include relevant details for each Collection Point, including purposes, notices, data elements, and more.","tags":["Collection Points"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"parameters":[{"name":"dataElementGuid","in":"query","description":"Filter collection points by the unique identifier of an associated data element.","required":false,"schema":{"type":"string","format":"uuid","example":"a1b2c3d4-e5f6-7890-1234-567890abcdef"},"example":"a1b2c3d4-e5f6-7890-1234-567890abcdef"},{"name":"organizationId","in":"query","description":"Filter collection points by the unique identifier of the owning organization.","required":false,"schema":{"type":"string","format":"uuid","example":"b2c3d4e5-f6a7-8901-2345-67890abcdef1"},"example":"b2c3d4e5-f6a7-8901-2345-67890abcdef1"},{"name":"page","in":"query","description":"The page number of the results to retrieve (0-based index).","schema":{"type":"integer","format":"int32","default":0,"minimum":0},"example":0},{"name":"size","in":"query","description":"The number of records per page to return.","schema":{"type":"integer","format":"int32","default":20,"maximum":100,"minimum":1},"example":20},{"name":"sort","in":"query","description":"Sorting criteria in the format: property(,asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","schema":{"type":"string","example":"name,asc","enum":["name,asc","name,desc","createdDate,asc","createdDate,desc","lastModifiedDate,asc","lastModifiedDate,desc","status,asc","status,desc","version,asc","version,desc"]},"example":"name,asc"},{"name":"name","in":"query","description":"Filter collection points by name (case-insensitive contains match).","schema":{"type":"string","example":"Newsletter Signup","maxLength":255},"example":"Newsletter Signup"},{"name":"purposeGuid","in":"query","description":"Filter collection points by the unique identifier of an associated purpose.","schema":{"type":"string","format":"uuid"},"example":"550e8400-e29b-41d4-a716-446655440000"},{"name":"collectionPointType","in":"query","description":"Filter collection points by type.","schema":{"type":"string","enum":["COOKIE","WEB_FORM","API","MOBILE_SDK","HOSTED_WEB_FORM","EMBEDDED_WEB_FORM","BULK_IMPORT"]},"example":"WEB_FORM"},{"name":"consentType","in":"query","description":"Filter collection points by the type of consent they capture.","schema":{"type":"string","enum":["EXPLICIT","IMPLIED","NOT_APPLICABLE"]},"example":"EXPLICIT"},{"name":"status","in":"query","description":"Filter collection points by their current status.","schema":{"type":"string","enum":["DRAFT","ACTIVE","RETIRED","INACTIVE","ARCHIVED"]},"example":"ACTIVE"}],"responses":{"200":{"description":"Successfully retrieved the list of collection points.","content":{"application/json":{"schema":{"description":"Paginated list of collection points with their details","$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PageCollectionPointDetailDto"}}}},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT","CONSENT_READ"]}]},"post":{"operationId":"createCollectionPointUsingPOST","summary":"Create Collection Point","description":"Use this API to create a new Collection Point. The Collection Point will be created with version **1** and **Draft** status.\n\n> 🗒 Things to Know\n> \n> - Data element name values support up to 750 characters. Data element types containing the word **Country** do not support the following characters: [<>();:'“$#}{]\n> - If the `EnablePrimaryIdentifier` parameter is set to `true`, then the `PrimaryIdentifierType` parameter will be required in the API request body.\n> - When creating a Web Form Collection Point, the `HostedSDK` parameter value will be set to `true` by default, regardless of the value entered in the request body.\n> - One of the following parameters is required in the API request body: `PurposeId`, `PurposeIds`, or `PurposeIdsWithVersion`.\n> - The `PurposeId` and `PurposeIds` parameters can be used to link an **Active** version of a purpose to a Collection Point.\n> - The `PurposeIdsWithVersion` parameter can be used to link specific versions of a purpose (either in **Draft** or **Active** status) to a Collection Point.","tags":["Collection Points"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_CollectionPointCreateRequest"}}}},"responses":{"201":{"description":"Collection Point created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_CollectionPointDetailDto"}}}},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT"]}]}},"/api/consentmanager/v1/collectionpoints/{collectionpointGuid}/token":{"get":{"operationId":"getTokenUsingGET","summary":"Get Collection Point Token","description":"Use this API to retrieve the JSON Web Token (JWT) for a given Collection Point. The JWT returned in the response can be used as the `requestInformation` parameter value in the Consent Receipts API in order to pass data subject consent transactions.","tags":["Collection Points"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"parameters":[{"name":"collectionpointGuid","in":"path","description":"The unique identifier of the Collection Point","required":true,"schema":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},{"name":"version","in":"query","description":"The specific version of the Collection Point to get the token for. If not provided, the most recent version will be used.","required":false,"schema":{"type":"integer","format":"int64","example":1,"minimum":1}},{"name":"state","in":"query","description":"Filter by the state of the Collection Point","required":false,"schema":{"type":"string","example":"ACTIVE","enum":["ACTIVE","DRAFT","RETIRED","INACTIVE"]}}],"responses":{"200":{"description":"Successfully retrieved the Collection Point token","content":{"application/json":{"schema":{"type":"string","example":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."}}}}},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT","CONSENT_READ"]}]}},"/api/consentmanager/v1/collectionpoints/{collectionpointId}":{"put":{"operationId":"editCollectionPointUsingPUT","summary":"Update Existing Collection Point","description":"Use this API to update an existing Collection Point. Before calling this API, ensure that the Collection Point is in **Draft** status. If the Collection Point is in **Active** status, use the Create New Collection Point Version API to create a new version of the Collection Point.\n\n> 🗒 Things to Know\n> \n> - One of the following parameters must be included in the API request body: `PurposeId`, `PurposeIds`, or `PurposeIdsWithVersion`.\n> - The `PurposeId` and `PurposeIds` parameters can be used to link an **Active** version of a purpose to a Collection Point.\n> - The `PurposeIdsWithVersion` parameter can be used to link specific versions of a purpose (either in **Draft** or **Active** status) to a Collection Point.","tags":["Collection Points"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"parameters":[{"name":"collectionpointId","in":"path","description":"The unique identifier of the Collection Point to update.","required":true,"schema":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000","maxLength":36,"minLength":36}},{"name":"version","in":"query","description":"The version of the Collection Point to update. If not provided, version 1 will be used.","required":false,"schema":{"type":"integer","format":"int64","example":1,"minimum":1}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_CollectionPointEditRequest"}}}},"responses":{"200":{"description":"OK"},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT"]}]}},"/api/consentmanager/v1/collectionpoints/{collectionpointId}/disable":{"put":{"operationId":"disableCollectionPointUsingPUT","summary":"Update Collection Point Status","description":"Use this API to update the status of a Collection Point. \n\n > 🗒 Things to Know\n > \n > - To disable the Collection Point, set the `value` query parameter to `true`. All versions of the Collection Point will be disabled from ingesting receipts.\n > - To enable the Collection Point, set the `value` query parameter to `false`. The previous status of the Collection Point will be restored.\n > - The following Collection Point types cannot be disabled: ADMIN_UPDATE and NOTIFICATION_OPT_OUT.","tags":["Collection Points"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"parameters":[{"name":"collectionpointId","in":"path","description":"The unique identifier of the Collection Point to enable/disable.","required":true,"schema":{"type":"string","format":"uuid","example":"123e4567-e89b-12d3-a456-426614174000"}},{"name":"value","in":"query","description":"Set to `true` to disable the Collection Point, or `false` to enable it.","required":false,"schema":{"type":"boolean","example":true,"default":true}}],"responses":{"200":{"description":"OK - Collection Point status updated successfully."},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT"]}]}},"/api/consentmanager/v1/custom-indexes":{"post":{"operationId":"createIndex","summary":"Create Custom Index","description":"Use this API to trigger the creation of a custom search index for data elements. The response will include the `runId` that can be used to query the current creation status using the [Get Index Creation Status API](https://developer.onetrust.com/onetrust/reference/getindexcreationstatus).\n\n> 🗒 Things to Know\n> \n> - Each account is limited to only one custom search index.","tags":["Custom Index Management"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineTriggerRequest"}}}},"responses":{"200":{"description":"Index creation successfully triggered","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineTriggerResponse"}}}},"400":{"description":"Invalid request parameters","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineTriggerResponse"}}}},"401":{"description":"Unauthorized access","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineTriggerResponse"}}}},"403":{"description":"Insufficient permissions to create custom indexes","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineTriggerResponse"}}}},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT"]}]}},"/api/consentmanager/v1/custom-indexes/{runId}/status":{"get":{"operationId":"getIndexCreationStatus","summary":"Get Index Creation Status","description":"Use this API to retrieve the current creation status of the custom search index. The response will include details such as the current status, start and end time, and error details if applicable.","tags":["Custom Index Management"],"parameters":[{"name":"runId","in":"path","description":"Unique identifier of a custom index creation","required":true,"schema":{"type":"string","format":"uuid"},"example":"123e4567-e89b-12d3-a456-426614174000"}],"responses":{"200":{"description":"Successfully retrieved pipeline run status","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineRun"}}}},"400":{"description":"Invalid run ID provided","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineRun"}}}},"401":{"description":"Unauthorized access","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineRun"}}}},"403":{"description":"Insufficient permissions to view index status","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineRun"}}}},"404":{"description":"Pipeline run not found","content":{"*/*":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_PipelineRun"}}}},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT","CONSENT_READ"]}]}},"/api/consentmanager/v1/custompreferences":{"get":{"operationId":"getListUsingGET","summary":"Get List of Purpose Preferences","description":"Use this API to retrieve a list of all Purpose Preferences. The response will include basic details such as the Purpose Preference name, languages, number of options, created date, and updated date.","tags":["Purpose Preferences"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"parameters":[{"name":"page","in":"query","description":"The page number of the results (0-based).","schema":{"type":"integer","example":0,"default":0,"minimum":0}},{"name":"size","in":"query","description":"The number of results per page.","schema":{"type":"integer","example":20,"default":20,"maximum":100,"minimum":1}},{"name":"sort","in":"query","description":"Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported.","schema":{"type":"string","example":"createdDate,desc","enum":["name,asc","name,desc","createdDate,asc","createdDate,desc","lastModifiedDate,asc","lastModifiedDate,desc","selectionType,asc","selectionType,desc"]}}],"responses":{"200":{"description":"OK - List of Custom Preferences retrieved successfully.","content":{"application/json":{"schema":{"type":"string"}}}},"400":{"description":"Bad Request"},"401":{"description":"Unauthorized"},"403":{"description":"Forbidden"},"429":{"description":"Too Many Requests. \nFor more information, see [API Rate Limits](https://developer.onetrust.com/onetrust/reference/rate-limits-overview).","headers":{"Retry-After":{"schema":{"description":"The number of seconds after which requests will be allowed again.","format":"int32"}},"ot-period":{"schema":{"description":"The unit of time for which the rate limit applies","enum":["HOUR","MINUTE"]}},"ot-ratelimit-event-id":{"schema":{"description":"The unique identifier for the rate-limiting event.","format":"uuid"}},"ot-request-made":{"schema":{"description":"The number of requests made within the specified period.","format":"int32"}},"ot-requests-allowed":{"schema":{"description":"The number of requests allowed within the specified period.","format":"int32"}}}},"500":{"description":"Internal Server Error"}},"security":[{"ConsentPreferences-UniversalConsentPreferenceManag_OAUTH2":["CONSENT","CONSENT_READ"]}]},"post":{"operationId":"createCustomPreferenceUsingPOST","summary":"Create Purpose Preference","description":"Use this API to create a new Purpose Preference. The Purpose Preference will be created with the details provided in the request body.","tags":["Purpose Preferences"],"x-onetrust":{"spec-label":"https://developer.onetrust.com/onetrust/openapi/consent-preferences-universal-consent-preference-management-oas.json"},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_CustomPreferenceCreateDto"}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConsentPreferences-UniversalConsentPreferenceManag_CustomPreferenceDto"}}}},"201":{"description":"Created","content":{"application/json":{"schema":{"$ref":"#/

# --- truncated at 32 KB (624 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/onetrust/refs/heads/main/openapi/onetrust-consent-preferences-universal-consent-preference-management-oas-openapi.json