---
schema_version: "1"
id: 5951fda7eb770216cffc1cb753989362c0595c53e5f111693c03fa306e63c687
title: Invoke a MuleSoft RPA Process in a Flow
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/flow_build_invoke_mulesoft_rpa_in_flows.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.flow_build_invoke_mulesoft_rpa_in_flows.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 45d58e2d6360619c35e1df699c0d1079aef14862b141fab35fb1e8aca4a457b9
description: After you make a MuleSoft RPA process available to flows, you can start and check the status of the process from a flow.
products:
  - Flow Builder
  - Salesforce Platform
release: "264"
---
# Invoke a MuleSoft RPA Process in a Flow

After you make a MuleSoft RPA process available to flows, you can start and check the status of the process from a flow.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=platform.flow_ref_supported_editions.htm&amp;release=264.0.0&amp;type=5" title="Learn about the editions and user interfaces that support Flow Builder. Some Flow Builder features integrate with other Salesforce products that require additional licenses.">View supported editions.</a></td></tr></tbody></table>

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/images/icon_note.png)

Note Mulesoft RPA with Flow Builder requires a MuleSoft Automation subscription and a MuleSoft RPA user with all necessary permissions. See [Anypoint Access Management RPA Permissions.](https://docs.mulesoft.com/rpa-home/automation-userrolesandpermissions-anypointrpapermissions) 

You add invocable actions for the `startProcess` and `getProcessExecutionStatus` operations that you selected when you registered the RPA process as an external service.

1. In Flow Builder, create a flow.
2. To store the input variables for the RPA process that you want to invoke, create a resource with these values.
    
    <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
            <colgroup>
              <col style="width:25%">
              <col style="width:75%">
            </colgroup>
            <thead class="slds-text-title_caps ">
              <tr class="">
                <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d224551e93">Field</th>
                <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d224551e96">Value</th>
              </tr>
            </thead>
            <tbody>
              <tr class="">
                <td data-label="Field" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e93 ">
                  <strong class="uicontrol">Resource Type</strong>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e96 ">Variable</td>

              </tr>
              <tr class="">
                <td data-label="Field" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e93 ">
                  <strong class="uicontrol">Data Type</strong>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e96 ">Apex-Defined</td>

              </tr>
              <tr class="">
                <td data-label="Field" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e93 ">
                  <strong class="uicontrol">Apex Class</strong>
                </td>

                <td data-label="Value" class="slds-cell-wrap" style="vertical-align:top;" headers="d224551e96 ">
                  <p>
                    <kbd>ExternalService_<var>External_Service_Name</var>_ProcessExecutionWithExecutionId</kbd>
                  </p>
                  <p style="margin-bottom:0;"><var>External_Service_Name</var>
                    is the name that you provided when you registered the MuleSoft RPA API as an external
                    service.</p>
                </td>

              </tr>
            </tbody>
          </table>
    
    ![New Resource dialog box](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/invoke_mulesoft_rpa_flow_resource.png)
3. Assign values to the input variables.
    1. On the Flow Builder canvas, add an assignment node.
    2. Assign values to the variable that you created in the previous step.
        
        A variable’s input values differ for each RPA process. In this example, the process requires an order number and a tracking number.
        
        Every input requires a value, even if the value is an empty string. If you don’t specify a value for each input, the RPA process invocation generates an error.
        
        Each RPA process invocation requires a unique `executionId`. If your flow starts only one RPA process, you can use the `$Flow.InterviewGuid` global variable, which is the flow interview ID.
        
        Callbacks for MuleSoft RPA processes aren’t supported in flows. Specify the `$GlobalConstant.EmptyString` global variable as the value of the `callbackUri` variable.
        
        ![New variable assignment dialog box](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/invoke_mulesoft_rpa_flow_assignment.png)
4. Add an action for the `startProcess` operation to the flow.
    1. On the Flow Builder canvas, add an action node.
    2. In the Action field, type startProcess, and select the **startProcess** action.
    3. Configure the action, setting the body to the resource that you created to store the input values.
        
        ![New Action dialog box for startProcess operation](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/invoke_mulesoft_rpa_flow_action_start.png)
    4. Click **Done**.
5. Add an action for the `getProcessExecutionStatus` operation to the flow.
    1. On the Flow Builder canvas, add an action node.
    2. In the Action field, type `getProcessExecutionStatus` operation, and select the **getProcessExecutionStatus** action.
    3. Configure the action, setting the executionId to the value of the `executionID` parameter that you specified for starting the MuleSoft RPA process.
        
        ![New action dialog box for getProcessExecutionStatus dialog box](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/invoke_mulesoft_rpa_flow_action_status.png)
    4. Click Done.
6. Save and run your flow.
    
    The output of the `startProcess` action indicates whether the process started successfully.
    
    The output of the `getProcessExecutionStatus` action indicates the status of the RPA process.

![Example](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/images/icon_example.png)

Example

This simple screen flow invokes a MuleSoft RPA process called Get Tracking Info. It includes an Assignment node for input variables and actions that start and check the status of the process.

![Complete screen flow example](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-platform-platform_automation-264-0-0-production-enus/60568438-ec7e-4665-acd1-7c80dcbe60d5/platform_automation/images/flow/invoke_mulesoft_rpa_flow_complete.png)

#### See Also

- [Build a Flow](https://help.salesforce.com/s/articleView?id=platform.flow_build.htm&release=264.0.0&type=5 "After you model the process that you want to automate, design and build the flow in Flow Builder.")
- [Assignment Element](https://help.salesforce.com/s/articleView?id=platform.flow_ref_elements_assignment.htm&release=264.0.0&type=5 "Set values in variables, including collection variables, record variables, record collection variables, and global variables.")
- [Variable Resource](https://help.salesforce.com/s/articleView?id=platform.flow_ref_resources_variable.htm&release=264.0.0&type=5 "Store a value that can be used or changed throughout the flow.")