On this page

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<WorkflowResult>

Starts workflow execution with input data

### resume:

(options?: ResumeOptions) => Promise<WorkflowResult>

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<WorkflowResult>

Restarts the workflow execution from last active step

### timeTravel:

(options?: TimeTravelOptions) => Promise<WorkflowResult>

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.
