> ## Documentation Index
> Fetch the complete documentation index at: https://docs.summation.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflows

> Automate your recurring work on a schedule.

Workflows turn a one-off analysis into something that keeps happening on its own, so no one has to rebuild it by hand each time.

A **workflow** is a pipeline: a trigger that starts it, on demand or on a schedule, and delivery steps that send the output out by email or Slack. Today the only work a workflow runs is a [playbook](/features/artifacts/playbooks), the repeatable instruction bundle where your analysis lives.

A workflow's graph combines three kinds of nodes: **Schedule**, **Playbook**, and **Delivery**. Each node type has its own settings, so you configure each one to match what you need.

<Frame caption="A workflow's graph: a Schedule trigger, a Playbook, and an email delivery node">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/workflow-editor.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=97c587f453c48319279194ca3a219794" alt="The workflow editor for 'Weekly Merchandising Review', showing a Schedule node ('Monday at 9:00 AM, Every Monday at 09:00 PT'), a Playbook node ('Merchandising Review' with its parameters), and a 'Send an email' node, wired top to bottom. The right sidebar shows Status 'Active', Project 'Operations', Created by 'Unknown', Last updated 'Sep 1, 2026', Next run 'Monday, Sep 7, 9:00 AM PDT', and a 'Run now' button." width="2982" height="1508" data-path="images/features/workflows/workflow-editor.png" />
</Frame>

<Note>
  **Run playbook** is the only action node available today. A workflow handles orchestration and delivery, so build the playbook first, then wrap the automation around it.
</Note>

## Schedule

The **Schedule** node sets the cadence a workflow runs on: Once, Daily, Weekly, or Monthly, in a timezone you choose. Deactivate the workflow to stop it running without losing its configuration, and reactivate it whenever you want.

<Frame caption="Schedule">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/node-schedule.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=69f24ed1d16dfc5a7375af668a9bb1ab" alt="A Schedule node card reading 'Monday at 9:00 AM, Every Monday at 09:00 PT', with an 'Add new' button below it." style={{ maxWidth: "320px", margin: "0 auto", display: "block" }} width="614" height="388" data-path="images/features/workflows/node-schedule.png" />
</Frame>

Pick a **Frequency** when you build the node:

| Frequency   | What you set                                     |
| ----------- | ------------------------------------------------ |
| **Once**    | A date and time; the workflow runs a single time |
| **Daily**   | A time of day                                    |
| **Weekly**  | One or more weekdays, plus a time                |
| **Monthly** | A day of the month, plus a time                  |

Times are set in 15-minute increments and interpreted in the timezone you choose, your browser's by default. The timezone is stored with the workflow, so runs stay put when you travel.

## Playbook

The **Playbook** node is the one action a workflow can take. It runs a project [playbook](/features/artifacts/playbooks), a repeatable instruction bundle that can produce or update artifacts (reports, decks, HTML pages, Excel workbooks, and PDFs) or simply run analysis. Fill in whatever parameters the playbook needs: a date, a market, a team.

<Frame caption="Playbook">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/node-playbook.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=8b02b5ace20109e3290408179cb58bec" alt="A Playbook node card titled 'Merchandising Review', showing its description and parameters: Focus category 'Kids Sneakers', Through fiscal week 'Not set', Fiscal year 'Not set', Watchlist size '6'." style={{ maxWidth: "320px", margin: "0 auto", display: "block" }} width="616" height="568" data-path="images/features/workflows/node-playbook.png" />
</Frame>

Each node is a card in the editor. Add one from the **+** between existing nodes, fill in its parameters, and connect it into the graph.

## Delivery

The **Delivery** node hands the playbook's output to people, in one of two ways:

* **Email**: a list of recipients.
* **Slack**: channels or people in a connected [Slack workspace](/features/connectors). Connect Slack there first.

Formats that are already presentation-ready are delivered as they are; everything else is rendered to PDF.

| Artifact                                            | Delivered as         |
| --------------------------------------------------- | -------------------- |
| **[Report](/features/artifacts/reports)** (`.sdoc`) | PDF                  |
| **HTML page**                                       | PDF                  |
| **[Deck](/features/artifacts/decks)** (`.sdeck`)    | PowerPoint (`.pptx`) |
| **Workbook** (`.xlsx`)                              | Excel                |
| **PDF**                                             | PDF                  |

Playbooks that declare their outputs get one row per output. For playbooks that don't, the same per-kind default applies to whatever the run produced.

<Frame caption="Send an email">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/node-email.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=5b9ef44142512b2c90ae046a707c62ac" alt="A 'Send an email' node card showing '1 recipient'." style={{ maxWidth: "320px", margin: "0 auto", display: "block" }} width="538" height="138" data-path="images/features/workflows/node-email.png" />
</Frame>

An email node needs its recipient list; a Slack node needs its channels or people, and a connected Slack workspace.

## Create a workflow

There are two ways to start:

1. From **Workflows** in the left nav, click **New workflow**, then **Create with Addison** to describe what you want in a sentence, or **Write workflow manually** to build the graph node by node.
2. From any artifact (a report, deck, playbook, Excel file, or HTML page), the **Create workflow** action opens the same Addison flow, already scoped to that artifact.

<Frame caption="Workflows page with the New workflow menu open">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/workflows-list.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=2a3af9fd6e0213ca9c48124c98afd7db" alt="The Workflows page at /workflows, listing 'Weekly Merchandising Review' (Last run: Never, Scheduled: Weekly on Mon 09:00 PDT, Project: Operations), with a 'New workflow' button at the top right." width="2996" height="1512" data-path="images/features/workflows/workflows-list.png" />
</Frame>

<Frame caption="New workflow → Create with Addison or Write workflow manually">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/new-workflow-dropdown.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=1a980714b28bc3124f99010ad2cd7dc7" alt="The 'New workflow' button open, showing a dropdown with two options: 'Create with Addison' and 'Write workflow manually'." width="690" height="352" data-path="images/features/workflows/new-workflow-dropdown.png" />
</Frame>

<Frame caption="Describe the workflow you want and Addison builds it">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/create-with-addison-dialog.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=1d63a6216088fd943c7be99a885c134b" alt="The 'Create workflow' dialog: 'What workflow do you want to create?' with a prompt field (placeholder e.g. 'email the weekly revenue report every Monday at 9am') and Default/Medium effort controls." width="2990" height="1506" data-path="images/features/workflows/create-with-addison-dialog.png" />
</Frame>

<Frame caption="Create workflow, from a report's toolbar">
  <img src="https://mintcdn.com/summation-676748f5/FU4Zz5ejjbEKeYwf/images/features/workflows/create-workflow-from-artifact.png?fit=max&auto=format&n=FU4Zz5ejjbEKeYwf&q=85&s=d1364a8024ab9440e504e671bcbe1081" alt="A report titled 'Monthly Merchandising Review' (breadcrumb: Operations / Monthly Merchandising Review FY2026 Week 29), with a 'Create workflow' button in the top toolbar alongside 'Edit with AI', 'Styles', and a verified checkmark." width="2986" height="1502" data-path="images/features/workflows/create-workflow-from-artifact.png" />
</Frame>

You can save an unfinished workflow as a draft. The editor shows what still needs attention. Fix any invalid recipient entries before saving.

## Save and run

Saving a complete draft marks it **Active**; it does not run the workflow immediately. With an enabled schedule, the workflow runs at the configured times. Check **Next run** in the detail panel to confirm the schedule.

**Run now** saves any unsaved changes and starts a run immediately, including its delivery steps. It is not a dry run. Check the schedule, timezone, and recipients before saving or running.

Saved changes apply to future runs. Saving a deactivated workflow keeps it deactivated; choose **Activate** when you want it to resume. Deactivated and archived workflows cannot start new runs.

If you save an active workflow with required run settings missing, it becomes deactivated. Complete those settings and activate it again when it is ready.

## Watch what happened

The workflow's detail panel lists its **Runs**, most recent first, each with its status.

**Things that bite, in the order they bite:**

* **The graph is a full replace and so are the triggers.** Every write is the complete desired state. `GET` first, mutate, `PUT` the whole document back with `expected_revision`.
* **`edges: []` is accepted at create but the graph rules are re-run at activation** by scheduling-service. A graph that writes cleanly can still be refused when you activate it. Wire the trigger to the first work node when you author it, not when activation complains.
* **`status` on create accepts only `draft`, `paused`, or `archived`.** There is no way to create an active workflow: `active` is reached exclusively through the activate operation.
* **Playbooks are read-only over the API.** `GET /v1/projects/{project_id}/playbooks` lists them; there is no create. A workflow can only run a playbook that already exists, so an agent building one end to end needs the playbook authored in the app or by Addison first.
* **A `403` here usually means the workflows API is not open for the tenant**, not a malformed request. Access to workflows in the app does not by itself open the API.
* **Slack delivery is checked at write, activate, and run**, stricter than the editor, which checks only to decide what to offer.
* **Email recipients are bound by the organization's email policy**, and the subject and body are rendered by the platform. There is no template hook on the email node.
* **The UI and the API name statuses differently.** A workflow the API calls `paused` reads **Deactivated** in the app. `draft`, `active`, and `archived` match.
