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

# Using Workflow Builder

> What the Workflow Builder is and how to build a typical ION automation flow that reacts to ION events.

The **Workflow Builder** is ION's tool for building automation flows. A flow reacts to an ION event or a schedule, then runs a sequence of steps that can call external systems, transform data, and read or write ION through the [GraphQL API](/api-reference). You assemble a flow visually from prebuilt components instead of writing an integration from scratch.

## What you can build

* **External connections** move data between ION and another system, such as syncing an order to a supplier portal.
* **Timed automations** run a flow on a schedule, such as checking stock levels every hour.
* **Event-triggered flows** start when something happens in ION, such as a run being created or a purchase order changing state.

## Workflow Builder vs. Actions

The Workflow Builder and [ION Actions](/automate-with-ion/ion-actions) both automate ION, but they solve different problems:

|                  | Workflow Builder                                               | ION Actions                                                |
| ---------------- | -------------------------------------------------------------- | ---------------------------------------------------------- |
| **Purpose**      | Orchestrate automation across systems                          | Enforce a business rule on a change                        |
| **When it runs** | On a schedule or in response to an ION event                   | Inside a change, before it saves                           |
| **Typical use**  | Sync data to an ERP, replenish inventory, call an external API | Block an invalid change, require a field, gate an approval |
| **Reach**        | ION plus external systems                                      | ION data only                                              |

Use Actions to allow, block, or warn on a change as it happens, such as preventing R\&D parts from being kitted into a production run. Use the Workflow Builder to move data between systems or run automation on a schedule.

## Access and permissions

Open **Workflow Builder** from the left navigation, under **Developer Platform**. The entry is hidden unless your organization has the Workflow Builder enabled and your role has the `ReadEmbeddedWorkflowBuilder` permission.

Admins have access by default. To grant access to another role:

1. In ION, go to **Settings > Organization > Members > Roles**.
2. Select the role you want to grant access to.
3. Enable the **EmbeddedWorkflowBuilder** permission.
4. Repeat for each role that needs access.

## Build a flow triggered by an ION event

Most ION flows start from the **ion-webhooks** component, which subscribes to ION events and exposes them as a trigger inside the flow. It creates the webhook receiver, manages the subscription, and cleans it up when you remove the flow.

To build a flow that runs when an ION event fires:

1. In the Workflow Builder, create a workflow and give it a name.
2. Add the **ion-webhooks** component and set it as the flow's trigger.
3. For the trigger's **Connection**, select an existing ION connection or add one. A new connection needs a name, your ION [API keys](/api-reference/authentication/api-keys) as the client ID and secret, and the environment your ION instance runs in.
4. Set a **Webhook Receiver Name**. ION uses this name for the receiver it creates, so matching it to the flow name keeps the two easy to trace.
5. Add one or more trigger events as resource-and-action pairs, such as **Runs - Create** to fire whenever a run is created. A flow can trigger on more than one event.
6. Add the downstream steps that carry out your automation, then test and publish the flow.

<Note>
  Any flow that reads or writes ION data uses the ion-webhooks component for its ION connection.
</Note>

## Related

* [ION Actions](/automate-with-ion/ion-actions)
* [Integrations](/automate-with-ion/integrations)
* [Webhooks](/api-reference/guides/webhooks)
