Adobe Workfront

Connect your AI agents to Adobe Workfront.

Authentication: OAuth, server-to-server credentials, or API key. See Magic Link for the runtime auth flow, or Application credentials to bring your own OAuth app.

Sample use cases

  • List every task on the Q3 Website Relaunch project that is past due and who owns it.
  • Create a document approval for the new pricing deck and send reminders to anyone who hasn’t decided yet.
  • Report logged hours by user on the Brand Refresh project for last month.

Available Tools

list_approval_templates

List the approval templates the user can see, for create_approval_from_template. The API has no server-side filter or…

get_approval_template

Get one approval template with its stages and default participants. Use list_approval_templates to find template IDs…

create_approval_template

Create a reusable document approval template with named stages and default approvers. Use search_users for user IDs a…

update_approval_template

Update an approval template’s name and stages. The API requires the full name and stage list, so call get_approval_te…

delete_approval_template

Permanently delete an approval template. Approvals already created from it are kept. Use list_approval_templates to f…

get_document_approval

Get the approval on a document version: status, stages, and participants with their decisions. Returns approval_id nu…

create_document_approval

Start an approval on a document version with one or more stages of approvers/reviewers. Use search_users for user IDs…

create_approval_from_template

Apply an approval template to a document version: reads the template, then adds its stages (creating the approval if …

replace_approval_stages

Replace the stages of a document version’s approval: add, remove, or reorder stages or paths. Unstarted stages left o…

update_approval_stage

Update one approval stage’s name, deadline, participants, or rules. Send the full participant list. Use get_document_…

delete_approval_stage

Delete one stage that has not started yet (e.g. a later stage waiting on another) from a document version’s approval…

delete_document_approval

Delete the whole approval (every stage, participant, and decision) from a document version. Use get_document_approval…

add_approval_participants

Add approvers or reviewers to an existing approval. Set stage_id (from get_document_approval) on each for multi-stage…

remove_approval_participant

Remove a user or team from a document version’s approval. Removing the last participant deletes the approval (deleted…

remind_approval_participant

Send a reminder to one approval participant. Pass stage_id to remind them about a specific stage (uses the stage-scop…

remind_undecided_participants

Send reminders to every participant who has not decided yet on a document version’s approval, or only on one stage wh…

list_comments

List the comments on a project, task, issue, or document (obj_code + object_id), or search comments across objects wi…

count_comments

Count the comments on a project, task, issue, or document, or across objects with filters, without fetching them.

get_comment

Get one comment by ID, with its text, author, and thread. Use list_comments to find IDs.

create_comment

Post a comment on a project, task, issue, or document (obj_code + object_id from the matching list tool), or reply to…

update_comment

Replace a comment’s text. Use list_comments to find the ID; only the author can edit.

delete_comment

Permanently delete a comment. Use list_comments to find the ID.

like_comment

Like a comment as the signed-in user. Use list_comments to find the ID; undo with unlike_comment.

unlike_comment

Remove the signed-in user’s like from a comment. Use list_comments to find the ID.

list_object_types

List every Workfront object type with its code (PROJ, TASK, OPTASK, PORT, PRGM, TMPL, DOCV, HOURT, …). Use the code…

get_object_metadata

Get an object type’s schema: field names and types, references and collections (for ‘owner:name’ style field paths), …

search_objects

Search any Workfront object type (portfolios, programs, templates, document versions, hour types, teams, groups, …)…

count_objects

Count Workfront objects of any type that match filters, without fetching them , e.g. how many current projects or ove…

report_objects

Group and aggregate Workfront objects server-side , e.g. hours summed per project, or project counts per status. Use …

get_object

Get one Workfront object of any type by ID, with chosen fields (e.g. ‘name,owner:name,DE:Region’). Use search_objects…

create_object

Create a Workfront object of any type (portfolio, program, company, assignment, …). Call get_object_metadata first …

update_object

Update fields on a Workfront object of any type. Call get_object_metadata for field names; use search_objects for IDs…

delete_object

Permanently delete a Workfront object of any type by ID. Use search_objects to find IDs; set force=true to remove dep…

run_object_action

Run a Workfront action on any object: move a task (projectID), convert an issue to a project or task, assign, mark do…

list_custom_forms

List custom forms, optionally only those for one object type (e.g. ‘PROJ’). Call get_custom_form next for field names…

get_custom_form

Get a custom form’s fields: names (use as custom_fields keys), labels, types, required flags, and dropdown options. U…

list_documents

List documents, optionally only those attached to one project, task, or issue (attached_to_obj_code + attached_to_id)…

get_document

Get one document by ID, including its current version (ID, number, file name, type, size). Use list_documents to find…

delete_document

Permanently delete a document and all its versions. Use list_documents to find the ID.

list_hours

List logged hours with server-side filters (project, task, issue, user, entry date range) plus any Workfront filter, …

get_hour

Get one hour entry by ID with chosen fields. Use list_hours to find IDs.

create_hour

Log hours against exactly one task (list_tasks), issue (list_issues), or project (list_projects). Use search_objects …

update_hour

Change an hour entry’s hours, date, hour type, or note. Use list_hours for the ID and search_objects obj_code ‘HOURT’…

delete_hour

Permanently delete an hour entry. Use list_hours to find the ID.

list_issues

List issues and requests with server-side filters (project, status, priority, type, assignee, name) plus any Workfron…

get_issue

Get one issue or request by ID with chosen fields. Use list_issues to find IDs.

create_issue

Log an issue or request on a project (project_id from list_projects). Use search_users for assignee IDs. Returns the …

update_issue

Update an issue’s name, status, priority, severity, type, assignee, due date, or custom fields. Use list_issues for t…

delete_issue

Permanently delete an issue. Use list_issues for the ID; force=true also deletes logged hours.

list_my_work

List the signed-in user’s open work , the tasks and issues in their My Work list. Use list_tasks or list_issues with …

list_fields

List the fields of a Workfront Planning record type (cursor pagination). Returns the field IDs that record data, sear…

get_field

Get one Workfront Planning field, including its type, select options, and type settings. Use list_fields to find the …

create_field

Add a field to a Workfront Planning record type (list_record_types for the ID). Date, number, percentage, currency, a…

update_field

Change a Workfront Planning field’s name, description, select options, or type settings; unset inputs are kept. Use l…

delete_field

Delete a Workfront Planning field and its values on every record. Use list_fields to find the ID. Needs the Adobe sig…

search_records

Search or browse records of a Workfront Planning record type, with filter, sort, grouping, field selection, and page/…

get_record

Get one Workfront Planning record with its field values keyed by field ID. Use search_records to find the ID and list…

create_record

Create one Workfront Planning record. Call list_fields first to get the field IDs for data keys; use list_record_type…

update_record

Change field values on a Workfront Planning record; fields not given are kept. Use search_records for the record ID a…

delete_record

Delete one Workfront Planning record. Use search_records to find the ID; for many records use bulk_record_actions wit…

bulk_record_actions

Create, update (replace data), patch (change given fields), or delete up to 100 Workfront Planning records of one rec…

move_records

Reorder Workfront Planning records by placing them before or after another record. Use list_record_types for the reco…

get_record_history

List the field change history of a Workfront Planning record (cursor pagination). Use search_records to find the reco…

list_record_types

List the record types in a Workfront Planning workspace (cursor pagination). Returns the record type IDs that search_…

get_record_type

Get one Workfront Planning record type. Use list_record_types to find the ID; its fields come from list_fields. Needs…

create_record_type

Create a record type (e.g. ‘Campaign’) in a Workfront Planning workspace. Use list_workspaces for the workspace ID; a…

update_record_type

Change a Workfront Planning record type’s name, description, icon, color, or primary field; unset fields are kept. Us…

delete_record_type

Permanently delete a Workfront Planning record type and all of its records. Use list_record_types to find the ID. To …

list_addable_global_record_types

List global record types a Workfront Planning workspace can use (cursor pagination). Adding one is done in the Workfr…

detach_global_record_type

Remove a global record type from one Workfront Planning workspace without deleting it. Use list_workspaces and list_r…

get_planning_sharing

List who has access to a Workfront Planning workspace, record type, record, view, or field, with each member’s role. …

update_planning_sharing

Grant, change, or revoke access to a Workfront Planning workspace, record type, record, view, or field; for records a…

list_views

List the saved views (table, timeline, calendar, list, gallery) of a Workfront Planning record type (cursor paginatio…

get_view

Get one Workfront Planning view with its filter, sorting, grouping, and layout settings. Use list_views to find the I…

create_view

Create a saved view of a Workfront Planning record type. Use list_record_types for the record type ID and list_fields…

update_view

Change a Workfront Planning view’s name, filter, sorting, grouping, layout, or visibility; unset inputs are kept. Use…

delete_view

Delete a Workfront Planning view; the records it showed are kept. Use list_views to find the ID. Needs the Adobe sign…

list_workspaces

List Workfront Planning workspaces with cursor pagination. Returns the workspace IDs that list_record_types and creat…

get_workspace

Get one Workfront Planning workspace, including its record type sections. Use list_workspaces to find the ID. Needs t…

create_workspace

Create a Workfront Planning workspace. Returns its ID for create_record_type. Needs the Adobe sign-in or server-to-se…

update_workspace

Change a Workfront Planning workspace’s name, description, color, icon, or record type sections; unset fields are kep…

delete_workspace

Permanently delete a Workfront Planning workspace and everything in it. Use list_workspaces to find the ID. Needs the…

list_projects

List projects with server-side filters (status, owner, portfolio, program, group, name) plus any Workfront filter, so…

get_project

Get one project by ID with chosen fields (e.g. ‘name,status,owner:name,DE:Budget’). Use list_projects to find IDs.

create_project

Create a project, optionally from a template (template_id via search_objects obj_code ‘TMPL’). Use search_users for o…

update_project

Update a project’s name, status, dates, owner, portfolio/program, or custom fields. Use list_projects for the ID and …

delete_project

Permanently delete a project. Use list_projects for the ID; force=true also deletes its tasks, issues, and hours. Con…

list_tasks

List tasks with server-side filters (project, status, assignee, parent, name) plus any Workfront filter, sorting, and…

get_task

Get one task by ID with chosen fields (e.g. ‘name,status,assignments:assignedTo:name’). Use list_tasks to find IDs.

create_task

Create a task in a project (project_id from list_projects). Use search_users for assignee IDs and list_tasks for pare…

update_task

Update a task’s name, status, percent complete, dates, assignee, priority, or custom fields. Use list_tasks for the I…

delete_task

Permanently delete a task. Use list_tasks for the ID; force=true also deletes subtasks and logged hours.

search_users

Search Workfront users by name, email, active status, or home group, plus any Workfront filter. Returns user IDs for …

get_user

Get one user by ID with chosen fields. Use search_users to find IDs.

get_current_user

Get the Workfront user the connection acts as , their ID, name, email, and access level. Use the ID wherever a tool a…