Skip to content

Invoke Process

Type: invoke-process  ·  Package: Core Activities v1.0.8

Runs another published process from Zoan Cloud as part of the current process, passes it input data and receives its results back. It is the way to reuse a whole process across projects: signing in to a portal, looking up a customer in the ERP or sending a report is built and published once, and other processes invoke it.

The invoked process runs inside the same execution, not as a separate one. That is why what it returns stays alive: if the login process returns the already authenticated browser session, the calling process keeps working in that same tab.

  1. Looks up in Zoan Cloud the current published version of the process set in process, in the same environment where the robot runs. It downloads it the first time and keeps it on the machine for later runs.
  2. Loads the activity packages that process needs and runs its entry playbook, passing it the values of input.
  3. The invoked process runs with its own variable space: it does not see or modify the caller’s variables.
  4. When it finishes, its outputs are mapped to variables of the current process according to outputs.
  5. If the invoked process fails, this activity fails with the same error (catchable with Try / Catch).
ParameterTypeDefaultDescription
processstring—The published process to run, by name. Its current published version is always invoked; no version is pinned.
ParameterTypeDefaultDescription
inputDictionary—Values the invoked process receives, as name: value pairs. The names are the input arguments of its main playbook.
outputsDictionary—{ processOutput: callerVariable } mapping. Only the invoked process’s output arguments (Out or In/Out) cross over; names that are not valid variables or that the process doesn’t return are ignored.

This activity does not return a value of its own: what the invoked process produces reaches the variables set in outputs. Since it runs in the same execution, an output can be a live object (a browser session, an application window) that the current process keeps using. When it finishes successfully, Process '…' completed. is logged.

If you are signed in to Zoan Cloud from the Designer and have an environment selected, process shows the list of processes published in that environment. When you pick one, the input and outputs editors are filled with the inputs and outputs that process declares.

Without a session, process is a free text field where you type the process name: you can keep designing, and the name is resolved anyway when the process runs on a robot.

A published process, Supplier portal login, opens the browser, signs in and returns the page session. Another process invokes it and keeps working in the same tab:

Invoke Process
process = "Supplier portal login"
input = { user: "robot01" }
outputs = { page: portalPage }
Page Navigate page = portalPage url = "https://suppliers.example.com/invoices"
Extract Structured Data page = portalPage selector = (#invoices) → output: invoices
  • input: the invoked process receives user as an input variable.
  • outputs: the invoked process’s page output is stored in the current process’s portalPage variable.
MessageCause and fix
Process not found: '…'There is no published version with that name in the environment where the robot runs. Check the exact name and that the process is published in that environment.
Process '…' is a Windows process and cannot be invoked from a headless process. …A headless process tried to invoke a Windows one. Run the calling process on a Windows robot, or make the invoked process headless.
Could not resolve process '…': Zoan Cloud answered HTTP …Zoan Cloud answered with an error other than “does not exist” (for example, missing permissions or a service failure). Check the robot account’s permissions; if it is a temporary failure, wrap the invocation in a Retry.
Could not prepare process '…' (…). See the Runner log for details.The process exists, but it could not be downloaded or prepared on the robot. The details are in the Runner log; check the machine’s connection and disk space.
invoke-process is not supported in this host (no process resolver configured).The execution has no connection to Zoan Cloud (for example, the Designer without a signed-in session). Sign in to Zoan Cloud from the Designer and pick an environment, or run it on a connected robot.
Recursion detected: …The invoked process is already running higher up in the same invocation chain. Reorganize the logic so it is not invoked again.
Maximum invocation depth reached (32 levels).Too many processes or playbooks are invoking each other in a chain. Flatten the structure.
Output '…' was not assigned to '…': …Warning: the variable that receives the output is not declared or its type is not compatible. Declare it with the right type.
The invoked process '…' failed.The invoked process failed without a message of its own. When it has one, the activity fails with that same message and type (a business error is still a business error). Handle it with a Try / Catch.
'process' is required.The process name is missing.