v2.1.6+Inline Scripting task parameters and output properties

Reference for the Inline Scripting task parameters that control script run, resource limits, and outbound HTTP policy, and for the output properties published to downstream tasks.

Input and output parameters

At runtime, the engine injects global objects into the script environment that carry input data and collect output values:

Global Language Access Description
inputs JavaScript, Python Read-only Object (JavaScript) or dict (Python) populated from the Input parameters (JSON) field. Each top-level JSON key is accessible as a property. For example, inputs.threshold in JavaScript reads the threshold key from the input JSON.
outputs JavaScript, Python Writable Object (JavaScript) or dict (Python) for publishing named output properties. Each key assigned to outputs is published as result.key in the task output property map. When any outputs key is set, the last-statement value is ignored.

When no outputs keys are set, the value of the last statement in the script is wrapped under the key result and published as result.result.

Action parameters

The following parameters control the behavior of the Inline Scripting task at the task level:

Parameter Required Default Description
Script Yes The script body to run. The inputs and outputs globals are available at runtime.
Input parameters (JSON) No Empty A JSON object whose keys are exposed as the inputs global inside the script.
Script timeout (seconds) No 60 Maximum time in seconds the script is permitted to run. If the script does not complete within this limit, the task fails. Range: 1–600.
Memory limit (MB) No 256 Maximum memory in megabytes the script runtime is permitted to use. If the script exceeds this limit, the task fails. Range: 64–1024.
Max console bytes No 1 MB Maximum size of console output captured in the task log. Range: 1024–10485760. Output beyond this limit is truncated with a marker. The script run continues.
Fetch request timeout (seconds) No 30 Per-request timeout in seconds for outbound HTTP(S) calls. Applies to each individual fetch() (JavaScript) or requests (Python) call.
Fail on console error No false When set to true, any console.error() call in the script marks the task as failed.
Verbose runtime log No false When set to true, additional runtime diagnostics are written to the task log. Use this parameter when troubleshooting unexpected behavior.

Connection parameters

A connection defines the outbound HTTP(S) policy for all Inline Scripting tasks that reference it. The connection is optional. When no connection is configured and no agent-level policy is set, all outbound fetches are blocked by default.

Parameter Required Description
Fetch allowlist No Comma-separated list of host or domain patterns permitted for outbound HTTP(S) calls. When set, all hosts not on the list are denied. When neither this parameter nor Fetch denylist is set at the connection or agent level, all outbound fetches are blocked.
Fetch denylist No Comma-separated list of host or domain patterns that are always denied for outbound HTTP(S) calls, regardless of the allowlist.

Output properties

When an Inline Scripting task completes successfully, the following output property is available to successor tasks in the workflow:

Property Type Description
result Object (map) Root-level map of script output values. When the script assigns keys to the outputs global, each key is published as result.key (for example, result.status). When no outputs keys are set, the last-statement value is published as result.result.

Referencing output in successor tasks

Use the JSONata expression jobs.PRED_TASK_NAME.outputprop to reference an Inline Scripting task output property from a successor task in the same workflow. To reference the output within the same task (for example, in an output condition), use $this().outputprop.

Script assigns to From a successor task From an output condition (same task)
outputs.status = 200 jobs.TASK_NAME.result.status $this().result.status
Last-statement value (no outputs assignment) jobs.TASK_NAME.result.result $this().result.result