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.
View Overlay File View on GitHub Overlay Specification

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

Raw ↑
# 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'