Workflows
List
Create
Get Tags
Retrieve
Update
Delete
Run
User Approval
ModelsExpand Collapse
WorkflowListResponse object { id, authorId, createdAt, 24 more } A workflow as returned by GET /v1/workflows, where the caller can trade the
two heaviest fields away to keep a large page under the response size limit.
A workflow as returned by GET /v1/workflows, where the caller can trade the
two heaviest fields away to keep a large page under the response size limit.
Whether the workflow has a non-empty flow. Present even when flow itself
is not, so an empty workflow can be told apart from a populated one.
inputs: array of object { name, type, allowedValues, 24 more } The inputs of the workflow.
The inputs of the workflow.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
after: optional object { assetId, url } A representation of an asset after being processed by the workflow
A representation of an asset after being processed by the workflow
before: optional object { assetId, url } A representation of an asset before being processed by the workflow
A representation of an asset before being processed by the workflow
The UI data about the workflow. This is managed by scenario webapp. Omitted
when the listing is requested with full=false.
flow: optional array of object { id, type, count, 11 more } The flow of the workflow. Omitted when the listing is requested with
full=false; read hasFlow to know whether there is a flow to fetch.
The flow of the workflow. Omitted when the listing is requested with
full=false; read hasFlow to know whether there is a flow to fetch.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
Whether the workflow is locked. Locked workflows cannot be modified or deleted except by the author or a project admin.
lastIndexingType: optional "CREATE" or "DELETE" or "UPDATE"The type of indexing operation to perform in MeiliSearch
The type of indexing operation to perform in MeiliSearch
Timestamp when the workflow flow was last saved as a Ready (App) snapshot. Used to compute the WorkflowNodes snapshot key. Only set for workflows that have been in the Ready state.
outputAssetKinds: optional array of "3d" or "audio" or "document" or 5 moreAsset kinds produced by this workflow (if specified).
Asset kinds produced by this workflow (if specified).
thumbnail: optional object { __brand, assetId, url } Optional thumbnail asset for listing/display.
Currently the thumbnail is identical to the after asset.
Optional thumbnail asset for listing/display. Currently the thumbnail is identical to the after asset.
uiConfig: optional object { inputProperties, lorasComponent, presets, 3 more } UI configuration for custom workflows input display configuration.
The UI configuration for the workflow. This is managed by scenario webapp.
UI configuration for custom workflows input display configuration. The UI configuration for the workflow. This is managed by scenario webapp.
lorasComponent: optional object { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent: optional object { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
WorkflowCreateResponse object { workflow }
workflow: object { id, authorId, createdAt, 24 more }
flow: array of object { id, type, count, 11 more } The flow of the workflow.
The flow of the workflow.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
Whether the workflow has a non-empty flow. Present even when flow itself
is not, so an empty workflow can be told apart from a populated one.
inputs: array of object { name, type, allowedValues, 24 more } The inputs of the workflow.
The inputs of the workflow.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
after: optional object { assetId, url } A representation of an asset after being processed by the workflow
A representation of an asset after being processed by the workflow
before: optional object { assetId, url } A representation of an asset before being processed by the workflow
A representation of an asset before being processed by the workflow
Whether the workflow is locked. Locked workflows cannot be modified or deleted except by the author or a project admin.
lastIndexingType: optional "CREATE" or "DELETE" or "UPDATE"The type of indexing operation to perform in MeiliSearch
The type of indexing operation to perform in MeiliSearch
Timestamp when the workflow flow was last saved as a Ready (App) snapshot. Used to compute the WorkflowNodes snapshot key. Only set for workflows that have been in the Ready state.
outputAssetKinds: optional array of "3d" or "audio" or "document" or 5 moreAsset kinds produced by this workflow (if specified).
Asset kinds produced by this workflow (if specified).
thumbnail: optional object { assetId, url } Currently the thumbnail is identical to the after asset.
Currently the thumbnail is identical to the after asset.
uiConfig: optional object { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the workflow. This is managed by scenario webapp.
The UI configuration for the workflow. This is managed by scenario webapp.
lorasComponent: optional object { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent: optional object { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
WorkflowRetrieveResponse object { workflow }
workflow: object { id, authorId, createdAt, 24 more }
flow: array of object { id, type, count, 11 more } The flow of the workflow.
The flow of the workflow.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
Whether the workflow has a non-empty flow. Present even when flow itself
is not, so an empty workflow can be told apart from a populated one.
inputs: array of object { name, type, allowedValues, 24 more } The inputs of the workflow.
The inputs of the workflow.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
after: optional object { assetId, url } A representation of an asset after being processed by the workflow
A representation of an asset after being processed by the workflow
before: optional object { assetId, url } A representation of an asset before being processed by the workflow
A representation of an asset before being processed by the workflow
Whether the workflow is locked. Locked workflows cannot be modified or deleted except by the author or a project admin.
lastIndexingType: optional "CREATE" or "DELETE" or "UPDATE"The type of indexing operation to perform in MeiliSearch
The type of indexing operation to perform in MeiliSearch
Timestamp when the workflow flow was last saved as a Ready (App) snapshot. Used to compute the WorkflowNodes snapshot key. Only set for workflows that have been in the Ready state.
outputAssetKinds: optional array of "3d" or "audio" or "document" or 5 moreAsset kinds produced by this workflow (if specified).
Asset kinds produced by this workflow (if specified).
thumbnail: optional object { assetId, url } Currently the thumbnail is identical to the after asset.
Currently the thumbnail is identical to the after asset.
uiConfig: optional object { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the workflow. This is managed by scenario webapp.
The UI configuration for the workflow. This is managed by scenario webapp.
lorasComponent: optional object { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent: optional object { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
WorkflowUpdateResponse object { workflow }
workflow: object { id, authorId, createdAt, 24 more }
flow: array of object { id, type, count, 11 more } The flow of the workflow.
The flow of the workflow.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
Whether the workflow has a non-empty flow. Present even when flow itself
is not, so an empty workflow can be told apart from a populated one.
inputs: array of object { name, type, allowedValues, 24 more } The inputs of the workflow.
The inputs of the workflow.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
after: optional object { assetId, url } A representation of an asset after being processed by the workflow
A representation of an asset after being processed by the workflow
before: optional object { assetId, url } A representation of an asset before being processed by the workflow
A representation of an asset before being processed by the workflow
Whether the workflow is locked. Locked workflows cannot be modified or deleted except by the author or a project admin.
lastIndexingType: optional "CREATE" or "DELETE" or "UPDATE"The type of indexing operation to perform in MeiliSearch
The type of indexing operation to perform in MeiliSearch
Timestamp when the workflow flow was last saved as a Ready (App) snapshot. Used to compute the WorkflowNodes snapshot key. Only set for workflows that have been in the Ready state.
outputAssetKinds: optional array of "3d" or "audio" or "document" or 5 moreAsset kinds produced by this workflow (if specified).
Asset kinds produced by this workflow (if specified).
thumbnail: optional object { assetId, url } Currently the thumbnail is identical to the after asset.
Currently the thumbnail is identical to the after asset.
uiConfig: optional object { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the workflow. This is managed by scenario webapp.
The UI configuration for the workflow. This is managed by scenario webapp.
lorasComponent: optional object { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent: optional object { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
WorkflowRunResponse object { job, workflow }
job: object { createdAt, jobId, jobType, 8 more }
jobType: "assets-download" or "canvas-export" or "caption" or 37 moreThe type of job
The type of job
metadata: object { assetIds, error, flow, 6 more } Metadata of the job with some additional information
Metadata of the job with some additional information
flow: optional array of object { id, status, type, 15 more } The flow of the job. Only available for workflow jobs.
The flow of the job. Only available for workflow jobs.
status: "failure" or "pending" or "processing" or 3 moreThe status of the node. Only available for WorkflowJob nodes.
The status of the node. Only available for WorkflowJob nodes.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
If the flow is part of a WorkflowJob, this is the jobId for the node. jobId is only available for nodes started. A node “Pending” for a running workflow job is not started.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
statusHistory: array of object { date, status } The history of the different statuses the job went through with the ISO string date
of when the job reached each statuses.
The history of the different statuses the job went through with the ISO string date of when the job reached each statuses.
billing: optional object { cuCost, cuDiscount, cuCostDetails, disableRefund } The billing of the job
The billing of the job
cuCostDetails: optional object { "ip-detection", "slop-detection" } Compute Units charged for the ADD-ONS of this job, per action — the fees
paid on top of the generation itself, such as slop-detection.
cuCost above is the main action alone, so the job’s total is cuCost
plus the values here.
Two caveats when displaying it:
- These are a remaining refundable balance, not a receipt: a job that
failed or was cancelled has had its add-ons refunded, so they read 0
while
cuCost still shows the main action’s original charge.
ip-detection is part of the shape but is never populated today: that
fee is charged outside the job and reported once, as
ipDetection.creativeUnitsCharged, in the response of the request that
ran it.
Absent when the job paid for no add-on.
Compute Units charged for the ADD-ONS of this job, per action — the fees
paid on top of the generation itself, such as slop-detection.
cuCost above is the main action alone, so the job’s total is cuCost
plus the values here.
Two caveats when displaying it:
- These are a remaining refundable balance, not a receipt: a job that
failed or was cancelled has had its add-ons refunded, so they read 0
while
cuCoststill shows the main action’s original charge. ip-detectionis part of the shape but is never populated today: that fee is charged outside the job and reported once, asipDetection.creativeUnitsCharged, in the response of the request that ran it.
Absent when the job paid for no add-on.
workflow: object { id, authorId, createdAt, 24 more }
flow: array of object { id, type, count, 11 more } The flow of the workflow.
The flow of the workflow.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
Whether the workflow has a non-empty flow. Present even when flow itself
is not, so an empty workflow can be told apart from a populated one.
inputs: array of object { name, type, allowedValues, 24 more } The inputs of the workflow.
The inputs of the workflow.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
after: optional object { assetId, url } A representation of an asset after being processed by the workflow
A representation of an asset after being processed by the workflow
before: optional object { assetId, url } A representation of an asset before being processed by the workflow
A representation of an asset before being processed by the workflow
Whether the workflow is locked. Locked workflows cannot be modified or deleted except by the author or a project admin.
lastIndexingType: optional "CREATE" or "DELETE" or "UPDATE"The type of indexing operation to perform in MeiliSearch
The type of indexing operation to perform in MeiliSearch
Timestamp when the workflow flow was last saved as a Ready (App) snapshot. Used to compute the WorkflowNodes snapshot key. Only set for workflows that have been in the Ready state.
outputAssetKinds: optional array of "3d" or "audio" or "document" or 5 moreAsset kinds produced by this workflow (if specified).
Asset kinds produced by this workflow (if specified).
thumbnail: optional object { assetId, url } Currently the thumbnail is identical to the after asset.
Currently the thumbnail is identical to the after asset.
uiConfig: optional object { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the workflow. This is managed by scenario webapp.
The UI configuration for the workflow. This is managed by scenario webapp.
lorasComponent: optional object { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent: optional object { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
WorkflowUserApprovalResponse object { job }
job: object { createdAt, jobId, jobType, 8 more }
jobType: "assets-download" or "canvas-export" or "caption" or 37 moreThe type of job
The type of job
metadata: object { assetIds, error, flow, 6 more } Metadata of the job with some additional information
Metadata of the job with some additional information
flow: optional array of object { id, status, type, 15 more } The flow of the job. Only available for workflow jobs.
The flow of the job. Only available for workflow jobs.
status: "failure" or "pending" or "processing" or 3 moreThe status of the node. Only available for WorkflowJob nodes.
The status of the node. Only available for WorkflowJob nodes.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs: optional array of object { name, type, allowedValues, 27 more } The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items: optional array of array of object { name, type, allowedValues, 26 more } The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior: optional "opaque" or "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Help text displayed in the UI to provide additional information about the input
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind: optional "3d" or "audio" or "document" or 5 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed media duration in seconds. Only applies to `file` and `file_array` input types for video and audio assets. Validated against `asset.properties.duration` at job creation time.
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes: optional array of "custom" or "elevenlabs-voice" or "flux.1" or 28 moreThe allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref: optional object { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
The name of the input or output to reference. If the type is ‘workflow’, the name is the name of the input of the workflow is required If the type is ‘node’, the name is not mandatory, except if you want all outputs of the node. To get all outputs of a node, you can use the name ‘all’.
required: optional object { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
If the flow is part of a WorkflowJob, this is the jobId for the node. jobId is only available for nodes started. A node “Pending” for a running workflow job is not started.
logic: optional object { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
statusHistory: array of object { date, status } The history of the different statuses the job went through with the ISO string date
of when the job reached each statuses.
The history of the different statuses the job went through with the ISO string date of when the job reached each statuses.
billing: optional object { cuCost, cuDiscount, cuCostDetails, disableRefund } The billing of the job
The billing of the job
cuCostDetails: optional object { "ip-detection", "slop-detection" } Compute Units charged for the ADD-ONS of this job, per action — the fees
paid on top of the generation itself, such as slop-detection.
cuCost above is the main action alone, so the job’s total is cuCost
plus the values here.
Two caveats when displaying it:
- These are a remaining refundable balance, not a receipt: a job that
failed or was cancelled has had its add-ons refunded, so they read 0
while
cuCost still shows the main action’s original charge.
ip-detection is part of the shape but is never populated today: that
fee is charged outside the job and reported once, as
ipDetection.creativeUnitsCharged, in the response of the request that
ran it.
Absent when the job paid for no add-on.
Compute Units charged for the ADD-ONS of this job, per action — the fees
paid on top of the generation itself, such as slop-detection.
cuCost above is the main action alone, so the job’s total is cuCost
plus the values here.
Two caveats when displaying it:
- These are a remaining refundable balance, not a receipt: a job that
failed or was cancelled has had its add-ons refunded, so they read 0
while
cuCoststill shows the main action’s original charge. ip-detectionis part of the shape but is never populated today: that fee is charged outside the job and reported once, asipDetection.creativeUnitsCharged, in the response of the request that ran it.
Absent when the job paid for no add-on.