OneTrust · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Consent & Preferences - Universal Consent & Preference…

6 actions 6 updates phrasing extends openapi/onetrust-data-subjects-v2-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for OneTrust's API. It is a proposal applied on top of the contract, not a document OneTrust publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/api/consentmanager/v2/datasubjects'].get
$.paths['/api/consentmanager/v2/datasubjects/profiles'].delete
$.paths['/api/consentmanager/v2/datasubjects/search'].post
$.paths['/api/consent/v2/datasubject-purposes/{purposeGuid}'].delete
$.paths['/api/consent/v2/datasubjects'].delete

OpenAPI Overlay

Raw ↑
# 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-v2-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 5
- target: $.paths['/api/consentmanager/v2/datasubjects'].get
  update:
    x-apievangelist-phrasing:
      intent: List consent data subjects
      effect: read
      questions:
      - Which data subjects have consent records, and what data elements do they have?
      - Can I list data subjects updated within a date range?
      - Is it possible to include people with no purpose transactions or on the do-not-call list?
      instructions:
      - text: List all consent data subjects.
      - text: List data subjects updated since {updatedSince}.
        slots:
          updatedSince: query.updatedSince
      - text: Get the data subject with identifier {identifier}.
        slots:
          identifier: header.identifier
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/consentmanager/v2/datasubjects/profiles'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete purposes from data subjects
      effect: destructive
      questions:
      - How do I remove specific consent purposes from a person's profile?
      - Can I delete one purpose from up to 100 data subjects and keep their transactions?
      instructions:
      - text: Delete purposes {purposes} from data subject {identifiers}.
        slots:
          purposes: requestBody.purposes
          identifiers: requestBody.identifiers
      - text: 'Remove purposes {purposes} from these profiles but retain transactions: {retainTransactions}.'
        slots:
          purposes: requestBody.purposes
          retainTransactions: requestBody.retainTransactions
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/consentmanager/v2/datasubjects/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search consent data subjects
      effect: read
      questions:
      - How do I find data subjects by a data element value like email?
      - Can I search data subjects across specific organizations and include counts?
      instructions:
      - text: Search data subjects with data elements {dataElements}.
        slots:
          dataElements: requestBody.dataElements
      - text: Search data subjects in organizations {orgIds} updated since {updatedSince}.
        slots:
          orgIds: requestBody.orgIds
          updatedSince: requestBody.updatedSince
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/consent/v2/datasubject-purposes/{purposeGuid}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a purpose from all data subjects
      effect: destructive
      questions:
      - How do I wipe one consent purpose from everyone at scale?
      - Can I exclude certain data subjects when mass-deleting a purpose?
      instructions:
      - text: Delete purpose {purposeGuid} from all data subjects.
        slots:
          purposeGuid: path.purposeGuid
      - text: Mass-remove purpose {purposeGuid} using exclusion import {importId}.
        slots:
          purposeGuid: path.purposeGuid
          importId: requestBody.importId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/consent/v2/datasubjects'].delete
  update:
    x-apievangelist-phrasing:
      intent: Permanently delete data subjects
      effect: destructive
      questions:
      - How do I permanently delete data subjects from consent management?
      - Can I delete data subjects created within a date range and strip their personal info?
      instructions:
      - text: Permanently delete data subjects {identifiers}.
        slots:
          identifiers: requestBody.identifiers
      - text: Delete data subjects created between {fromCreatedDate} and {toCreatedDate}.
        slots:
          fromCreatedDate: requestBody.fromCreatedDate
          toCreatedDate: requestBody.toCreatedDate
      method: generated
      generated: '2026-09-26'