# Runs

## Overview

A **run** represents a single execution of a [process](https://docs.kognitos.com/legacy/legacy-experience/processes). Every time a process is ran, Kognitos captures all the details of its execution (inputs, outputs, and state changes). Each run is also assigned a unique ID, making them easy to track, monitor, and manage.

## Ways to Run a Process

All processes can be run manually *(draft or published)*. Published processes can also be triggered to run automatically by email, via API, or on a schedule.

<table><thead><tr><th width="142.46875">Method</th><th width="215.89453125">Description</th><th width="230.8203125">Uses</th><th>Process Types</th></tr></thead><tbody><tr><td><strong>Manual Run</strong></td><td>Run directly from the platform by navigating to <kbd>Processes</kbd>, selecting a process, and clicking <kbd>Run</kbd> to start a new run.</td><td><ul class="contains-task-list"><li><input type="checkbox" checked>Testing</li><li><input type="checkbox" checked>One-time actions</li></ul></td><td><ul><li>Draft</li><li>Published</li></ul></td></tr><tr><td><a href="runs/trigger-a-process-by-email"><strong>Email Trigger</strong></a></td><td>Trigger a run by sending an email to a unique email address.</td><td><ul class="contains-task-list"><li><input type="checkbox" checked>Invoice and document intake</li><li><input type="checkbox" checked>Support requests</li><li><input type="checkbox" checked>Alert-driven workflows</li></ul></td><td><ul><li>Draft</li><li>Published</li></ul></td></tr><tr><td><a href="https://docs.kognitos.com/rest-api/v2/runs#post-runs"><strong>API Trigger</strong></a></td><td>Trigger a run by making an HTTP request to the Kognitos REST API.</td><td><ul class="contains-task-list"><li><input type="checkbox" checked>System-to-system integrations</li><li><input type="checkbox" checked>Event-driven automation</li><li><input type="checkbox" checked>Backend workflows</li></ul></td><td><ul><li>Draft</li><li>Published</li></ul></td></tr><tr><td><a href="runs/schedule-a-process-run"><strong>Scheduled Run</strong></a></td><td>Schedule the process to run automatically at specific times / intervals <em>(e.g., every hour, daily, or weekly)</em></td><td><ul class="contains-task-list"><li><input type="checkbox" checked>Daily reports</li><li><input type="checkbox" checked>Recurring system checks</li><li><input type="checkbox" checked>Routine data processing</li></ul></td><td><ul><li>Published</li></ul></td></tr></tbody></table>

## Run States

Runs execute asynchronously, moving through the following status transitions: *Pending → Running → Succeeded, Failed, or Cancelled*. Once a run completes successfully, its output becomes available for review or use in subsequent actions.

<table><thead><tr><th width="199.6534423828125">State</th><th>Description</th></tr></thead><tbody><tr><td><strong>Pending</strong></td><td>Run is queued for execution.</td></tr><tr><td><strong>Running</strong></td><td>Run is currently executing.</td></tr><tr><td><strong>Succeeded</strong></td><td>Run completed successfully.</td></tr><tr><td><strong>Failed</strong></td><td>Run encountered an error.</td></tr><tr><td><strong>Cancelled</strong></td><td>Run was cancelled by user.</td></tr><tr><td><strong>TimedOut</strong></td><td>Run exceeded maximum execution time.</td></tr></tbody></table>

## Managing Runs

Once a process has been executed, you can manage individual runs through various actions. To access these options:

{% stepper %}
{% step %}
**Navigate to Processes**

From the left navigation menu, go to <kbd>**Processes**</kbd>.
{% endstep %}

{% step %}
**Select a Process**

Click on the process you want to manage.
{% endstep %}

{% step %}
**View Runs**

Click <kbd>**View Runs**</kbd> to see all the process runs.
{% endstep %}

{% step %}
**Select Runs and Choose an Action**

Select the checkbox next to one or more runs. The following actions become available:

**1. Re-run**

Re-executes a process using the same inputs and configuration as the selected run. This is useful for retrying failed runs or reproducing results with identical parameters.

**2. Archive**

Moves runs out of the main view to help organize and declutter your run history. Archived runs can be restored at any time.

{% hint style="warning" %}
Archiving a running process will *not* pause or stop its execution. The run will continue to completion regardless of its archived status.
{% endhint %}

**3. Unarchive**

Restores previously archived runs back to the main run view. This makes them visible again in the default run list (without filters).

**4. Add Test Case**

Creates a test case from the selected run. Test cases can be used to validate process behavior in the [Test Suite](https://docs.kognitos.com/legacy/legacy-experience/processes/test-suite).
{% endstep %}
{% endstepper %}
