# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Privacy Automation - Data Subject Request (DSR) Automation… version: 1.0.0 extends: openapi/onetrust-request-queues-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: 15 - target: $.paths['/api/datasubject/v2/requestqueues'].post update: x-apievangelist-phrasing: intent: Create a data subject request (deprecated) effect: write questions: - Is there an older endpoint that creates a DSR without putting the web form template in the path? - What does the deprecated create-request call accept for the requester's name and email? instructions: - text: Use the deprecated create-request endpoint to file a request for {email} with template {templateId} in the body. slots: email: requestBody.email templateId: requestBody.templateId - text: Submit a legacy DSR for {firstName} {lastName} with trace ID {requestTraceId}. slots: firstName: requestBody.firstName lastName: requestBody.lastName requestTraceId: requestBody.requestTraceId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/bulkdelete/{language}'].put update: x-apievangelist-phrasing: intent: Bulk delete data subject requests effect: destructive questions: - Can I permanently delete many privacy requests at once by status or date range? - Does bulk deleting DSRs also remove their subtasks, attachments and results summaries? instructions: - text: Permanently delete requests {RequestIDs} in bulk, language {language}. slots: RequestIDs: requestBody.RequestIDs language: path.language - text: Bulk delete every request with status {Status} created in {CreatedDateRange}, using language {language}. slots: Status: requestBody.Status CreatedDateRange: requestBody.CreatedDateRange language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/delete-certificate/{requestRefId}'].get update: x-apievangelist-phrasing: intent: Get the deletion certificate for a request effect: read questions: - Where can I get proof that a deleted data subject request was actually removed? - Does the deletion certificate show the retention policy and deletion mode? instructions: - text: Get the deletion certificate for deleted request {requestRefId}. slots: requestRefId: path.requestRefId - text: Show when and how request {requestRefId} was deleted. slots: requestRefId: path.requestRefId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/id/{requestQueueId}/requesthistory'].get update: x-apievangelist-phrasing: intent: Get a request's audit history by internal ID effect: read questions: - Can I pull a DSR's change history using its numeric request queue ID instead of the reference ID? - Which field updates show up in the audit trail when I look a request up by internal ID? instructions: - text: Get the audit history for request queue ID {requestQueueId}. slots: requestQueueId: path.requestQueueId - text: Show page {page} of field changes for internal request ID {requestQueueId}. slots: page: query.page requestQueueId: path.requestQueueId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/search/{language}'].post update: x-apievangelist-phrasing: intent: Search data subject requests by keyword effect: read questions: - Can I find a privacy request by the data subject's email address or last name? - What search terms can I use to locate a DSR, like a request ID or first name? instructions: - text: Search requests for {term} in language {language}. slots: term: requestBody.term language: path.language - text: Find DSRs matching {term} created on {createddate}, language {language}. slots: term: requestBody.term createddate: query.createddate language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/status/{requestTraceId}'].get update: x-apievangelist-phrasing: intent: Check creation status of an async request effect: read questions: - Did my asynchronously submitted request actually get created? - Can I look up the request ID assigned to a submission using its trace ID? instructions: - text: Check the creation status for trace ID {requestTraceId}. slots: requestTraceId: path.requestTraceId - text: Get the creation log and request ID for submission {requestTraceId}. slots: requestTraceId: path.requestTraceId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{language}'].get update: x-apievangelist-phrasing: intent: List data subject requests effect: read questions: - Which privacy requests are currently open in OneTrust? - Can I filter the DSR list by status or by modified date? - Is it possible to leave out requests submitted by internal users when listing? instructions: - text: List all requests in language {language}. slots: language: path.language - text: List requests with status {status} modified since {modifieddate}, language {language}. slots: status: query.status modifieddate: query.modifieddate language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/comments'].put update: x-apievangelist-phrasing: intent: Add a comment to a request effect: write questions: - Can I leave an internal-only note on a data subject request? - Is it possible to attach files when commenting on a DSR? instructions: - text: Add the comment {comment} to request {requestQueueRefId}. slots: comment: requestBody.comment requestQueueRefId: path.requestQueueRefId - text: Post internal note {internalComment} on request {requestQueueRefId}. slots: internalComment: requestBody.internalComment requestQueueRefId: path.requestQueueRefId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/customfields/{language}'].put update: x-apievangelist-phrasing: intent: Update a request's custom fields effect: write questions: - Can I change the custom form fields on an existing privacy request? - What happens to option keys when I update a DSR's custom fields? instructions: - text: Update the custom fields on request {requestQueueRefId} in language {language}. slots: requestQueueRefId: path.requestQueueRefId language: path.language - text: 'Edit custom field values for request {requestQueueRefId}, mapping option keys to names: {mapOptionKeyToNameKey}, language {language}.' slots: requestQueueRefId: path.requestQueueRefId mapOptionKeyToNameKey: query.mapOptionKeyToNameKey language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/language/{language}'].get update: x-apievangelist-phrasing: intent: Get a data subject request effect: read questions: - Who is the approver on a specific privacy request? - Can I see the full details of one DSR, including the data subject's name? instructions: - text: Get request {requestQueueRefId} in language {language}. slots: requestQueueRefId: path.requestQueueRefId language: path.language - text: Show me the details and approver of DSR {requestQueueRefId}, language {language}. slots: requestQueueRefId: path.requestQueueRefId language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/linkrequest'].put update: x-apievangelist-phrasing: intent: Link or unlink related requests effect: write questions: - Can I connect duplicate privacy requests from the same person to each other? - Is there a way to unlink a request I linked by mistake? instructions: - text: Link request {requestQueueRefId} to requests {LinkRequests}. slots: requestQueueRefId: path.requestQueueRefId LinkRequests: requestBody.LinkRequests - text: Unlink requests {UnlinkRequests} from request {requestQueueRefId}. slots: UnlinkRequests: requestBody.UnlinkRequests requestQueueRefId: path.requestQueueRefId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/movestages/{language}'].put update: x-apievangelist-phrasing: intent: Move a request to another workflow stage effect: write questions: - How do I move a DSR from verifying identity to in progress? - Can I record a resolution title when advancing a request to its final stage? instructions: - text: Move request {requestQueueRefId} to stage {nextStage}, language {language}. slots: requestQueueRefId: path.requestQueueRefId nextStage: requestBody.nextStage language: path.language - text: Advance request {requestQueueRefId} to {nextStage} with resolution {resolutionTitle}, language {language}. slots: requestQueueRefId: path.requestQueueRefId nextStage: requestBody.nextStage resolutionTitle: requestBody.resolutionTitle language: path.language method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/pausedeadline'].put update: x-apievangelist-phrasing: intent: Pause or resume a request's deadline effect: write questions: - Can I stop the clock on a privacy request while I wait on the data subject? - What happens to the deadline when a paused request is resumed? instructions: - text: Pause the deadline on request {requestQueueRefId}. slots: requestQueueRefId: path.requestQueueRefId - text: Set deadline paused to {pauseDeadline} on request {requestQueueRefId} with comment {comment}. slots: pauseDeadline: requestBody.pauseDeadline requestQueueRefId: path.requestQueueRefId comment: requestBody.comment method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{requestQueueRefId}/requesthistory'].get update: x-apievangelist-phrasing: intent: Get a request's audit history by reference ID effect: read questions: - What changed on a data subject request, and when, looking it up by its reference ID? - Can I see who edited a DSR's fields over time? instructions: - text: Get the audit history for request reference {requestQueueRefId}. slots: requestQueueRefId: path.requestQueueRefId - text: Show {size} history entries per page for request reference {requestQueueRefId}. slots: size: query.size requestQueueRefId: path.requestQueueRefId method: generated generated: '2026-09-26' - target: $.paths['/api/datasubject/v2/requestqueues/{templateId}'].post update: x-apievangelist-phrasing: intent: Create a data subject request from a web form effect: write questions: - How do I submit a new DSR against a specific web form template? - Do web form visibility rules carry over to a request created through the API? instructions: - text: Create a request for {email} using web form template {templateId}. slots: email: requestBody.email templateId: path.templateId - text: File a new {requestTypes} request for {firstName} {lastName} on template {templateId}. slots: requestTypes: requestBody.requestTypes firstName: requestBody.firstName lastName: requestBody.lastName templateId: path.templateId method: generated generated: '2026-09-26'