Adobe Suite · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Adobe Workfront Portfolio API
22 actions
22 updates
phrasing
extends
openapi/adobe-suite-portfolio-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 22 · first 16 shown; the file carries all of them
$.info
$.paths['/portfolio/{id}'].get
$.paths['/portfolio/{id}'].put
$.paths['/portfolio/{id}'].delete
$.paths['/portfolio'].get
$.paths['/portfolio'].put
$.paths['/portfolio'].post
$.paths['/portfolio'].delete
$.paths['/portfolio/count'].get
$.paths['/portfolio/search'].get
$.paths['/portfolio/report'].get
$.paths['/portfolio/{id}/share'].put
$.paths['/portfolio/share'].put
$.paths['/portfolio/{id}/unshare'].put
$.paths['/portfolio/unshare'].put
$.paths['/portfolio/{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 Portfolio API
version: 1.0.0
extends: openapi/adobe-suite-portfolio-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: 21
- target: $.paths['/portfolio/{id}'].get
update:
x-apievangelist-phrasing:
intent: Look up one portfolio
effect: read
questions:
- What's the call to pull up a single Workfront portfolio by its ID?
- Can I limit which fields come back when I open one portfolio?
instructions:
- text: Show portfolio {id}.
slots:
id: path.id
- text: Open portfolio {id} and return only {fields}.
slots:
id: path.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}'].put
update:
x-apievangelist-phrasing:
intent: Update one portfolio
effect: write
questions:
- How do I change the details of an existing portfolio?
- Can I edit a single portfolio and get specific fields back afterward?
instructions:
- text: Edit portfolio {id} with the changes I give you.
slots:
id: path.id
- text: Update portfolio {id} and return {fields} after saving.
slots:
id: path.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete one portfolio
effect: destructive
questions:
- Can I remove a single portfolio I no longer need?
- Is there a force option when deleting one portfolio?
instructions:
- text: Delete portfolio {id}.
slots:
id: path.id
- text: Force-delete portfolio {id} with force set to {force}.
slots:
id: path.id
force: query.force
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio'].get
update:
x-apievangelist-phrasing:
intent: Fetch several portfolios by ID
effect: read
questions:
- Can I retrieve a batch of portfolios in one call when I know their IDs?
- Which call returns multiple known portfolios at once?
instructions:
- text: Fetch portfolios {id}.
slots:
id: query.id
- text: Get the portfolios with IDs {id}, showing just {fields}.
slots:
id: query.id
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio'].put
update:
x-apievangelist-phrasing:
intent: Update many portfolios at once
effect: write
questions:
- How do I bulk edit several portfolios in a single request?
- Can I push the same change across multiple portfolios together?
instructions:
- text: Apply these edits to all the portfolios I list.
- text: Bulk update the portfolios and return {fields} for each.
slots:
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio'].post
update:
x-apievangelist-phrasing:
intent: Create a portfolio
effect: write
questions:
- How do I set up a new portfolio to group my programs and projects?
- What do I send to create a portfolio in Workfront?
instructions:
- text: Create a new portfolio with the name and details I provide.
- text: Add a portfolio and return {fields} once it exists.
slots:
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio'].delete
update:
x-apievangelist-phrasing:
intent: Delete many portfolios at once
effect: destructive
questions:
- Can I bulk delete several portfolios by listing their IDs?
- Is there a way to clear out a batch of old portfolios in one go?
instructions:
- text: Bulk delete portfolios {id}.
slots:
id: query.id
- text: Remove every portfolio in {id} using force {force}.
slots:
id: query.id
force: query.force
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/count'].get
update:
x-apievangelist-phrasing:
intent: Count portfolios
effect: read
questions:
- How many portfolios match a given filter?
- Can I get just the total number of portfolios without the records?
instructions:
- text: Count portfolios where {filters}.
slots:
filters: query.filters
- text: Tell me how many portfolios we have.
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/search'].get
update:
x-apievangelist-phrasing:
intent: Search portfolios
effect: read
questions:
- What's the way to find portfolios by owner, status or other criteria?
- Can I search portfolios with paging and sort options?
instructions:
- text: Search portfolios matching {filters}.
slots:
filters: query.filters
- text: Find portfolios where {filters} and list {fields} for each.
slots:
filters: query.filters
fields: query.fields
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/report'].get
update:
x-apievangelist-phrasing:
intent: Run an aggregate report on portfolios
effect: read
questions:
- Can I get grouped totals across portfolios as a report?
- Which call gives a report-style summary of portfolios?
instructions:
- text: Run a portfolio report filtered by {filters}.
slots:
filters: query.filters
- text: Summarize portfolios as a report using {listOptions}.
slots:
listOptions: query.listOptions
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}/share'].put
update:
x-apievangelist-phrasing:
intent: Share one portfolio with a user or team
effect: write
questions:
- How do I give a colleague or team access to one of my portfolios?
- Can I grant view-only access to a portfolio and forbid certain actions?
instructions:
- text: Share portfolio {id} with {accessorObjCode} {accessorID} at {coreAction} access.
slots:
id: path.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
- text: Grant {accessorID} {coreAction} on portfolio {id} but forbid {forbiddenActions}.
slots:
accessorID: query.accessorID
coreAction: query.coreAction
id: path.id
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/share'].put
update:
x-apievangelist-phrasing:
intent: Share several portfolios at once
effect: write
questions:
- Can I share a whole set of portfolios with the same person in one request?
- Is there a batch call to grant access to multiple portfolios?
instructions:
- text: Share portfolios {id} with {accessorObjCode} {accessorID} as {coreAction}.
slots:
id: query.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
coreAction: query.coreAction
- text: Batch share portfolios {id} to user {accessorID} with {coreAction} rights.
slots:
id: query.id
accessorID: query.accessorID
coreAction: query.coreAction
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}/unshare'].put
update:
x-apievangelist-phrasing:
intent: Remove someone's access to one portfolio
effect: destructive
questions:
- How do I stop sharing a portfolio with a particular user?
- Can I revoke a team's access to a single portfolio?
instructions:
- text: Unshare portfolio {id} from {accessorObjCode} {accessorID}.
slots:
id: path.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
- text: Revoke {accessorID}'s access to portfolio {id}.
slots:
accessorID: query.accessorID
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/unshare'].put
update:
x-apievangelist-phrasing:
intent: Remove access to several portfolios at once
effect: destructive
questions:
- Can I pull one user's access from many portfolios in a single call?
- How do I batch-revoke sharing across a list of portfolios?
instructions:
- text: Unshare portfolios {id} from {accessorObjCode} {accessorID}.
slots:
id: query.id
accessorObjCode: query.accessorObjCode
accessorID: query.accessorID
- text: Batch revoke {accessorID} from every portfolio in {id}.
slots:
accessorID: query.accessorID
id: query.id
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}/sharePublic'].put
update:
x-apievangelist-phrasing:
intent: Make one portfolio publicly shared
effect: write
questions:
- Can I publish a portfolio so anyone in the organization can see it?
- Can I set a public share on a portfolio with restricted actions?
instructions:
- text: Share portfolio {id} publicly with {coreAction} access.
slots:
id: path.id
coreAction: query.coreAction
- text: Make portfolio {id} public as {coreAction}, forbidding {forbiddenActions}.
slots:
id: path.id
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/sharePublic'].put
update:
x-apievangelist-phrasing:
intent: Make several portfolios publicly shared
effect: write
questions:
- Can I make a group of portfolios public in one request?
- What's the batch call for publicly sharing many portfolios?
instructions:
- text: Publicly share portfolios {id} with {coreAction} access.
slots:
id: query.id
coreAction: query.coreAction
- text: Batch publish portfolios {id} as {coreAction} but block {forbiddenActions}.
slots:
id: query.id
coreAction: query.coreAction
forbiddenActions: query.forbiddenActions
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/{id}/unsharePublic'].put
update:
x-apievangelist-phrasing:
intent: Remove the public share from one portfolio
effect: destructive
questions:
- What takes a portfolio out of public view again?
- Can I turn off public sharing on just one portfolio?
instructions:
- text: Remove the public share from portfolio {id}.
slots:
id: path.id
- text: Make portfolio {id} private again.
slots:
id: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/unsharePublic'].put
update:
x-apievangelist-phrasing:
intent: Remove public shares from several portfolios
effect: destructive
questions:
- Can I switch off public sharing for many portfolios at once?
- Which call batch-removes public access from a list of portfolios?
instructions:
- text: Remove public sharing from portfolios {id}.
slots:
id: query.id
- text: Take portfolios {id} out of public view in one batch.
slots:
id: query.id
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/calculateDataExtension'].put
update:
x-apievangelist-phrasing:
intent: Recalculate a portfolio's custom data
effect: write
questions:
- How do I refresh calculated custom fields on a portfolio?
- Can I force the data extension values on a portfolio to recompute?
instructions:
- text: Recalculate the custom data extension fields on portfolio {ID}.
slots:
ID: query.ID
- text: Refresh calculated custom form values for portfolio {ID}.
slots:
ID: query.ID
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/linkExternalObject'].put
update:
x-apievangelist-phrasing:
intent: Link a portfolio to an external object
effect: write
questions:
- How do I connect a portfolio to a record in an integrated external system?
- Can I attach an external object URL to a portfolio by integration type?
instructions:
- text: Link portfolio {objID} to external object {linkedObjectID} via {integrationType}.
slots:
objID: query.objID
linkedObjectID: query.linkedObjectID
integrationType: query.integrationType
- text: Attach external item {linkedObjectID} at {URL} to portfolio {objID}.
slots:
linkedObjectID: query.linkedObjectID
URL: query.URL
objID: query.objID
method: generated
generated: '2026-09-26'
- target: $.paths['/portfolio/unlinkExternalObject'].put
update:
x-apievangelist-phrasing:
intent: Unlink an external object from a portfolio
effect: destructive
questions:
- Is it possible to disconnect a portfolio from an external system record?
- Can I remove the integration link between a portfolio and an outside object?
instructions:
- text: Unlink external object {linkedObjectID} from portfolio {objID}.
slots:
linkedObjectID: query.linkedObjectID
objID: query.objID
- text: Remove the {integrationType} link on portfolio {objID}.
slots:
integrationType: query.integrationType
objID: query.objID
method: generated
generated: '2026-09-26'