Adobe Suite · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Adobe Workfront Document API
38 actions
38 updates
phrasing
extends
openapi/adobe-suite-document-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Adobe Suite's API. It is a proposal applied on top of the contract, not a document Adobe Suite publishes.
What the actions change
x-apievangelist-phrasing
Targets 38 · first 16 shown; the file carries all of them
$.info
$.paths['/document/{id}'].get
$.paths['/document/{id}'].put
$.paths['/document/{id}'].delete
$.paths['/document'].get
$.paths['/document'].put
$.paths['/document'].post
$.paths['/document'].delete
$.paths['/document/count'].get
$.paths['/document/search'].get
$.paths['/document/report'].get
$.paths['/document/{id}/share'].put
$.paths['/document/share'].put
$.paths['/document/{id}/unshare'].put
$.paths['/document/unshare'].put
$.paths['/document/{id}/sharePublic'].put
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Adobe Workfront Document API
version: 1.0.0
extends: openapi/adobe-suite-document-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: 37
- target: $.paths['/document/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get one Workfront document
effect: read
questions:
- How do I look up a single document by its ID in Workfront?
- Can I choose which fields come back when fetching one document?
instructions:
- text: Get document {id}.
slots:
id: path.id
- text: Fetch document {id} with only the fields {fields}.
slots:
id: path.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}'].put
update:
x-apievangelist-phrasing:
intent: Edit a document's details
effect: write
questions:
- How do I change the name or description of one existing document?
- Can I update a single document and get specific fields back in the response?
instructions:
- text: Edit document {id} with the new values I give you.
slots:
id: path.id
- text: Update document {id} and return the fields {fields}.
slots:
id: path.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a document
effect: destructive
questions:
- What's the call to permanently delete one document from Workfront?
- Is there a way to force-delete a document that won't delete normally?
instructions:
- text: Delete document {id}.
slots:
id: path.id
- text: Force-delete document {id} with force set to {force}.
slots:
id: path.id
force: query.force
method: generated
generated: '2026-09-26'
- target: $.paths['/document'].get
update:
x-apievangelist-phrasing:
intent: Get several documents by ID at once
effect: read
questions:
- Can I fetch a batch of documents in one call if I have their IDs?
- What's the way to retrieve multiple documents together instead of one by one?
instructions:
- text: Get the documents with IDs {ids}.
slots:
ids: query.id
- text: Bulk-fetch documents {ids} returning just {fields}.
slots:
ids: query.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document'].put
update:
x-apievangelist-phrasing:
intent: Edit many documents in one request
effect: write
questions:
- Can I update a whole batch of documents in a single request?
- How do I bulk edit documents rather than editing each one?
instructions:
- text: Bulk edit the documents I list with the changes I provide.
- text: Apply my edits to several documents at once and return {fields}.
slots:
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document'].post
update:
x-apievangelist-phrasing:
intent: Create a document
effect: write
questions:
- How do I add a new document record in Workfront?
- Can I create a document and choose which of its fields are returned?
instructions:
- text: Create a new document with the details I give you.
- text: Add a document and return its {fields}.
slots:
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document'].delete
update:
x-apievangelist-phrasing:
intent: Delete several documents at once
effect: destructive
questions:
- Can I delete a batch of documents in one call?
- Is there a bulk delete for documents by their IDs?
instructions:
- text: Delete the documents with IDs {ids}.
slots:
ids: query.id
- text: Bulk force-delete documents {ids} with force {force}.
slots:
ids: query.id
force: query.force
method: generated
generated: '2026-09-26'
- target: $.paths['/document/count'].get
update:
x-apievangelist-phrasing:
intent: Count documents matching a filter
effect: read
questions:
- How many documents do we have in Workfront?
- Can I get just a count of documents that match certain conditions?
instructions:
- text: Count all documents.
- text: Count the documents matching {filters}.
slots:
filters: query.filters
method: generated
generated: '2026-09-26'
- target: $.paths['/document/search'].get
update:
x-apievangelist-phrasing:
intent: Search documents with filters
effect: read
questions:
- How do I find documents that match specific criteria?
- Can I page and sort through document search results?
instructions:
- text: Search documents where {filters}.
slots:
filters: query.filters
- text: Search documents matching {filters} with list options {listOptions}, returning {fields}.
slots:
filters: query.filters
listOptions: query.listOptions
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/document/report'].get
update:
x-apievangelist-phrasing:
intent: Run an aggregate report on documents
effect: read
questions:
- Can I get a grouped or aggregated report over our documents?
- What's the way to build a summary report of documents meeting a condition?
instructions:
- text: Run a document report filtered by {filters}.
slots:
filters: query.filters
- text: Build a document report for {filters} using list options {listOptions}.
slots:
filters: query.filters
listOptions: query.listOptions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}/share'].put
update:
x-apievangelist-phrasing:
intent: Share a document with a user or team
effect: write
questions:
- How do I give a specific user or team access to one document?
- Can I share a document but block certain actions for that person?
instructions:
- text: Share document {id} with {accessorObjCode} {accessorID} at {coreAction} access.
slots:
id: path.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
- text: Give {accessorObjCode} {accessorID} {coreAction} access to document {id} but forbid {forbiddenActions}.
slots:
id: path.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/share'].put
update:
x-apievangelist-phrasing:
intent: Share several documents with one accessor
effect: write
questions:
- Can I share many documents with the same user in one go?
- How do I grant a team access to a batch of documents at once?
instructions:
- text: Share documents {ids} with {accessorObjCode} {accessorID} at {coreAction} access.
slots:
ids: query.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
- text: Batch-share documents {ids} to {accessorID} of type {accessorObjCode} with {coreAction}, forbidding {forbiddenActions}.
slots:
ids: query.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}/unshare'].put
update:
x-apievangelist-phrasing:
intent: Remove someone's access to a document
effect: write
questions:
- How do I stop sharing a single document with a particular user?
- Can I take away a team's access to one document?
instructions:
- text: Unshare document {id} from {accessorObjCode} {accessorID}.
slots:
id: path.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
- text: Revoke user {accessorID} access to document {id}.
slots:
id: path.id
accessorID: query.accessorID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/unshare'].put
update:
x-apievangelist-phrasing:
intent: Remove an accessor from several documents
effect: write
questions:
- Can I remove one person's access from a whole set of documents at once?
- Is it possible to bulk unshare documents from a team?
instructions:
- text: Unshare documents {ids} from {accessorObjCode} {accessorID}.
slots:
ids: query.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
- text: Batch-revoke access for {accessorID} on documents {ids}.
slots:
ids: query.id
accessorID: query.accessorID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}/sharePublic'].put
update:
x-apievangelist-phrasing:
intent: Share a document publicly
effect: write
questions:
- How do I make one document publicly accessible?
- Can I publicly share a document with view-only rights?
instructions:
- text: Share document {id} publicly with {coreAction} access.
slots:
id: path.id
coreAction: query.coreAction
- text: Make document {id} public at {coreAction}, forbidding {forbiddenActions}.
slots:
id: path.id
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/sharePublic'].put
update:
x-apievangelist-phrasing:
intent: Share several documents publicly
effect: write
questions:
- Can I make a batch of documents public in one call?
- What's the way to publicly share many documents at the same access level?
instructions:
- text: Publicly share documents {ids} with {coreAction} access.
slots:
ids: query.id
coreAction: query.coreAction
- text: Make documents {ids} public at {coreAction} but forbid {forbiddenActions}.
slots:
ids: query.id
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/{id}/unsharePublic'].put
update:
x-apievangelist-phrasing:
intent: Stop sharing a document publicly
effect: write
questions:
- How do I turn off public sharing on one document?
- Can I make a public document private again?
instructions:
- text: Remove public sharing from document {id}.
slots:
id: path.id
- text: Make document {id} private again.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/document/unsharePublic'].put
update:
x-apievangelist-phrasing:
intent: Stop public sharing on several documents
effect: write
questions:
- Can I turn off public links for a batch of documents at once?
- Can I make many public documents private in one request?
instructions:
- text: Remove public sharing from documents {ids}.
slots:
ids: query.id
- text: Batch-unpublish the public share on documents {ids}.
slots:
ids: query.id
method: generated
generated: '2026-09-26'
- target: $.paths['/document/calculateDataExtension'].put
update:
x-apievangelist-phrasing:
intent: Recalculate a document's custom data
effect: write
questions:
- How do I recalculate the calculated custom fields on a document?
- Can I refresh a document's custom form data extension values?
instructions:
- text: Recalculate the custom data extension for document {ID}.
slots:
ID: query.ID
- text: Refresh calculated custom fields on document {ID}.
slots:
ID: query.ID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/checkIn'].put
update:
x-apievangelist-phrasing:
intent: Check documents back in
effect: write
questions:
- How do I check a document back in after editing it?
- Can I check in several checked-out documents at once?
instructions:
- text: Check in documents {documentIDs}.
slots:
documentIDs: query.documentIDs
- text: Release my checkout on document {documentIDs} by checking it in.
slots:
documentIDs: query.documentIDs
method: generated
generated: '2026-09-26'
- target: $.paths['/document/checkOut'].put
update:
x-apievangelist-phrasing:
intent: Check documents out for editing
effect: write
questions:
- How do I check out a document so others can't edit it while I work?
- Can I lock several documents by checking them out together?
instructions:
- text: Check out documents {documentIDs}.
slots:
documentIDs: query.documentIDs
- text: Lock document {documentIDs} for my edits by checking it out.
slots:
documentIDs: query.documentIDs
method: generated
generated: '2026-09-26'
- target: $.paths['/document/completeLargeDocument'].put
update:
x-apievangelist-phrasing:
intent: Finish a large multipart document upload
effect: write
questions:
- What finalizes a large file upload once all parts are sent?
- Can I create a proof automatically when completing a large document upload?
instructions:
- text: Complete large upload {uploadID} as document {name} in folder {folderID}.
slots:
uploadID: query.uploadID
name: query.name
folderID: query.folderID
- text: Finish upload {uploadID} with ETag map {eTagMap} and create a proof set to {createProof}.
slots:
uploadID: query.uploadID
eTagMap: query.eTagMap
createProof: query.createProof
method: generated
generated: '2026-09-26'
- target: $.paths['/document/createLargeDocument'].put
update:
x-apievangelist-phrasing:
intent: Start a large multipart document upload
effect: write
questions:
- What's the first step for uploading a very large file as a document?
- What do I need to start a large document upload into a folder?
instructions:
- text: Start a large document upload of {fileSize} bytes into folder {folderID}.
slots:
fileSize: query.fileSize
folderID: query.folderID
- text: Begin a large upload of a new version for document {documentID} sized {fileSize}.
slots:
documentID: query.documentID
fileSize: query.fileSize
method: generated
generated: '2026-09-26'
- target: $.paths['/document/createLinkedProofVersion'].put
update:
x-apievangelist-phrasing:
intent: Create a linked proof version of a document
effect: write
questions:
- How do I add a linked proof version to an existing document?
- Can I create a proof version from an uploaded file handle?
instructions:
- text: Create a linked proof version of document {documentID} from file handle {fileHandle}.
slots:
documentID: query.documentID
fileHandle: query.fileHandle
- text: Add linked proof version {fileName} to document {documentID}, created by {creatorName}.
slots:
fileName: query.fileName
documentID: query.documentID
creatorName: query.creatorName
method: generated
generated: '2026-09-26'
- target: $.paths['/document/createProof'].put
update:
x-apievangelist-phrasing:
intent: Create a proof from a document version
effect: write
questions:
- How do I generate a proof for a specific document version for review?
- Can I pass advanced proofing options like a workflow when creating a proof?
instructions:
- text: Create a proof for document version {documentVersionID}.
slots:
documentVersionID: query.documentVersionID
- text: Create a proof for version {documentVersionID} with advanced options {advancedProofingOptions}.
slots:
documentVersionID: query.documentVersionID
advancedProofingOptions: query.advancedProofingOptions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/createProofRest'].put
update:
x-apievangelist-phrasing:
intent: Create a proof via the REST proofing variant
effect: write
questions:
- Is there a REST-style call for creating a proof from a document version?
- Which endpoint creates a proof using the createProofRest variant?
instructions:
- text: Use the REST proof variant to create a proof for version {documentVersionID}.
slots:
documentVersionID: query.documentVersionID
- text: Call createProofRest on version {documentVersionID} with options {advancedProofingOptions}.
slots:
documentVersionID: query.documentVersionID
advancedProofingOptions: query.advancedProofingOptions
method: generated
generated: '2026-09-26'
- target: $.paths['/document/getDocumentProofTemplate'].put
update:
x-apievangelist-phrasing:
intent: Get the proof template for a proof token
effect: read
questions:
- How do I find which proof template a given proof token uses?
- Can I look up a document's proof template from its proof token?
instructions:
- text: Get the document proof template for proof token {proofToken}.
slots:
proofToken: query.proofToken
- text: Look up which proofing template is tied to token {proofToken}.
slots:
proofToken: query.proofToken
method: generated
generated: '2026-09-26'
- target: $.paths['/document/getProofRecipients'].put
update:
x-apievangelist-phrasing:
intent: List recipients for a proof template stage
effect: read
questions:
- Who are the default recipients on a proof template's stage?
- Can I see the reviewers configured for one stage of a proofing template?
instructions:
- text: Get proof recipients for template {templateId} stage {stageId}.
slots:
templateId: query.templateId
stageId: query.stageId
- text: List the reviewers on stage {stageId} of proof template {templateId}.
slots:
templateId: query.templateId
stageId: query.stageId
method: generated
generated: '2026-09-26'
- target: $.paths['/document/getProofStages'].put
update:
x-apievangelist-phrasing:
intent: List the stages of a proof template
effect: read
questions:
- What stages does a proofing template have?
- Can I list the review stages defined in a proof template?
instructions:
- text: Get the stages of proof template {templateId}.
slots:
templateId: query.templateId
- text: Show the review stages in proofing template {templateId}.
slots:
templateId: query.templateId
method: generated
generated: '2026-09-26'
- target: $.paths['/document/getProofTemplate'].put
update:
x-apievangelist-phrasing:
intent: List available proof templates
effect: read
questions:
- Which proofing templates are available to me?
- Can I get the proof templates I can apply to new proofs?
instructions:
- text: List the proof templates available for creating proofs.
- text: Show me every proofing workflow template I can choose from.
method: generated
generated: '2026-09-26'
- target: $.paths['/document/getTotalSizeForDocuments'].put
update:
x-apievangelist-phrasing:
intent: Get total file size of documents
effect: read
questions:
- How much storage do a set of documents take up in total?
- Can the total size include linked documents too?
instructions:
- text: Get the total size of documents {documentIDs}.
slots:
documentIDs: query.documentIDs
- text: Sum the file size of documents {documentIDs} with linked documents included set to {includeLinked}.
slots:
documentIDs: query.documentIDs
includeLinked: query.includeLinked
method: generated
generated: '2026-09-26'
- target: $.paths['/document/isLinkedDocument'].put
update:
x-apievangelist-phrasing:
intent: Check whether a document is linked
effect: read
questions:
- How can I tell if a document is linked from an external source?
- Is a given document a linked document or an uploaded one?
instructions:
- text: Check whether document {documentID} is a linked document.
slots:
documentID: query.documentID
- text: Tell me if {documentID} is linked rather than uploaded.
slots:
documentID: query.documentID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/isProofAutoGenrationEnabled'].put
update:
x-apievangelist-phrasing:
intent: Check if automatic proof generation is on
effect: read
questions:
- Is automatic proof generation enabled for our account?
- Do uploaded documents get proofs created automatically?
instructions:
- text: Check whether proof auto-generation is enabled.
- text: Tell me if proofs are generated automatically on upload.
method: generated
generated: '2026-09-26'
- target: $.paths['/document/move'].put
update:
x-apievangelist-phrasing:
intent: Move a document to another object
effect: write
questions:
- How do I move a document from one project or task to another?
- Can I reattach a document to a different object type?
instructions:
- text: Move document {ID} to {docObjCode} {objID}.
slots:
ID: query.ID
docObjCode: query.docObjCode
objID: query.objID
- text: Reattach document {ID} to object {objID}.
slots:
ID: query.ID
objID: query.objID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/moveToFolder'].put
update:
x-apievangelist-phrasing:
intent: Move documents into a folder
effect: write
questions:
- How do I move documents into a different folder?
- Can I file several documents into one folder together?
instructions:
- text: Move documents {documentIDs} into folder {folderID}.
slots:
documentIDs: query.documentIDs
folderID: query.folderID
- text: File {documentIDs} under document folder {folderID}.
slots:
documentIDs: query.documentIDs
folderID: query.folderID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/sendDocumentsToExternalProvider'].put
update:
x-apievangelist-phrasing:
intent: Send documents to an external storage provider
effect: write
questions:
- How do I push documents out to a connected external document provider?
- Can I choose the destination folder when sending documents to external storage?
instructions:
- text: Send documents {documentIDs} to external provider {providerID}.
slots:
documentIDs: query.documentIDs
providerID: query.providerID
- text: Export {documentIDs} to provider {providerID} into folder {destinationFolderID}.
slots:
documentIDs: query.documentIDs
providerID: query.providerID
destinationFolderID: query.destinationFolderID
method: generated
generated: '2026-09-26'
- target: $.paths['/document/unlinkDocuments'].put
update:
x-apievangelist-phrasing:
intent: Unlink linked documents
effect: write
questions:
- Is there a way to break the link between documents and their external source?
- Can I unlink several linked documents at once?
instructions:
- text: Unlink documents {ids}.
slots:
ids: query.ids
- text: Remove the external link from documents {ids}.
slots:
ids: query.ids
method: generated
generated: '2026-09-26'