# Start Robot

The block starts another instance of the Robot as a main or background Process, including the ability to launch multiple background Processes in parallel.

When starting, its unique name is specified (to distinguish one running instance of the Robot from another) and the .robot file with the script that needs to be executed. The block can either wait for the script running in the new instance of the Robot to finish (synchronous launch) or immediately continue executing the current script (asynchronous, background launch).

The current script may contain several blocks for asynchronous Robot launches, allowing multiple concurrently running instances of Robots and scripts. In the case of asynchronous launch, the status of the running background Robot script can be checked using the "Robot Status" block.

<table data-header-hidden><thead><tr><th width="253" valign="top"></th><th width="319" valign="top"></th></tr></thead><tbody><tr><td valign="top">Robot file</td><td valign="top"><p>[Text] Robot file with the .robot extension.</p><p>Specifies either a relative path or an absolute path to the file.</p></td></tr><tr><td valign="top">Launch mode</td><td valign="top"><p>Robot launch mode. Possible options:</p><ul><li>Background - Robot runs in the background,</li><li>Foreground (PiP) - Robot will be launched in PiP (Picture in Picture) mode.</li></ul></td></tr><tr><td valign="top">Unique name</td><td valign="top"><p>[Text] Unique name of the Robot at launch. This name will be considered when logging Robot logs and when sending messages to the Orchestrator.</p><p>All messages in the Orchestrator will start with the value specified in this property.</p></td></tr><tr><td valign="top">Wait for completion</td><td valign="top">When enabled, the block will wait for the launched Robot to finish.</td></tr><tr><td valign="top">Timeout</td><td valign="top"><p>[Number] Timeout for the launched Robot to finish. Specified in seconds. The property works if the "Wait for completion" property is enabled.</p><p>The value <code>-1</code> indicates an indefinite wait.</p></td></tr><tr><td valign="top">Arguments</td><td valign="top"><p>[Text] Arguments for launching the Robot. To edit the value, you need to use the button on the block with the hint "Arguments".</p><p>This function can only be used if the "Wait for completion" property is enabled. Variables used in the arguments in the called Robot must be defined as global.</p></td></tr><tr><td valign="top">Robot ID</td><td valign="top">[Link] Variable that stores the Robot's identifier.</td></tr><tr><td valign="top">Error handling level</td><td valign="top"><p>Select the error handling level. Possible values:</p><ul><li>"Default" - by default;</li><li>"Ignore" - errors are ignored;</li><li>"Handle" - errors are handled.</li></ul><p>If "Default" is selected, the value from the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Message level</td><td valign="top"><p>Select the message level that the blocks will output during operation. Possible values:</p><ul><li>"Default" - by default;</li><li>"Release" - output is disabled;</li><li>"Debug" - outputs main information;</li><li>"Detailed" - outputs detailed information.</li></ul><p>If "Default" is selected, the value from the "Start" block of this diagram will be used.</p></td></tr><tr><td valign="top">Error text</td><td valign="top">[Text] Returns detailed information about the error in case of incorrect execution of the block's work.</td></tr></tbody></table>
