Create a run, execute it, and wait for completion.
Combines run creation and execution with synchronous waiting. Returns the final output directly (not the Run object). The server waits up to 5 minutes for the run to finish. If the run times out, the current output (which may be empty) is returned.
Sessions are managed manually (not via Depends) to avoid holding a pool connection during the long wait, which would starve background tasks.
Request model for creating runs
Assistant to execute
Input data for the run. Optional when resuming from a checkpoint.
Execution config
Execution context
Checkpoint configuration (e.g., {'checkpoint_id': '...', 'checkpoint_ns': ''})
Enable streaming response
Requested stream mode(s)
Behavior on client disconnect: 'cancel' (default) or 'continue'.
Behavior after stateless run completes: 'delete' (default) removes the ephemeral thread, 'keep' preserves it.
delete, keep Strategy for handling concurrent runs on same thread: 'reject', 'interrupt', 'rollback', or 'enqueue'.
Command for resuming interrupted runs with state updates or navigation
Nodes to interrupt immediately before they get executed. Use '*' for all nodes.
Nodes to interrupt immediately after they get executed. Use '*' for all nodes.
Whether to include subgraph events in streaming. When True, includes events from all subgraphs. When False (default when None), excludes subgraph events. Defaults to False for backwards compatibility.
Request metadata (e.g., from_studio flag)
Successful Response
The response is of type Response Wait For Run Threads Thread Id Runs Wait Post · object.