Run.resumeStream()
The .resumeStream() method resumes a suspended workflow run with new data, allowing you to continue execution from a specific step and to observe the stream of events.
Usage exampleDirect link to Usage example
const run = await workflow.createRun();
const stream = run.stream({
inputData: {
value: "initial data",
},
});
const result = await stream.result;
if (result!.status === "suspended") {
const resumedStream = await run.resumeStream({
resumeData: {
value: "resume data",
},
});
}
ParametersDirect link to Parameters
resumeData?:
z.infer<TInput>
Input data that matches the workflow's input schema
requestContext?:
RequestContext
Request Context data to use during workflow execution
step?:
Step<string, any, any, any, any, TEngineType>
The step to resume execution from
tracingOptions?:
TracingOptions
Options for Tracing configuration.
metadata?:
Record<string, any>
Metadata to add to the root trace span. Useful for adding custom attributes like user IDs, session IDs, or feature flags.
requestContextKeys?:
string[]
Additional RequestContext keys to extract as metadata for this trace. Supports dot notation for nested values (e.g., 'user.id').
traceId?:
string
Trace ID to use for this execution (1-32 hexadecimal characters). If provided, this trace will be part of the specified trace.
parentSpanId?:
string
Parent span ID to use for this execution (1-16 hexadecimal characters). If provided, the root span will be created as a child of this span.
tags?:
string[]
Tags to apply to this trace. String labels for categorizing and filtering traces.
ReturnsDirect link to Returns
stream:
MastraWorkflowStream<ChunkType>
A custom stream that extends ReadableStream<ChunkType> with additional workflow-specific properties
stream.status:
Promise<RunStatus>
A promise that resolves to the current workflow run status
stream.result:
Promise<WorkflowResult<TState, TOutput, TSteps>>
A promise that resolves to the final workflow result
stream.usage:
Promise<{ inputTokens: number; outputTokens: number; totalTokens: number, reasoningTokens?: number, cacheInputTokens?: number }>
A promise that resolves to token usage statistics
Stream EventsDirect link to Stream Events
The stream emits various event types during workflow execution. Each event has a type field and a payload containing relevant data:
workflow-start: Workflow execution beginsworkflow-step-start: A step begins executionworkflow-step-output: Custom output from a stepworkflow-step-result: A step completes with resultsworkflow-finish: Workflow execution completes with usage statistics