Expand my Community achievements bar.

Why use an API?

Avatar

Level 10
Hi There's a lot of discussion about API usage on this board. I know what an API does (my experience in the travel industry: to serve data to clients in real time is my best short answer) but I'm curious to know why/when people use an API for Workfront. What is the scenario that makes it a better option? Thanks, Jill Jill Ackerman
Topics

Topics help categorize Community content and increase your ability to discover relevant content.

9 Replies

Avatar

Level 10
It allows us the flexibility to do virtually anything we want that Workfront can't do out of the box (Workflows, Integrations with other systems, Emails, etc.). Here are some quick examples what we use it for: Workflows – one of many examples would be New Hire Requests – Someone submits a request form via native WF, we take that and create a workflow type project from a template with about 22 tasks (i.e. setup email account, network ID, badge, computer, cell phone, application access, etc.). It also allows us to remove the unnecessary tasks (so if they didn't choose cell phone on the form, we don't generate a task to get them a cell phone). This has been a big timesaver and win for us. Email notifications – we created our own way to send email notifications (with our own email format) on certain workflows (we use it to announce Change Logs and Helpdesk Surveys and more). Integrations with other applications. We integrate with PeopleSoft to provision new hires and deactivate people that left. This is HUGE in that the Admin doesn't have to constantly add and deactivate people every day and it brings over their Group information (Division), phone number, etc. It's automatic. At worst I have to change their Access level in some cases. We also do some financial calculations with it. In the Workflows we can also add Approval processes based on selections made in the form, move the object to a certain team or project, rename the object to a standard name (i.e. New Hire [John Doe] Starts on [start date]), convert an issue to a task or project automatically and more. Essentially if you have someone who can develop code for you, you can do almost anything you can dream up with the API.

Avatar

Level 10
Hi, As Vic said, the API just makes your life easier. :) We tie into our Finance System for user mgmt, job role management, and company mgmt. Also, since we use the financial tool for time sheets, we use the API to extract Workfront data to build custom burn rate reports that compare Client Estimate to Workfront Plan to Actual Hours. We also have an integration with our company's custom PTO Tracker so that when requests are made in that tool, a task in a project is created so resource managers can see when someone is off without having to do double entry. We also took a page from Denver Water and have an API call that helps Kathy and I with compliance on project settings. We have like 20 different business units in our instance so making sure that they have the right custom form, resource pool, schedule, etc. was so time consuming. Now it runs every night and Kathy and I only have to deal with it when an exception error comes through. If you have a developer, I highly recommend using the API to help you and your users. Anthony Imgrund FCB

Avatar

Level 10
Our usage of the API is similar to Vic and Anthony, in terms of integrating with other systems, emailing, automating various processes etc. As mentioned, pretty much anything you can think of is possible with the API and your integration platform of choice (e.g. Fusion). One other thing which hasn't been mentioned yet is we use the API to extract data into Power BI for reporting. There is no need to manually run reports to export the data (with the exception of resource availability data which is not available via the API). Without the API we wouldn't have chosen Workfront in the first place, and we certainly couldn't manage without it. Regards, David David Cornwell

Avatar

Level 10
There are pretty cool things we can do with the API. As already mentioned by people on this thread, we can integrate with other applications but more so for our team, we automate some day to day processes that would have been manually done on Workfront and Workfront DAM. Polly Co

Avatar

Level 10
One way we use the API is to provision user accounts. We check Active Directory nightly for any new users with the AD Group for Workfront. If they have the role and don't exist in Workfront, we add a user account for them with preset Access Level, Home Group ID, Layout Template, Custom Form, and Custom Data. After adding the account, we post an Update to the user's profile in Workfront so that the user receives a "Welcome" message from the administrators in their inbox. Best of all, the update comes from within Workfront as an update. We also auto-reduce users to "Reviewer" licenses when they go inactive for a certain number of days so we can re-purpose licenses. When we do, we post an update to the user's profile and we tag the user's manager in Workfront in the update for awareness. We've recently developed an integration where an external application triggers incidents when thresholds are reached and generates issues in Workfront with pre-set approval processes. Workfront handles the approval processes. When an approval is received to change a threshold, we read the new value via the API and make a change to the external application. These are just a few examples of integrations that automate and save huge amounts of effort and $. Narayan Raum Workfront CoE Manager & Delivery Lead SunTrust Bank

Avatar

Level 10
That's great, Narayan. Some good ideas there... David Cornwell

Avatar

Level 10
Yeah I agree. I like the auto-reduce. We also use the API to auto-provision and deactivate (using AD and PeopleSoft as sources) and it saves me a TON of time. But the auto-reduce is a nice touch. I might have to incorporate that.

Avatar

Level 8
Hey David -- How difficult is it to use Power BI with Workfront? We've been trying to use Tableau. It works but has also been and continues to be a challenge. Wanted to hear from someone that actually uses it rather than being sold on it by sales people. Matt May Stream Companies

Avatar

Level 10
Hi Matt, There's a few variables in terms of how you plan to get the data out of Workfront's API......whether directly using Power BI's 'Power Query' to get the data straight from WF, or by using some other ETL tool to get data into a data warehouse that you then connect Power BI to. We started out with the former and are now starting to move toward the latter. The hardest part technically is to set up a process to loop through and retrieve all the results, when there is an unknown number of results. E.g. you might have 51255 tasks. Each Workfront API query returns a maximum of 2000 items, so your query will need to be called 26 times then append the results together. You obviously can't hard-code it to run 26 times because your data will grow over time. Incremental refresh is now available in Power BI Premium but we don't have that yet. Setting up the looping in Power Query was complex but we got there eventually. I've submitted an idea "https://support.workfront.com/hc/en-us/community/posts/360027659414-API-Pagination-link-to-Next-Page-etc">here to enhance WF's API to provide 'next page' URLs in each response, as this will allow the looping process to be setup more easily...especially with tools like Azure Data Factory. There's a bunch more things we've learned along the way. Getting back to your question of how difficult it is, it really depends on what sort of skillsets you have on your team. It's not simple and will need someone fairly technical, but we're very happy with the solution we've developed and our Power BI user numbers continue to grow as a testament. If you'd like to elaborate on the issues you've had with Tableau I could perhaps address those in terms of Power BI. Regards, David Cornwell