# 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 example ```typescript 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", }, }); } ``` ## Parameters **resumeData?:** (`z.infer`): Input data that matches the workflow's input schema **requestContext?:** (`RequestContext`): Request Context data to use during workflow execution **step?:** (`Step`): The step to resume execution from **tracingOptions?:** (`TracingOptions`): metadata?:Record\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?:stringTrace ID to use for this execution (1-32 hexadecimal characters). If provided, this trace will be part of the specified trace.parentSpanId?:stringParent 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. ## Returns **stream:** (`MastraWorkflowStream`): A custom stream that extends ReadableStream\ with additional workflow-specific properties **stream.status:** (`Promise`): A promise that resolves to the current workflow run status **stream.result:** (`Promise>`): 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 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 begins - **`workflow-step-start`**: A step begins execution - **`workflow-step-output`**: Custom output from a step - **`workflow-step-result`**: A step completes with results - **`workflow-finish`**: Workflow execution completes with usage statistics ## Related - [Workflows overview](https://mastra.ai/docs/workflows/overview) - [Workflow.createRun()](https://mastra.ai/reference/workflows/workflow-methods/create-run) - [Run.stream()](https://mastra.ai/reference/streaming/workflows/stream)