Introduction to universal connectors walkthrough
- Topics:
- Workfront Fusion
CREATED FOR:
- Beginner
- User
Overview
Using a Pokemon character in a spreadsheet, call the Poke API through an HTTP connector to gather and post more information on that character.
Introduction to universal connectors walkthrough
Workfront recommends watching the exercise walkthrough video before trying to recreate the exercise in your own environment.
Transcript
As you begin to build scenarios, you’ll run into situations where Workfront Fusion does not have the app connection to a certain service or platform that you need. However, all hope is not lost because of universal connectors. With the Universal connectors, you can connect to any API system, and perform actions necessary to complete your scenario.
In Workfront Fusion, there are HTTP app connectors which can perform any RESTful call to an endpoint and all of the authentication methods are baked right into the module, which is awesome. There’s also SOAP connectors which can perform actions against a predefined WSDL. There are also email or SMTP connectors which can read, send and manage emails to one of those connectors. And finally, you can read, upload or download files from a standard FTP or SFTP connection.
You can also see that there are basic Auth, OAuth 2.0, client certificate Auth requests, and the ability to get a file using the HTTP connector app.
Let’s start by creating a new scenario in our exercise folder.
We’ll pre-select Workfront, CSV, HTTP and the tools module.
We’ll name this using universal connectors.
We’re going to use Workfront again to download the data file, which we will parse to access each record.
In the Workfront Fusion Exercise files folder, We’ll select Fusion 2020 Shipping Manifest and click on document details. We’ll copy the ID, the first ID. And then back in Fusion, we’ll start with Workfront as our first module and download document. Our connection is still set up from before, I’ll paste the document ID here in the document ID field, click OK, and we’ll rename this module, download shipping manifest.
Now, add another module, parse CSV.
Number of columns, we’ll look at our CSV file, and there are 11 columns here.
CSV contains headers, we’ll leave that, limiter type, we’ll change to Comma, and for CSV file, we’ll use the data from the download document module, and click OK.
I’ll rename this button module parse shipping manifest.
Now, we’ll Save and run once.
So we’ll see some data from our CSV file in our next step.
Next, I’ll choose HTTP, make a request module.
For the URL field, I’ll need to go to the Pokemon API website and copy the URL listed here at the top.
I’ll need to remember to add the Pokemon Forward slash after I put this in to the URL field.
Then the API is going to be looking for the name of the Pokemon at the end of the URL, which is going to be contained in the character column or column three in my CSV file. So I’ll click on column three and add that in. Once I do that, I’ll leave the method is get. The headers, I’ll leave the same, the query string and the body type will be the same, but I’m going to go ahead and click parse response here so that I can automatically get back digestible data from the API website. I’ll also click show advanced settings.
And then I’ll see this option up here at the top, evaluate all states as errors. I’ll select that because we’re going to intentionally throw an error when we run the scenario once. So we’ll go ahead and click okay and rename this module, get Pokemon info.
For the first part of our exercise I only want to process the first row in our CSV file. To do this, I’m going to create a filter after my parse shipping manifest module.
I’ll call this filter only row one and set the condition to only allow the record to pass through if the manifest line ID is equal to one. And that’s this first column here.
Now, we’ll click Save and we’ll run our scenario once to see what type of error I intentionally created on our HTTP module.
Now, let’s run the scenario one time to evaluate the error we intentionally created on our get Pokemon info module. Go ahead and click run once.
If we open the execution inspector, we can see that we received a 404 not found error originating from the HTTP call. With further examination down in the URL field, we can see the call we made had a capital B in a name Bulbasaur.
However, if we look at the Pokemon API, it shows that the character name needs to be all lower case. To fix that, we’re going to go back to our make a request module and we need to wrap our character name by a text or binary function, which takes all the letters between the parentheses and makes them lowercase.
Clicking over in the text and binary functions, we can hover over Lower and see that it will take whatever is within the parentheses and make it all lowercase letters. So we’re going to click on that function and then we’re going to drag column three, right in between here, so it’s between the parentheses.
Let’s go ahead and click OK.
We’ll click Save and then run once again.
In the next video, we’re going to map out some of this information into variables for each character.
To map information back from the Pokemon API, I’m going to use the set multiple variables module at the end of my scenario.
You could also create a CSV file using this data, but for our purpose in this exercise, we’re just going to show you how to do the mapping. You’re going to map the character name, the height, the weight and the abilities as variables.
I can get that information from the get Pokemon info module by clicking into that field.
So I can map over name and height and weight and abilities.
Go ahead and click OK.
We’ll save first and then we’ll run the scenario once more to see what happens in our variables for the first row.
Once it successfully runs, I’ll go and click on my execution inspector and see that we did in fact have the name, the height, the weight and the abilities mapped over. However, as I look at the abilities, it’s collections and collection. In the next video, we’ll show you how to fix this issue.
To fix the issue with our abilities not being mapped over correctly, we’re going to go back into our scenario and return to our set multiple variables module. If I edit my abilities variable and hover over the item that I mapped into, I can see that this is has a data type of an array. So I’ll need to pull the information that I actually want out of the array to map into my variable. Clicking into that field, I can go to the last tab in my mapping panel and find different arrays functions. Hovering over the map function, I can see that I’ll place the array in the first section and after the semicolon, I’ll map directly to the information within the array that I want to grab. Let’s go ahead and select the map function and drag our abilities array into that first section.
As for what to put after the semicolon, I’m going to click back into my items list and realize that within the array, I have a dropdown option that shows me abilities and the name of each ability. So I need to call down into the array for the ability name and I’ll do so by typing in ability.name.
Once I do that, I’ll click Save, OK, And I’ll save my scenario and I’ll click Run once again.
After it executes successfully, let’s look back at our variable and see that we did, in fact, map over the correct ability names. Click on the execution inspector and we can see that we now have Abilities, overgrow and chlorophyll. Let’s try to run the scenario again for all of our Pokemon in the CSV file. To do this, we’ll delete the filter that restricts processing to only one row.
Then I’ll click Save and run once.
We can see that we ran into an error once again with our get Pokemon info module.
Looking into the execution inspector, we can see that it’s the same 404 error, and if we look down at the URL below, we’ll see that one of our superhero names is trying to be used with our Pokemon API call. To fix that, we need to use a router to pass information to different APIs. We’ll learn about how to do this in the next course. -
Exercise URLs
Pokemon API website: https://pokeapi.co/
URL for exercise: https://pokeapi.co/api/v2/pokemon/{Character}
Want to learn more? We recommend the following:
Workfront
- Workfront Tutorials
- Administration and Setup
- Organizational setup
- Manage deleted items
- Configure system defaults
- Layout templates
- What are layout templates?
- Find layout templates
- Customize terminology with layout templates
- Customize the Main Menu with layout templates
- Add and manage pins through a layout template
- Customize Home with layout templates
- Assign and manage access to layout templates
- Customize object areas with a layout template
- Customize project details with layout templates
- Customize project headers with layout templates
- Customize reporting lists with layout templates
- Email and In App Notifications
- Create and manage users
- Approval processes and milestone paths
- System performance and maintenance
- Project finances
- Custom Data
- Custom Forms
- Calculated expressions
- Get started with calculated fields and expressions
- Learn the data expression structure
- Understand Date & Time and Mathematical expressions
- Create ADDDAYS, ADDWEEKDAY, ADDMONTHS, ADDYEARS expressions
- Use the Calculation Editor
- Create DATEDIFF and WEEKDAYDIFF expressions
- Create a SUB, SUM, DIV, or PROD data expression
- Use the CONCAT expression in a calculated field
- Create LEFT/RIGHT expressions
- Use the ISBLANK and CONTAINS expressions
- Create an IF text expression
- Things to know about calculated field expressions
- Manage work
- Projects
- Understand basic project creation
- Navigate the project page
- Learn four ways to create a project
- Fill in the project details
- Get started planning a project
- Take a project live
- Get started managing a project
- Find projects
- Share a project
- Understand the project team
- Understand project communication
- View project information
- Track overall project progress
- Track work progress with project metrics
- Understand the Gantt view
- Understand the Board view
- Tasks
- Issues/requests
- Request queues
- Portfolios
- Approval processes and milestone paths
- Create and manage project templates
- Project timelines
- Close a project
- Project finances for users
- Intermediate projects
- Projects
- Reporting
- Basic reporting
- Understand reporting elements
- Understand reporting components
- Create a basic grouping
- Create a basic view
- Add basic conditional formatting to a view
- Create a basic filter
- Understand the new filter experience
- Create basic filter activities
- Create a simple report
- Create a task report
- Copy a report
- Create reports with charts
- Create a matrix report
- Create dashboards
- Send and share reports
- Understand report settings
- Intermediate reporting
- Create filters with user-based wildcards
- Create filters with date-based wildcards
- Create OR statements in filters
- Understand built-in project filters
- Understand built-in task filters
- Understand built-in issue filters
- Understand basic text mode for filters
- Understand basic text mode for views
- Understand basic text mode for groupings
- Create custom prompts
- Advanced reporting
- Calendar reports
- Basic reporting
- Manage resources
- Workfront Goals
- Workfront Planning
- Integrations
- Adobe Creative Cloud
- Adobe Experience Manager Assets Essentials
- G Suite
- Jira
- Microsoft Outlook
- Microsoft Teams
- Adobe Workfront for Microsoft Teams Overview
- Install Adobe Workfront for Microsoft Teams
- Access Adobe Workfront from Microsoft Teams
- Search for and share Adobe Workfront items in Microsoft Teams
- Create Adobe Workfront tasks from Microsoft Teams
- Submit Adobe Workfront requests from Microsoft Teams
- Manage Adobe Workfront notifications in Microsoft Teams
- Slack
- Fusion
- Welcome to Workfront Fusion
- Understand the basics
- Initial scenario design walkthrough
- Initial scenario design exercise
- Mapping panel and formula editor
- Mapping panel important notes
- Beyond basic mapping walkthrough
- Beyond basic mapping exercise
- Use filters
- Filters walkthrough
- Filters exercise
- Access previous versions walkthrough
- Access previous versions exercise
- Universal connectors and routing
- Universal connectors exercise overview
- Introduction to universal connectors walkthrough
- Introduction to universal connectors exercise
- Understand routers
- Routers walkthrough
- Routers exercise
- Common routing patterns
- Routing patterns walkthrough
- Routing patterns exercise
- Set-it and get-it
- Get/Set variables walkthrough
- Set/Get variables exercise
- Iteration and aggregation
- Execution history and scheduling
- Beyond basic modules
- Data structures and data stores
- Final functional bits and bobs
- Troubleshooting and error handling
- Workfront Fusion administration
- Design optimization and testing
- Workfront Proof
- Learn the benefits of proofing
- Understand the difference between a document and a proof
- Proofing viewers explained
- Administration and setup
- What is an automated workflow template
- Customize proof comment actions
- Customize proof decision options
- Understand email alerts and proof notifications
- Proof roles and email alerts
- Report on proofs
- Set default at risk proof settings
- Set up global proof settings
- Set default proof roles
- Set up proof account default settings
- Settings for proof users
- Upload proofs
- What is a proof version
- Who uploads the proof versions
- Convert a document to a proof
- View and compare proof versions
- Upload a proof version
- Manage proof versions
- Upload a proof of a video
- Upload a proof of a website
- Upload a proof with a basic workflow
- Upload a proof with an automated workflow
- Upload with a drag and drop
- Combine multiple files into a single proof
- Proof workflows
- Review and approve work
- Workfront DAM
- System setup
- Metadata and keywords
- Brand Connect customization
- Workfront DAM user: Contributor
- Understand Workfront DAM as a contributor
- Understand asset management as a contributor
- Understand finding assets as a contributor
- Understand lightboxes as a contributor
- Understand metadata and keyword best practices
- Work with assets as a contributor
- Send a file as a contributor
- Publish assets as a contributor
- Add a Workfront DAM link
- Brand Connect user
- Home
- Agile
- Best Practices
- Agile
- API Explorer
- Business case and portfolio optimizer
- Communication
- Custom forms
- Custom reports
- Dashboards
- Documents
- Filters, views, and groupings
- Job roles
- Layout templates
- Licenses and access levels
- Onboarding and adoption
- Organization units
- Portfolios and programs
- Preview sandbox
- Project, task, and issue preferences
- Project templates
- Proofing
- Request queue
- Resource Planner
- Resource pools
- Scenario Planner
- Schedules
- Statuses
- System performance and maintenance
- Text mode reporting
- Timeline planning and management
- Timesheets and logging time
- Utilization
- Workfront Goals
- Workload Balancer
- Workfront for executives
Get inspired by fellow certified Workfront users
Discover how two Workfront pros grew their skills and advanced their careers through Adobe certification—and how you can too.Read their stories