[Event Follow-Up] Nathan's Five Faves: Basic APIs for the Workfront World – June 23, 2026 | Community
Skip to main content
CynthiaBoon
Adobe Employee
Adobe Employee
June 23, 2026

[Event Follow-Up] Nathan's Five Faves: Basic APIs for the Workfront World – June 23, 2026

  • June 23, 2026
  • 2 replies
  • 72 views

Curious about what the Workfront API can really do for you? Join Nathan Johnson ​@NathanJo1, Adobe Technical Support Engineer III, as he breaks down the fundamentals and brings APIs into the real world. 

In this session, Nathan walks through the basics of the Workfront API, what it is, how it works, and why it matters, before diving into his five favorite use cases that showcase its power in action. 
 
From foundational knowledge to real-world application, this session will give you a clear, approachable path into the world of Workfront APIs, guided by an expert who works with them every day. Whether you're new to APIs or looking to expand your technical toolkit, this session will help you connect the dots between concept and capability.  

Access the event resources below: 

We’d love to start a series on this topic, so let’s keep the conversation going:  

  • What questions do you still have? 
  • What are your favorite Workfront API use cases?
  • Are there any use cases you'd like to explore further? 

Drop your thoughts, follow-up questions, or takeaways below and feel free to connect with others who attended! 

Thank you for being part of the community and be sure to register for more upcoming events!  

2 replies

Level 2
June 24, 2026

Our Workfront instance serves 34 of our business sites around the world.  We would like to maintain a table of golden record customer names, which would be between 50,000 and 75, 000 records, using a daily API call to create new records or apply any changes to existing ones.  What is the best object to use to capture the following information for each customer record: name, golden record ID, city, state, country?  My first instinct is to use the Company object and then offer users a typeahead field in which to enter the customer name for each project within their portfolios. I would appreciate any feedback on best practices or recommendations.

KristenS_WF
Level 7
July 1, 2026

Great session.  I definitely want to put in a vote for a follow-up session on OAuth 2.0, and I have a use case for which I need some assistance.

 

I was able to follow the instructions in the slide link (https://developer.adobe.com/workfront-apis/guides/gaining-access/) to create API credentials and give Admin access to the Technical Account created.  I’m a little stuck on what comes next.

 

Currently I use Session ID to authenticate Workfront API calls in Power BI; side note: the session mentioned that the API Basics documentation indicates the Session ID is no longer supported, but the documentation actually still lists it as the preferred method:

 

 

I have a Fusion scenario that generates the Session ID on demand (after selecting the ‘Run’ dropdown value in a custom field I have in a report).  I treat the Session ID in Power BI as a parameter that can be updated prior to refreshing the dataset, but I’d love if the OAuth 2.0 method could allow me to skip manual steps in the refresh.

 

In Power BI I use a GetData function and a separate query that invokes the function and handles possible pagination for larger data pulls.  Here’s an example of both I use for pulling User data:

 

(index as number)=>

let

Source = Json.Document(Web.Contents("https://MYORGNAME.my.workfront.com/attask/api/",

[RelativePath = "v21.0/user/search",

Headers=[sessionID=WFSessionID],

Query =

[

//ResourceTeam not blank
#"DE:ETResourceTeam_Mod"=Text.From("notblank"),

#"$$FIRST"=Text.From(index),

#"$$LIMIT"="2000",

fields="name, scheduleID, timeZone, role:name, DE:ETResourceTeam, DE:ETResourceSubteam, DE:ETResourceTeamManager, DE:ETResourceTarget"

]

]

))
in
Source

 

let

Source = List.Generate(

()=> [Result = try GetData(0) otherwise null, Offset = 0],

each List.IsEmpty([Result][data]) <> true,

each [Result = try GetData([Offset]+2000) otherwise null, Offset = [Offset]+2000],

each [Result])

in

Source

 

Does anyone have pointers for modifying the M code for OAuth 2.0 use (and any additional settings guidance that should be followed)?

 

Thanks!