MuleSoft RPA Connector Reference | MuleSoft Documentation
# MuleSoft RPA Connector Reference
Mulesoft Robotic Process Automation (RPA) is a software technology that combines robotics and automation to perform repetitive tasks. RPA uses a software bot to mimic the actions a person would take, by automating repetitive manual tasks like entering text and updating fields through one or multiple application user interfaces.
## RPA Use Cases
You can benefit in many ways by implementing RPA into your processes, either by saving time, reducing costs, or preventing errors caused by human input.
The most common use cases for RPA include:
  * Data extraction and data entry Extract data from PDF, CSV, and other file formats and send this data to other systems.
  * Payroll processing Automate payroll data entry and validate the information across multiple systems.
  * Price comparisons Automate the monitoring of input prices and competitor prices.
  * Processing refunds Automate the processing of customer refund requests to make them quicker.
  * Customer information updates Update customer information automatically across different systems that do not have APIs and that are accessible only through the UI.


## Invoke Short-Running RPA Processes
When invoking short-running RPA processes from Composer, invoke a single flow by choosing the **Use response in this flow** button. The RPA execution is retrieved by the RPA step and subsequent steps can use the RPA step datapills.
If the **Use the response in the same flow option** is enabled and the process takes longer than three minutes to respond, the process stops and an error message appears indicating that the polling process timed out.
## Invoke Long-Running RPA Processes
When invoking RPA processes from Composer, a two-flow Composer scenario is only required when the RPA process takes longer than the allowed completion timeout period, which is three minutes.
For long-running processes, you can configure two flows that finish within the Composer flow timeout period to avoid blocking other in-queue events from processing while waiting for the RPA process to complete.
For the first flow, select **Poll response from another flow** and then configure a second RPA poll trigger flow that listens to executions for the process invoked by the first flow. When activating or testing the two-flow scenario, ensure that you start the second poll trigger flow first and then start the invoke flow. This way, the poll trigger flow won’t miss events generated by the invoke flow.
If data pills from the first RPA invoke flow are needed in the second poll trigger flow, store them in an external database using the **RPA Execution ID** as the key. The data pills are then retrieved by the **RPA Execution ID** when the poll trigger polls the executions from RPA.
If multiple users create invoke or poll flows for the same process, track execution IDs through the external database. If you are not using an external database to track the process execution, all RPA executions for the selected RPA process complete and the RPA does not filter the executions by user.
## Connections
To connect to a system, whether it is a source of data or the target where you are sending data, you must create a connection with that system’s required credentials. You typically connect to different systems within a flow and can reuse each connection every time you need to connect.
This system requires the following credential information for its connections: 

Connection Display Name
    
Enter a connection name to remember the details of this connection. You can reuse connections multiple times in a single flow, and in more than one flow, and the credentials are hidden after you create the connection. Provide a name that easily identifies this connection from others.
Only you can see the connection. Other users in your Composer app must create their own connections. 

RPA API URL
    
The URL provided by the RPA Admin who is creating the processes that you want to integrate via Composer. The **RPA API URL** is the RPA Manager URL with `/rpa/api/v1` appended to it. For example, if your RPA Manager URL is , then the value in the **RPA API URL** field is `https://myOrg.rpa.mulesoft.com/rpa/api/v1`. 

API key
    
The authentication code for the user. The API key is generated in the RPA User Management module. 

OAuth 2.0 Authorization
    
You can use OAuth 2.0 Client credentials to obtain an access token from a user-defined path. Provide a value for the following:
  * **RPA API URL** : The URL provided by the RPA Admin creating the processes that you want to integrate with Composer. The **RPA API URL** value is the RPA Manager URL with `/rpa/api/v2` appended to the end. For example, if your RPA Manager URL is `https://myOrg.rpa.mulesoft.com`, then the value in the **RPA API URL** field is `https://myOrg.rpa.mulesoft.com/rpa/api/v2`.
  * **Client ID** : The OAuth Client ID that you use to log in to MuleSoft RPA.
  * **Client Secret** : The OAuth Client Secret that you use to log in to MuleSoft RPA.
  * **Token URL** : The URL of the endpoint that provides the access token for MuleSoft RPA. For users in the United States, enter: `https://anypoint.mulesoft.com/accounts/api/v2/oauth2/token`. For users in the European Union, enter: `https://eu1.anypoint.mulesoft.com/accounts/api/v2/oauth2/token`.
  * **Scopes** : The OAuth scopes. Enter the following OAuth scopes for full access to the RPA API:
    * `RPA Integrator`
    * `RPA Invocable Process`


## Triggers
Each flow starts with either a _scheduler_ or a _trigger_. Schedulers are set to a default frequency of 15 minutes. Triggers, such as "each time a new record is created", are defined by you and provide multiple options related to the data in your system.
Triggers use a polling process to actively check for new updates from an external system. The polling frequency is 15 seconds.
This system provides the following trigger options: 

RPA Process Execution Completed
    
Create listeners that check the status of a specific RPA process. When the RPA process finishes the execution, the polling trigger processes the configured activities in the Composer flow. Note that you must select whether you want listeners for _successful_ or _failed_ executions. You cannot receive notifications for both.
### Polling Frequency
For triggers in this connector, the **Polling Frequency** field is required. This field enables you to select how often Composer makes a request to the underling system API to look for changes to records in active flows. You can select a different polling frequency for each flow in your organization. With a shorter frequency, the flow executes more often; however, a shorter frequency consumes more API calls. For example, if you have an order management flow, you might require nearly real-time updates, which can be achieved with a 15-second polling interval (which equates to 5760 API calls per day). In contrast, if your flow updates a pricing catalog, you could poll the flow every hour (which equates to 24 API calls per day).
## Actions
After you connect to a system and define the trigger or configure a scheduler, you define the actions that the flow performs. For example, you can copy a record between different systems, such as Workday and Salesforce. The actions you can perform depend on which system you are connected to.
This system provides the following actions: 

Invoke RPA Process
    
Invokes a process in RPA. Provide a value for **RPA Process Name**. Additionally, select the activity parameters that you want to set and set values for those parameters.
## Test the RPA Process
You can test your RPA Process instantly without invoking the process.
To test your RPA Process:
  1. In your RPA Process flow, in an action or trigger, click the gear. The **Step Configurations <Action or Trigger>: Invoke RPA Process** window appears.
  2. In the window, select **Don’t run the RPA Process; instead, use the sample output data** and then click **Save**. The RPA Process is skipped and tested. The output of the process appears with sample data.


## See Also
  * Mulesoft Composer: Overview
  * MuleSoft Composer: Getting Started
  * Composer Connector Reference
  * Knowledge Articles
  * Mulesoft Robotic Process Automation (RPA)