# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Consent & Preferences - Universal Consent & Preference… version: 1.0.0 extends: openapi/onetrust-data-subjects-v4-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-02' generator: build-phrasing.py label: Generated by API Evangelist operations: 11 - target: $.paths['/rest/api/consent/v4/data-subjects'].delete update: x-apievangelist-phrasing: intent: Delete a data subject effect: destructive questions: - Can I delete a data subject's consent profile entirely? - Is it possible to keep consent receipts when a data subject is deleted? instructions: - text: Delete data subject {identifier}. slots: identifier: requestBody.identifier - text: 'Delete data subject {identifier}, retaining receipts: {retainReceipts}.' slots: identifier: requestBody.identifier retainReceipts: requestBody.retainReceipts method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/data-subjects/profiles'].delete update: x-apievangelist-phrasing: intent: Remove purposes from a data subject effect: destructive questions: - Can I remove just certain purposes from a data subject without deleting them? - Which purposes can be wiped from a consent profile? instructions: - text: Remove purposes {purposes} from data subject {identifier}. slots: purposes: requestBody.purposes identifier: requestBody.identifier - text: Delete the purpose records {purposes} for {identifier}. slots: purposes: requestBody.purposes identifier: requestBody.identifier method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects'].get update: x-apievangelist-phrasing: intent: List data subjects updated in a date range effect: read questions: - Which data subjects were updated between two dates? - Can I include do-not-call records when listing data subjects? instructions: - text: List data subjects updated from {fromDate} to {toDate}. slots: fromDate: query.fromDate toDate: query.toDate - text: Show sorted data subjects changed between {fromDate} and {toDate}, sorted by {sort}. slots: fromDate: query.fromDate toDate: query.toDate sort: query.sort method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/basic-details'].get update: x-apievangelist-phrasing: intent: Get a data subject's basic details effect: read questions: - Can I get only a data subject's basic details, such as when it was created and last transacted? - Can I get just the basic details and data elements for one data subject? instructions: - text: Get basic details for data subject {identifier}. slots: identifier: header.identifier - text: Show the created date and data elements of {identifier}. slots: identifier: header.identifier method: generated generated: '2026-10-02' - target: $.paths['/rest/api/consent/v4/datasubjects/details'].get update: x-apievangelist-phrasing: intent: Get a data subject's full consent details effect: read questions: - Can I see everything about a data subject, including purposes and email link tokens? - Does the full data subject view include consent strings and attachments? instructions: - text: Get complete details for data subject {identifier}. slots: identifier: header.identifier - text: Fetch full details of {identifier} including consent groups {includeConsentGroups}. slots: identifier: header.identifier includeConsentGroups: query.includeConsentGroups method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/ds-profiles'].get update: x-apievangelist-phrasing: intent: List all purposes for one data subject effect: read questions: - Which purposes has a given person interacted with, and what is each status? - Can I page through every purpose record for one data subject? instructions: - text: List all purpose details for data subject {identifier}. slots: identifier: header.identifier - text: Show every purpose status recorded for {identifier}. slots: identifier: header.identifier method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/profiles'].get update: x-apievangelist-phrasing: intent: List purpose details across all data subjects effect: read questions: - What is the maximum date range for pulling purpose details across all data subjects? - Can I filter everyone's purpose records by collection point or status? instructions: - text: List purpose details for all data subjects updated between {updatedSince} and {updatedUntil}. slots: updatedSince: query.updatedSince updatedUntil: query.updatedUntil - text: Show sorted purpose records for purpose {purposeId} changed from {updatedSince} to {updatedUntil}. slots: purposeId: query.purposeId updatedSince: query.updatedSince updatedUntil: query.updatedUntil method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/profiles/unordered'].get update: x-apievangelist-phrasing: intent: Bulk-pull unordered purpose details effect: read questions: - Is there a faster, unsorted way to export purpose details for all data subjects? - Can I get an optimized unordered feed of purpose changes by status? instructions: - text: Pull the unordered purpose feed from {updatedSince} to {updatedUntil}. slots: updatedSince: query.updatedSince updatedUntil: query.updatedUntil - text: Fetch optimized unsorted purpose records with status {status} since {updatedSince} until {updatedUntil}. slots: status: query.status updatedSince: query.updatedSince updatedUntil: query.updatedUntil method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/profiles/{purposeGuid}'].get update: x-apievangelist-phrasing: intent: Get one purpose for a data subject effect: read questions: - What did a person consent to for one specific purpose, and when? - Can I check a single purpose's preferences for a data subject? instructions: - text: Get purpose {purposeGuid} details for data subject {identifier}. slots: purposeGuid: path.purposeGuid identifier: header.identifier - text: Show the consent date for {identifier} on purpose {purposeGuid}. slots: identifier: header.identifier purposeGuid: path.purposeGuid method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/search-by-element'].post update: x-apievangelist-phrasing: intent: Search data subjects by a data element effect: read questions: - Can I find data subjects by a data element like a phone number or customer ID? - Does the data element search support continuation tokens for big result sets? instructions: - text: Search data subjects where {dataElementName} equals {dataElementValue}. slots: dataElementName: requestBody.dataElementName dataElementValue: requestBody.dataElementValue - text: Find the data subject whose data element {dataElementName} is {dataElementValue}. slots: dataElementName: requestBody.dataElementName dataElementValue: requestBody.dataElementValue method: generated generated: '2026-09-26' - target: $.paths['/rest/api/consent/v4/datasubjects/unordered'].get update: x-apievangelist-phrasing: intent: Bulk-pull unordered data subjects effect: read questions: - Is there a high-performance unsorted list of data subjects for a date range? - Can I skip sorting to export data subjects faster? instructions: - text: Pull the optimized unsorted data subject list from {fromDate} to {toDate}. slots: fromDate: query.fromDate toDate: query.toDate - text: Export unordered data subjects updated since {fromDate} until {toDate}, {size} per page. slots: fromDate: query.fromDate toDate: query.toDate size: query.size method: generated generated: '2026-09-26'