UiPath: Start a job

🕙  6 minute read

Use this action to loop in and run a UiPath bot from a Catalytic process. Build a bot with UiPath Studio, publish it to Orchestrator, then start the job through Catalytic.

There are 2 steps in UiPath to set up before using this action:

  1. A UiPath studio bot must be published to Orchestrator
  2. The published package must be deployed to an environment

Setting up UiPath for the first time is a technical process and requires familiarity with UiPath Orchestrator and use of Postman or cURL to make API requests. We recommend developers assist when setting up the action for the first time.

Use case

After a process has been set up in UiPath, use this action to set the parameters for new jobs, like selecting the Robot IDs or passing in variables.

How to configure this action

This action requires a preconfigured UiPath integration. For more information on integrating Catalytic with other systems, please refer to the Integrations section of our help center.

In Catalytic, use this action to start a UiPath job from a deployed package as part of a Workflow process. For each job, you can configure the same settings that would be available in UiPath Orchestrator, such as selecting the Robots, choosing how to allocate Robots, or passing in input arguments.

To fully configure this action, some API Requests are required to identify the Robots or packages; the Release Key and Robot IDs are specific identifiers associated with starting Jobs in UiPath. API requests require authentication through UiPath.

Make a GET request for the release key

The Release Key is the unique identifier of the release associated with the job, this Key is required to start a Job. Follow the steps below to make an API request to UiPath to get the correct key.

With Postman or cURL, make a request to the release resource to return all release information. Make a GET request to:

https://platform.uipath.com/odata/Release

The request response includes all releases on the Orchestrator account. Each release has an Id. In this example below, the release ID is 665533—this ID is required to identify the correct release and is added to the Release Key field during configuration.

{
    "@odata.context": "https://platform.uipath.com/odata/$metadata#Releases",
    "@odata.count": 4,
    "value": [
        {
            "Key": "8dd5733b-6b20-4573-9920-a5678f517f8d",
            "ProcessKey": "Hello",
            "ProcessVersion": "1.0.6961.31370",
            "IsLatestVersion": false,
            "IsProcessDeleted": false,
            "Description": "",
            "Name": "Hello World_production",
            "EnvironmentId": 49680,
            "EnvironmentName": "Production Environment",
            "InputArguments": null,
            "Id": 66533,
            "Arguments": {
                "Input": "[{\"name\":\"testing\",\"type\":\"System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\",\"required\":false,\"hasDefault\":false}]",
                "Output": "[{\"name\":\"testing\",\"type\":\"System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089\",\"required\":false,\"hasDefault\":false}]"
            }
        },
...
    ]
}

Make a GET request for the Robot IDs

You can start UiPath jobs using specific Robots, or all Robots. To start this action and choose specific robots, set the Strategy field to Specific and make the GET request below for each Robot ID. Follow the steps below to make an API request to UiPath to get Robot IDs.

With Postman or cURL, make a request to the robots resource to return all robot information. Make a GET request to:

https://platform.uipath.com/odata/Robots

The request response includes all Robots on the Orchestrator account. Each Robot has an Id. In this example, the robot ID for the first Robot, Example Robot, is 90413—this ID is required to identify the correct Robot and is added to the Robot ID(s) field during configuration.

{
    "@odata.context": "https://platform.uipath.com/odata/$metadata#Robots",
    "@odata.count": 2,
    "value": [
        {
            "LicenseKey": null,
            "MachineName": "DESKTOP-VIT7JS4",
            "MachineId": 76331,
            "Name": "Example Robot",
            "Username": "Administrator",
            "Description": "",
            "Version": "18.4.1.0",
            "Type": "Unattended",
            "HostingType": "Standard",
            "Password": null,
            "CredentialType": null,
            "RobotEnvironments": "Testing Env",
            "Id": 90413,
            "ExecutionSettings": null
        },
        {
            "LicenseKey": null,
            "MachineName": "EC2AMAZ-H2A9FVO",
            "MachineId": 84563,
            "Name": "Example Robot 2",
            "Username": "Administrator",
            "Description": null,
            "Version": null,
            "Type": "Unattended",
            "HostingType": "Standard",
            "Password": null,
            "CredentialType": null,
            "RobotEnvironments": "VM Test Env",
            "Id": 98617,
            "ExecutionSettings": null
        }
    ]
}

Fields for this action

  • Integration

    • Select your UiPath integration from the options. These are your team’s integration accounts.
  • Release Key

    • The unique identifier of the release associated with the job.
  • Strategy

    • Determines which robots from the environment are used to run the job. Possible values: All, Specific, or RobotCount.
  • Robot ID(s)

    • The ID(s) of the robot(s) selected to run the job, separated by commas. This is only required if the start strategy is Specific.
  • Number of Robots

    • The number of robots selected to run the job. This is only required if the start strategy is RobotCount.
  • Input Arguments

    • The names and values of input arguments to be provided in to the job, in valid JSON format. For example, if UiPath is configured to accept two input arguments, description and type, like the image below
    screen readers look here

Enter the input arguments in the following JSON format:

  {
  "description": "Repair leaky faucet",
  "type": "Repair"
  }
  • Mark complete immediately

    • Select True or False from the drop down to set when the task should be marked complete.
      • Select True to have this task be marked complete as soon as the work item is added to the queue.
      • Select False or leave blank to have this task stay open until the work item has been completed.
  • Output Field Prefix

    • To help keep output fields organized, choose an output field prefix to add to the beginning of each output field name as this action may output more than one field.
    • The step’s name is used as the prefix by default.

What will this output?

This action outputs every response the Orchestrator API returns when a job is started and each response item is added to its own Catalytic field. These fields are information like the start time of the job, input arguments, release name or environment, or state. For more UiPath response information see UiPath’s API reference.

This action may generate multiple fields. To help keep output fields organized, the prefix above will be added to the beginning of each of the output field names, separated by two dashes. Each field will result as:{{output-field-prefix--output-field}}. Learn more

Output fields for this action

  • BatchExecutionKey

    • Returns a unique identifier for a group of jobs. The key is generated when jobs are started. For example: b6b37e28-44a5-4e9c-acc4-90246d9940ae
  • CreationTime

    • The date the time the job was created. For example: 2019-01-29 2:33 PM
  • EndTime

    • The date and time when the executed job ended. For example: 2019-01-29 2:34 PM
  • HostMachineName

    • The machine name associated with the job, or the machine the where the automation was run. For example: DESKTOP-01
  • Id

    • The Id associated with the start a job request. For example: 5139614
  • Info

    • UiPath returns additional information about the job. For example: Job completed
  • InputArguments

    • Returns a JSON formatted list of all input arguments added during action configuration. For example: {"Description":"New work order"}
  • Key

    • Returns the unique identifier for the job. For example: 3dd68a2b-ad54-49e5-9b97-1b290c5ee7ad
  • OutputArguments

    • Returns a JSON formatted list of all output arguments associated with the job. For example: {"Description":"New work order"}
  • ReleaseName

    • The name of the process associated with the job.
  • Source

    • Returns the source of the job. For example: Manual
  • SourceType

    • Returns the source of the job. For example: Manual
  • StartingScheduleId

    • Returns the id of the schedule that started the job if the source was scheduled.
  • StartTime

    • The date and time the job was executed. For example: 2019-01-29 2:33 PM
  • State

    • Returns the state in which the job is in. For example: successful, completed, pending, running, cancelling, terminating. For Catalytic, the successful and completed states are a completed job.
  • Type

    • The robot type. For example: Unattended

Sorry about that. What was the most unhelpful part?









Thanks for your feedback

We update the Help Center daily, so expect changes soon.

Link Copied

Paste this URL anywhere to link straight to the section.

Need more help?

If you're signed in to Catalytic Community, you can ask other users a question. You'll be redirected to Community where you can add more info.