In case you haven't heard about Product Club — the Pathfinder Community Product Club is a monthly virtual meetup led by Automation Anywhere product leaders that focuses on our latest proprietary product innovations. It offers a place for community members to stay informed, connect with product leaders, and gain insights into real-world applications of the latest innovations in intelligent automation.
P.S. If you can’t attend a meeting, no worries — we'll be dropping a recap of each month's session right here in our Product Club hub.
- Aziz Khan, Senior Director of Product Management
- Vineet Pujari, Senior Product Manager
- Allison Able, Pathfinder Community Director
TOPIC: API Tasks
January’s hot product topic was API Tasks - a highly effective way to design, build and deploy automations completely in the cloud.
Here’s a rundown of the session:
- Aziz covers what API tasks are, benefits of API automations, how you can use it, and when it will be available to you.
- Vineet goes through a demo use case utilizing API tasks from a developer view, then a user view.
- Aziz and Vineet answer live audience questions.
THE LOWDOWN ON API TASKS
API Tasks are a way to design, build, and deploy your automations entirely in the cloud. Just as you build your automations in Bot Editor, there is now an API Editor where you build API automations. Once you've created an API automation, bring it over to the Process Composer and use it in an end-to-end process that is finally executed in Automation Co-Pilot.
For all those Automation Co-Pilot use cases that you guys are building, API Tasks are the ideal way to build your automations!
API Tasks include a set of packages that are a subset of all packages found in the A360 platform, primarily because these automations run on Linux containers in the cloud. While they are limited for Windows packages with dependencies, if you're building automations that use REST or SOAP integrations, cloud applications like G-Suite, Microsoft Office, ERP applications that run in the cloud, or CRMs like Salesforce, ServiceNow, SharePoint, and Workday will all play seamlessly with API Tasks. Not to mention, generative AI LLMs from Open AI, Microsoft, Google, and Amazon are all compatible with API Tasks as well.
Other Benefits of API Tasks:
- No on-prem infrastructure - No need for Windows desktops, VM maintenance, or maintenance costs as they pertain to API tasks. No configuration or resource management as all of this is done in Automation Anywhere's cloud infrastructure and managed by Automation Anywhere.
- Elastic in scale - As your needs grow, scalability is elastic in the cloud.
- Instantaneous data access - Extremely low latency in the range of 40 to 50 milliseconds!
Regarding availability, at the moment, API tasks are an AWS cloud-only feature, which means that if you're on-prem, this is unfortunately not something that you can take advantage of right away. However, an on-prem solution is coming in the latter half of this year. For now, API Tasks are a cloud-only feature with A.31 and will be available instantly to customers in the US and Europe. In A.32, we'll be expanding to more regions in Latin America in AWS cloud, and in A.33, we'll begin to roll out to GCP cloud, as well as all the other cloud regions that are remaining.
Regarding licensing, you will receive 100 executions free per Control Room for your deployment. This is for you to try some use cases and make sure this is something that you can leverage. From there, for licensing you can purchase our advanced A360 Plus package which will have this included and bundled in it with 50,000, API task executions, parallelism, and 10 concurrent executions. Alternatively, you can buy a la carte as an overhead SKU that gives you 50,000 API task executions with 10 concurrencies built in. You can buy multiples of those packs as well.
For all pricing-related questions, please reach out to your sales executive.
QUICK API TASK BUILDING TUTORIAL
Before we dive into the demo, Vineet gave a brief rundown of how to create an API task:
- Starting in Control Room running the latest A.31 release, just as you would create a task bot, go to “Create New” and select API Task from the dropdown.
- Give your API task a name and click “Create & Edit,” which will land you in the API Tasks Editor where you will build all the logic inside your API task.
Note: On your left, you see all of these packages that are compatible to run on Cloud. These packages do not rely on any Windows files and do not have any file dependencies, so they are all compatible to execute purely in the cloud.
- Start building your API task by dragging and dropping your command actions and configuring them. Once you're done configuring, save your API task and call it from either a UI or through a back end.
DEMO: TIME OFF REQUEST, DEVELOPER VIEW
As employees, we all take time off. In this process, Vineet demonstrated how to streamline and simplify the process for employees to request time off and for managers to approve these requests.
- First, an employee lands on a welcome page where they will enter some data into a form for their time-off: the requested dates and reason. Then they’ll submit the form to send the request to their manager. Typically companies use an HR system for these types of requests - in this scenario, we are using Workday.
If you view the Form Rules, you can see we created 2 rules meant to invoke API tasks, do some automation in the background, and bring back the response back to the user in real time. The user can see the response of the automation right here without having to close and reopen the form. That’s the magic of API Tasks!
- Whenever the user clicks on the ”Request Time Off” button, it invokes Rule #1 which calls an API task named “Submit Request API Task.” The API task takes couple of inputs, then gives an output which is a reference ID of the time off request from Workday. What happened nearly instantaneously in the background was the API task went to Workday, generated the time off request on behalf of the employee, and brought back the time off request ID.
- Then, the manager receives the request to approve or reject it (hopefully approve, not reject!). In their form, the manager sees the employee’s email, the manager’s own email, the time off reason and requested dates, all retrieved by an API task. All that’s necessary is to approve or reject the request and that’s that.
- An additional step we created sends a Teams notification to the employee stating whether the time off request was approved or denied.
- Finally, we enabled the employee to complete some mundane tasks such as setting out-of-office email replies, adding a vacation reminder on their email signature, and blocking the dates on their calendar so they don’t receive any meeting invites. All of these are possible to automate using API tasks.
DEMO: TIME OFF REQUEST, USER VIEW
Vineet took us through the same use case, this time from the user view. Remember that API Tasks can seamlessly embed in Automation Co-Pilot, and Automation Co-Pilot can embed directly in an employee’s preferred system of work. So this time around Vineet showed us how this API automation works embedded in Teams. No need to go to Workday, log in, and traverse through a bunch of pages to finally get to the time off requests page before submitting a request.
- The employee has Automation Co-Pilot embedded in Teams and one of the processes built-in is to request time off. The employee selects the process and it asks to confirm their email address. By checking yes, an API task takes the email address, goes to Workday to retrieve the employee ID, the manager's email ID, and the country where the employee is located because, based on the country, there will be different types of reason codes that populate.
- The API task brings the employee to the time off request form where they select their start and end dates, as well as the reason code from a dropdown. The dropdown has populated with five types of reasons specific to the country they are employed in. The employee enters the information and clicks “Request Time Off.” Another API task in the background takes all of these inputs, goes to Workday and creates a time off request using Workday’s SOAP APIs, and retrieves the time off request ID in real time, so if need be the employee can make a note of it.
- Next, the manager receives a notification in their Teams saying “your employee has requested time off.” The manager opens the notification to see the summary of the employee’s name who is requesting time off, the dates, and the reason. They select “Approve” and ”Submit.”
- The employee is instantly notified in Teams that the request as been approved. If they want, the employee can go back to the process and there are a couple of additional options that they can do: block their calendar, schedule auto-reply emails, send an out-of-office notification email to stakeholders and colleagues, or add a vacation reminder on their email signature. The possibilities are vast!
Thank you to our audience for submitting their questions! Unfortunately, we couldn't answer them all during the live session. We also want to express our gratitude to our product leader co-hosts, Aziz Khan and Vineet Pujari, for providing their responses.
**Please note that all answers were shared during the week of January 16th, 2024, and are subject to change. We strongly encourage you to contact your account management team for any licensing and pricing inquiries.
Q: Is there any way that people can try this out and see what it's like?
A: Yes, absolutely. So as I mentioned earlier, there is going to be a free trial available with A.31. So any customer that is in the US or in Europe, you will get a basic entitlement for the use of API task out-of-the-box. So go ahead and use it as much as you can.
Q: Can we get this code so we can try?
A: Sure, I (Vineet) will upload to GitHub in a few days and create a social media post.
Q: How do you promote the code from one CR to another CR through APIs?
A: That's essentially something that's available today in the product. We have integration with GitHub and you can promote your code to GitHub, then use the GitHub CI/CD automation to expand your code to any other environment. Further details can be found on the docs portal here.
Q: How do you create, edit, delete users roles by API?
A: We offer a user management API in our control room, you can access it by going to your control room, /swagger. And then you will come across an API called user management using the chicken program at the premium to create, edit, and delete users. You can also use those API endpoints as part of your API task logic. So you essentially use a REST package to call all those directly and build an automation that way. Further details can be found on the docs portal here.
Q: Do packages have to exist for all applications that you want to integrate, or is there a generic package?
A: The generic package is your REST and SOAP, so with those you can call any API. But there are, you know, a pretty large list of application packages we have in the product today, including Salesforce ServiceNow, Workday, SAP, your Google Suites, your Microsoft Offices, and so on. We are also in the process of building a connector builder. What that means is that if you've got an application, whether it's a custom application or a web application that we don't currently have a package for, you will be able to build that connector yourself. This is coming out soon in A.33. So if you guys are interested in taking a look at that as a beta, we'll have that much earlier. Please reach out and Vineet will work with you on that.
Q: Can you explain how to date and from date values in the form? I can see there is one input variable, which takes the dates.
A: Sure. In the demo, I requested time off for just one day, but you can actually request it for a range of days. And what we do in the backend is to prepare a request object using the start date and end date, and that is how we submit the time off request for those dates.
Q: Related to licensing, just further clarification: Do all employees using these time off forms need Automation Anywhere licensing in order to utilize something like this time off request system?
A: Yes, you will need our automation platform license in order to build these use cases. Individual employees will need the Co-Pilot license which is available on a per-user basis. The API Task license is a platform level license for API Task executions and concurrency, it is not restricted on a per-user basis. And it doesn't have to be on Teams, it could be anywhere. I mean, you could potentially put it on any web application using Automation Co-Pilot.
Q: How is the employee email address auto populated? Is it hard coded?
A: It's not hard coded. One of the beauties of Process Composer is it knows the context of the user that initiates the process. So you can just read it from a global variable in Process Composer.
Q: Can we use API tasks under regular task code, or is it only applicable under AARI?
A: In A.31, you can run it only from Automation Co-Pilot or rather AARI, as you were saying. So you can use it in the form, you can use it in a Process Composer. But essentially, it's meant to be orchestrated through AARI or Process Composer. What you will get in the future is the ability to call these yourself directly as a run now in the product itself, or be able to schedule it, or be able to call it as an endpoint. Those are all coming in subsequent releases.
Q: What's the difference between API Task and just having AARI Form call another Task Bot?
A: AARI - the Process Composer is an orchestrator. API Task is an API automation that you can call from the Process Composer. With API Tasks embedded within an AARI form, users can trigger an automation and display the response in-real time on the form, without having to close and re-open the form.
Q: What's the difference comparing API Task to normal task with REST API command?
A: You will get faster execution of your automation with API Task due to its low latency cloud engine. There is no dependency on your on-prem bot runners. This also reduces your on-prem infrastructure maintenance costs.
Q: How is API tasks different from REST/SOAP API calls we have in task bot? I can see how it might be quicker, but it might not be significantly different.
A: Okay, that's a good observation there. The fundamental difference between an API task and a task bot is you do not have to worry about the infrastructure where the API task executes. As soon as you're done building the API task, configuring your automation, you can just launch it, and it's going to execute on our cloud machines. We've taken all of the tasks about maintaining your infrastructure, upgrading it, patching it, all of those things go away from you. So that's the major difference. The other difference is they've made it simpler for even non-professional developers to create API tasks and consume API tasks within their automation. What I mean by that is, traditionally whenever there are APIs involved, especially to integrate with multiple systems, companies tend to engage specialist middleware teams that specialize in handling API interactions, managing through a middleware through a gateway or some something of that sort. But we’ve empowered an RPA developer to do that without having to worry about the complexities of calling the API and maintaining the middleware infrastructure layer. So those are the two key takeaways.
Q: How is API Task different from Automation Co-pilot for Business Users?
A: API Task is meant for task automation whereas Co-Pilot for business users is an interface that orchestrates end to end business processes that could involve bots, API Tasks, Approval tasks, etc.
Q: How do the API tasks handle application credentials?
A: Using the Credential Value. API tasks belong to the same platform, which is compliant with sock protocol, sock two, and all of the GDPR protocols. You can store your credentials in our credential vault, where they are secured and encrypted. So every time you retrieve data or you place the data there, it's all encrypted, so you can rest assured your credentials are safe.
Q: If the CR is on the cloud, how does the API authenticate with the 3rd party SAS application like Workday?
A: The credentials required to connect with Workday are securely stored and retrieved from the Credential Vault during the runtime in order to establish a connection with Workday.
Q: I like the idea of minimizing on-prem infrastructure, but wouldn't there be Firewall/Security concerns of Cloud machine calling one of our Internal applications' API?
A: It is important to implement proper security measures when you are exposing internal APIs to cloud machines. This includes setting up authentication and authorization mechanisms, encryption and other security protocols, monitoring and logging to detect and respond to security incidents and conducting regular testing and vulnerability assessments to identify and address potential security weaknesses.
Q: How do you import files through API Tasks?
A: Local File support will be a limitation with API Task. We will offer cloud file coming in A.33.
Q: How to start API Tasks by API?
A: You can use the headless endpoint in the v4 Bot Deployment API to deploy API Tasks from an external client eg. POSTMAN.
Q: As API Tasks is run on a Cloud machine, how do you guarantee the Security of passwords because REST/SOAP does not work on attributes that have 'Use attribute ONLY on Password or Masked fields' checked?
A: API Task uses the same security infrastructure as A360. You may securely store sensitive data like credentials in the Credential Vault and then the API Task can securely retrieve the encrypted credentials during the automation runtime.
Q: Why is API Tasks only available in the AWS environment?
A: We are rolling out to cloud incrementally. GCP will be coming soon in Q2.
Q: What should we do if the API Task option is not available? (I'm on Cloud)
A: It will become available with the regional rollout for your region in the coming months, global availability by Q2. If you are in the US or EMEA, and you are on AWS, you will see API Task available in your Control Room shortly.
Q: Will there be a pricing tier for unlimited executions?
A: There is no "unlimited executions" pricing tier at this time.
Q: Does no use of on-prem bot runners mean it uses cloud runners?
A: That is correct. API Tasks execute on cloud containers.
Q: Our in-house data center is going to be moved to the cloud. Is it possible for us to access the folder via the cloud using API task?