Block reference / Workflow

Execute workflow

Run another automation from this one and wait for it to finish.

Only inWarpX Browser

Execute workflow runs another automation as a step: a shared login, a clean-up routine. You pick the automation, choose which global data and variables to hand it, and the run continues after it finishes. The other automation runs inside the same run, on the same profile, starting on the page the profile has open. Use it when several automations share steps you want to keep in one place.

The Execute workflow block's settings, filled in as in the example below.

Settings

Description

A note shown on the block in the canvas.

ExampleSign in first
Select workflow

The automation to run, from your Automations list. The automation you are editing, and any automation that already calls it, are left out. The block reads the chosen automation when it runs, so later edits to it take effect without touching this block.

ExampleShop login
Execute Id (optional)

A name for the result. After the child finishes, its table and variables can be read as {{workflow.login.table}} and {{workflow.login.variables.<name>}}. Leave it empty and the result is stored under a random name you cannot refer to.

Examplelogin
Use all current workflow globalData

Under Global data. Hand the child this automation's global data in place of its own.

ExampleUnchecked
Global data

Click the box to open a JSON editor. These values replace the child's own global data for this run. With Use all current workflow globalData on, they are added on top of this automation's global data, and win where a key is in both.

Example{"shop": "https://shop.example.com"}
Use all current workflow variables

Hand the child a copy of every variable this automation has.

ExampleUnchecked
Insert current workflow variableswhen Use all current workflow variables is off

Only the variables to hand over, separated by commas. A variable that is empty or 0 is not handed over.

Exampleemail,password

Every block also has the shared block settings — a description, Disable block and what to do on an error. Fields that take text accept data from earlier blocks.

What it hands on

One output, taken after the child automation finishes. The child's table and variables are then readable under {{workflow.<Execute Id>}}. They are not copied into this automation's own variables or table. If the child fails, this block fails.

Example: Sign in with a shared login automation

  1. Start
  2. Execute workflow
  3. New tab
  4. Get text
Where Execute workflow sits in the example workflow.
  1. Create an automation named Shop login that opens https://shop.example.com/login, types {{variables.email}} and {{variables.password}} into the form, and signs in. At the end it sets a variable account to the name shown in the page header.
  2. In another automation, add an Execute workflow block and pick Shop login in Select workflow.
  3. Set Execute Id (optional) to login and Insert current workflow variables to email,password.
  4. Add a New tab block with https://shop.example.com/orders, then a Get text block that reads the first order number into a table column.
  5. Run it. Shop login signs in on the same profile, then the run opens the orders page. A later block can read the signed-in name as {{workflow.login.variables.account}}.

Good to know

  • The child starts with only the variables you hand it. It does not see this automation's table.
  • If the chosen automation itself contains an Execute workflow block that calls this one, the block refuses with "Can't execute the workflow to prevent an infinite loop".
  • If the chosen automation has been deleted, the block fails with "Can't find a workflow with the ID" followed by its id. Pick another automation in Select workflow.
  • If the child's Start block has Parameters, the child asks for them before it runs, even when you hand over variables with the same names. Without Prefer input parameters in Profile it opens WarpX Browser's parameter window instead, and this run waits at the block. Leave the child's Start block without parameters and hand values over as variables.
  • Blocks inside a package cannot include Execute workflow; the package editor removes it.

See also

  • Block package — A package placed as a single block, with its own named inputs and outputs.
  • Workflow state — Stop the current run, optionally as a failure with your own message, or stop other runs.