Execution
class flow_api.execution.Execution(select=None, cls=None, init=None, by='id', allow_normal=True, allow_deleted=False, commit=False, breakpoints=<class 'flow_api.system.NotSet'>, bundle_id=<class 'flow_api.system.NotSet'>, bundle_name=<class 'flow_api.system.NotSet'>, children=<class 'flow_api.system.NotSet'>, commit_message=<class 'flow_api.system.NotSet'>, connector_id=<class 'flow_api.system.NotSet'>, connector_name=<class 'flow_api.system.NotSet'>, connector_type=<class 'flow_api.system.NotSet'>, description=<class 'flow_api.system.NotSet'>, flow_id=<class 'flow_api.system.NotSet'>, flow_name=<class 'flow_api.system.NotSet'>, input_schema=<class 'flow_api.system.NotSet'>, input_value=<class 'flow_api.system.NotSet'>, is_paused=<class 'flow_api.system.NotSet'>, is_productive=<class 'flow_api.system.NotSet'>, is_readonly=<class 'flow_api.system.NotSet'>, location_inheritance=<class 'flow_api.system.NotSet'>, max_runtime_minutes=<class 'flow_api.system.NotSet'>, mcp_user_tool_id=<class 'flow_api.system.NotSet'>, message=<class 'flow_api.system.NotSet'>, name=<class 'flow_api.system.NotSet'>, orphan=<class 'flow_api.system.NotSet'>, output_schema=<class 'flow_api.system.NotSet'>, output_value=<class 'flow_api.system.NotSet'>, parent_execution_id=<class 'flow_api.system.NotSet'>, plugin_action_id=<class 'flow_api.system.NotSet'>, priority=<class 'flow_api.system.NotSet'>, project_id=<class 'flow_api.system.NotSet'>, project_name=<class 'flow_api.system.NotSet'>, record_metadata=<class 'flow_api.system.NotSet'>, remote_workspace_name=<class 'flow_api.system.NotSet'>, roles=<class 'flow_api.system.NotSet'>, runtime_key=<class 'flow_api.system.NotSet'>, savepoint_retention=<class 'flow_api.system.NotSet'>, schedule_id=<class 'flow_api.system.NotSet'>, schedule_name=<class 'flow_api.system.NotSet'>, scheduled_for=<class 'flow_api.system.NotSet'>, script=<class 'flow_api.system.NotSet'>, secret_outputs=<class 'flow_api.system.NotSet'>, track_in_git=<class 'flow_api.system.NotSet'>, type=<class 'flow_api.system.NotSet'>, unwrapped=<class 'flow_api.system.NotSet'>, use_breakpoints=<class 'flow_api.system.NotSet'>, use_only_explicit_breakpoints=<class 'flow_api.system.NotSet'>, webhook_id=<class 'flow_api.system.NotSet'>, wrapper_id=<class 'flow_api.system.NotSet'>, wrapper_name=<class 'flow_api.system.NotSet'>, wrappers=<class 'flow_api.system.NotSet'>, debug=False)
Base class: Activity
An automation (flow, script, or connection) which is or was running.
See the corresponding Resources class at Execution
Parameters
| Name | Type | Description |
|---|---|---|
| allow_deleted | bool | |
| allow_normal | bool | |
| breakpoints | Union | The breakpoints of the execution. |
| bundle_id | Union | Reference to the bundle this record is associated with. Allowed for BUNDLE_REPOSITORY, CONNECTOR, CUSTOM_OBJECT, DASHBOARD, DEVOLUTIONS_CONFIG, EXECUTION, FILE, FLOW, LDAP_CONFIG, MCP_USER_TOOL, MESSAGE, OBJECT_TEMPLATE, PLUGIN, PYTHON_MODULE, ROLE, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for BUNDLE, ORGANIZATION, PROCESS, PROJECT, USER, WORKSPACE. Mutually exclusive with project_id |
| bundle_name | Union | The name of the bundle. Will look up the bundle and set bundle_id. |
| by | str | |
| children | Union | Subrecords to create in the SAME transaction as the record, as a mapping of {subrecord_type: [ {column: value, ...}, ... ]}. A generic, schema-derived create-with-children: a key is accepted iff it names a subrecord type whose parent is one of this record's ancestor tables — e.g. an object_template with object_template_attribute rows, a role with role_permission rows, or a flow with resource_wrapper rows. The parent foreign key (<parent>_id) is auto-wired to the new record; each child is validated by its own subrecord create-path. Passing children inline makes the record and its subrecords atomic (any child failure rolls the whole create/update back), replacing a create-then-add-N sequence with one round-trip. Exposed identically on REST create/update bodies and the GraphQL create_<type>/update_<type> mutation input (as an arbitrary-JSON scalar), and via MCP create_record/update_record, since it is a single schema-derived column with no per-surface code. Accepted on both create and update. Nesting to arbitrary depth IS supported: a child entry may itself carry a children key, validated recursively against THAT child subrecord type's own ancestor tables and created depth-first in the same transaction. (Under the current subrecord model the only externally-creatable chains happen to be one level deep — subrecords are not record-backed, so e.g. a record_metadata cannot be nested under an object_template_attribute — but the recursion is applied generically so any deeper externally-creatable chain works with no per-type code.) On read the children are exposed via their subrecord lists, not this field. |
| cls | Optional | |
| commit | bool | |
| commit_message | Union | The commit message for this change. |
| connector_id | Union | The ID of the connector record the execution is using. |
| connector_name | Union | The name of the connector. Only used for type CONNECTION |
| connector_type | Union | The type of the connector / the type of the remote system. |
| debug | bool | if set, the content of the data being written will be logged. |
| description | Union | A multiline description of what this record is and does. |
| flow_id | Union | The ID of the flow record the execution is processing. |
| flow_name | Union | The name of the flow. Only used for type FLOW |
| init | Optional | |
| input_schema | Union | The schema of the data the execution accepts in input_value. |
| input_value | Union | The data which was passed to the execution. |
| is_paused | Union | A flag to control if the execution should be processed. |
| is_productive | Union | A flag to control if the execution runs in productive mode. |
| is_readonly | Union | A flag to control if the record can be modified. Allowed for BUNDLE, BUNDLE_REPOSITORY, CONNECTOR, CUSTOM_OBJECT, DASHBOARD, DEVOLUTIONS_CONFIG, FILE, FLOW, MCP_USER_TOOL, OBJECT_TEMPLATE, PLUGIN, PROJECT, PYTHON_MODULE, ROLE, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for EXECUTION, LDAP_CONFIG, MESSAGE, ORGANIZATION, PROCESS, USER, WORKSPACE |
| location_inheritance | Union | Controls the project/bundle association of a newly created record when no project_id/project_name/bundle_id/bundle_name is specified in the create request. Depending on the record type different options are available: <table> <thead> <tr> <th>location_inheritance</th> <th>record types</th> <th>description</th> </tr> </thead> <tbody> <tr> <td><code>created_by</code></td> <td>all</td> <td>use the same location as the identity which creates the record</td> </tr> <tr> <td><code>default</code></td> <td>all</td> <td>use the "Default project" where applicable or "Workspace" for record types which cannot be in a project</td> </tr> <tr> <td><code>wrapped_resource</code></td> <td>execution</td> <td>use the same location as the innermost resource which is wrapped</td> </tr> <tr> <td><code>resource</code></td> <td>execution</td> <td>use the same location as the resource on which the execution is based on</td> </tr> </tbody> </table> Notes: <ul> <li>If a <code>project_id</code>/<code>project_name</code>/<code>bundle_id</code>/<code>bundle_name</code> is specified in the request, it always takes precedence.</li> <li>The options <code>wrapped_resource</code> and <code>resource</code> only work with executions which are based on a resource, not with ad-hoc connections or executions of type "SCRIPT". If used with ad-hoc connections or "SCRIPT" it will fall back to <code>default</code>.</li> <li>If the record being created cannot be associated with the specified location, the fallback to <code>default</code> will be used.</li> <li>If <code>location_inheritance</code> is unset, the default value used depends on the type of identity which creates the record as well as the type of record which is created. If an execution is created by any identity which is not an execution, it defaults to <code>wrapped_resource</code>. In all other cases it defaults to <code>created_by</code>.</li> </ul> |
| max_runtime_minutes | Union | The maximum runtime of the execution in minutes. If set to 0, there is no limit. |
| mcp_user_tool_id | Union | The associated MCP user tool for this execution |
| message | Union | A status message. |
| name | Union | The name of this record. Must be unique across a workspace. |
| orphan | Union | If set, the child execution will be disconnected from the execution tree |
| output_schema | Union | The schema of the data the execution produces in output_value. |
| output_value | Union | The data returned by the execution |
| parent_execution_id | Union | The ID of the execution which created this execution. |
| plugin_action_id | Union | Reference to the plugin_action this execution was started by. |
| priority | Union | The priority of the execution. Higher priority executions will be processed first. Executions with the same priority are processed in the order they were created. |
| project_id | Union | Reference to the project this record is associated with. Allowed for CONNECTOR, CUSTOM_OBJECT, DASHBOARD, DEVOLUTIONS_CONFIG, EXECUTION, FILE, FLOW, MCP_USER_TOOL, MESSAGE, OBJECT_TEMPLATE, PLUGIN, PYTHON_MODULE, SCHEDULE, SCHEDULER, SCHEMA, SETTING, SYNC_CONFIG, TAG, VAULT_CONFIG, WEBHOOK, WRAPPER. Not allowed for BUNDLE, BUNDLE_REPOSITORY, LDAP_CONFIG, ORGANIZATION, PROCESS, PROJECT, ROLE, USER, WORKSPACE. Mutually exclusive with bundle_id. |
| project_name | Union | The name of the project. Will look up the project and set project_id. |
| record_metadata | Union | Record metadata to attach in the SAME transaction as the record create/update, as a mapping of {key: data} (key: string up to 128 chars, data: arbitrary JSON). Each entry is written as a record_metadata subrecord, upserted by (record_id, key). This removes the create-then-add race: without it a flow/API must first create the record and then add its metadata in a second call, leaving a window where the record exists un-marked (and may already be committed to git before the marker lands). Passing record_metadata inline makes the record and its metadata atomic. Accepted (and applied) on both create and update. On read the metadata is exposed via the record_metadata subrecord list, not this field. |
| remote_workspace_name | Union | The name of the workspace where this execution is remotely running |
| roles | Union | The roles this identity has. |
| runtime_key | Union | Optional caller-supplied runtime-statistics bucket key (e.g. this.flow(..., runtime_key="markdown_summary")). Groups this execution's runtime samples in a GLOBAL namespace shared across every flow that passes the same key, so a reusable flow called the same way from many call sites aggregates into one clean estimate. Overrides the automatic parent-flow/call-site tiers when its bucket is hot. Inherited transparently through wrapper/script parents; not inherited across a real-flow boundary. NULL means the automatic tiers apply (default). |
| savepoint_retention | Union | Controls which savepoints are retained during execution (e.g. LAST, ALL) |
| schedule_id | Union | The associated schedule for this execution |
| schedule_name | Union | The name of the schedule. Only used for type SCHEDULE |
| scheduled_for | Union | The timestamp when the execution will continue. This field is also used for timeouts. |
| script | Union | The script the execution is processing. |
| secret_outputs | Union | An optional list of secret_outputs selector paths (see common.secret_paths) into this execution's output_value. At output finalization the engine wraps the selected leaf(s) into a Secret so they are masked everywhere the output is serialized (logs, output_value column, live view, records, git-sync). Set at child creation via connect()/script()/flow().run() secret_outputs=; NULL means no output masking. |
| select | Optional | |
| track_in_git | Union | Should new records automatically be tracked in git. |
| type | Union | The type of the execution. |
| unwrapped | Union | If set, static wrappers which are registered on the flow are not used. Dynamically added wrappers and wrappers which are explicitly added using the wrappers field are still used. |
| use_breakpoints | Union | A flag to control if the execution will stop at breakpoints. |
| use_only_explicit_breakpoints | Union | Should only explicitly defined breakpoints be used, this disables the step-through feature. |
| webhook_id | Union | The associated webhook for this execution |
| wrapper_id | Union | The ID of the wrapper record the execution is processing. |
| wrapper_name | Union | The name of the wrapper. Only used for type WRAPPER |
| wrappers | Union | A list of dynamic wrappers to apply around the execution. Provide a list of objects in the form [{"wrapper_id": ..., "params": {...}}]. |