Run.start()
The .start() method starts a workflow run with input data, allowing you to execute the workflow from the beginning.
Usage exampleDirect link to Usage example
const run = await workflow.createRun();
const result = await run.start({
inputData: {
value: "initial data",
},
});
ParametersDirect link to Parameters
inputData?:
z.infer<TInput>
Input data that matches the workflow's input schema
requestContext?:
RequestContext
Request Context data to use during workflow execution
outputWriter?:
(chunk: TOutput) => Promise<void>
Optional asynchronous function to handle output chunks as they are produced
tracingContext?:
TracingContext
Tracing context for creating child spans and adding metadata. Automatically injected when using Mastra's tracing system.
currentSpan?:
Span
Current span for creating child spans and adding metadata. Use this to create custom child spans or update span attributes during execution.
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.
outputOptions?:
OutputOptions
Options for output configuration.
includeState?:
boolean
Whether to include the workflow run state in the result.
ReturnsDirect link to Returns
result:
Promise<WorkflowResult<TState, TOutput, TSteps>>
A promise that resolves to the workflow execution result containing step outputs and status
traceId?:
string
The trace ID associated with this execution when Tracing is enabled. Use this to correlate logs and debug execution flow.
Extended usage exampleDirect link to Extended usage example
import { RequestContext } from "@mastra/core/request-context";
const run = await workflow.createRun();
const requestContext = new RequestContext();
requestContext.set("variable", false);
const result = await run.start({
inputData: {
value: "initial data",
},
requestContext,
});