# Run Class The `Run` class represents a workflow execution instance, providing methods to start, resume, stream, and monitor workflow execution. ## Usage example ```typescript const run = await workflow.createRun(); const result = await run.start({ inputData: { value: "initial data" }, }); if (result.status === "suspended") { const resumedResult = await run.resume({ resumeData: { value: "resume data" }, }); } ``` ## Run Methods **start:** (`(options?: StartOptions) => Promise`): Starts workflow execution with input data **resume:** (`(options?: ResumeOptions) => Promise`): Resumes a suspended workflow from a specific step **stream:** (`(options?: StreamOptions) => MastraWorkflowStream`): Monitors workflow execution as a stream of events with enhanced streaming features **resumeStream:** (`(options?: ResumeStreamOptions) => MastraWorkflowStream`): Resumes a suspended workflow with streaming support **cancel:** (`() => Promise<{ message: string }>`): Cancels the workflow execution, stopping any running steps and preventing subsequent steps from executing **restart:** (`(options?: RestartOptions) => Promise`): Restarts the workflow execution from last active step **timeTravel:** (`(options?: TimeTravelOptions) => Promise`): Re-executes a workflow starting from any specific step, using either stored snapshot data or custom context you provide. **timeTravelStream:** (`(options?: TimeTravelOptions) => MastraWorkflowStream`): Time travels a workflow execution with streaming support ## Run Status A workflow run's `status` indicates its current execution state. The possible values are: **success:** (`string`): All steps finished executing successfully, with a valid result output **failed:** (`string`): Workflow execution encountered an error during execution, with error details available **suspended:** (`string`): Workflow execution is paused waiting for resume, with suspended step information **canceled:** (`string`): Workflow execution was canceled via the cancel() method, stopping any running steps and preventing subsequent steps from executing ## Related - [Run.start()](https://mastra.ai/reference/workflows/run-methods/start) - [Run.resume()](https://mastra.ai/reference/workflows/run-methods/resume) - [Run.cancel()](https://mastra.ai/reference/workflows/run-methods/cancel) - [Run.restart()](https://mastra.ai/reference/workflows/run-methods/restart) - [Run.timeTravel()](https://mastra.ai/reference/workflows/run-methods/timeTravel) - [Run.stream()](https://mastra.ai/docs/streaming/workflow-streaming) - [Run.timeTravelStream()](https://mastra.ai/reference/streaming/workflows/timeTravelStream)