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

# Building Flows

> Learn how to create automation flows using triggers and actions in the DialogBot visual builder.

Every flow in DialogBot is made up of two parts: a **trigger** and one or more **actions**. The trigger determines when the flow runs; the actions determine what it does.

## Triggers

A trigger is the starting point of your flow. It defines the event that causes the flow to execute. DialogBot supports several trigger types:

<CardGroup cols={2}>
  <Card title="Schedule trigger" icon="clock">
    Run a flow on a recurring schedule — hourly, daily, weekly, or on a custom cron expression.
  </Card>

  <Card title="Webhook trigger" icon="webhook">
    Run a flow when an external system sends an HTTP request to a unique URL generated by DialogBot.
  </Card>

  <Card title="Event trigger" icon="bolt">
    Run a flow when a specific event occurs within a connected service, such as a call ending or a new lead arriving.
  </Card>

  <Card title="Inbound call trigger" icon="phone-arrow-down-left">
    Run a flow before an AI assistant picks up an inbound call, so you can inject context into the conversation.
  </Card>
</CardGroup>

## Actions

Actions come after the trigger and control what happens when the flow runs. You can chain multiple actions together — each step can use data produced by any step before it.

Common things actions let you do:

* **Update a CRM** — write call outcomes, transcripts, or contact info to HubSpot or another CRM.
* **Send a message** — deliver a Slack notification, email, or SMS based on call results.
* **Manipulate data** — transform, filter, or format data before passing it to the next step.
* **Call an external API** — trigger a webhook or hit a REST endpoint with custom payloads.
* **Add a lead to a campaign** — enroll a caller in an DialogBot outbound campaign automatically.

## Adding steps

<Steps>
  <Step title="Open the flow builder">
    Navigate to **Automation** in the sidebar and click **New Flow**, or open an existing flow to edit it.
  </Step>

  <Step title="Select a trigger">
    Click the trigger block at the top of the canvas. Choose the trigger type that matches your use case and complete the required configuration fields.
  </Step>

  <Step title="Add an action">
    Click the **+** button below the trigger (or below any existing step) to add a new action. Search for the tool or service you want to connect to, then configure the step.
  </Step>

  <Step title="Test each step">
    Use the **Generate Sample Data** panel on each step to test it before publishing. This ensures data from earlier steps is available for selection in later ones.
  </Step>

  <Step title="Publish the flow">
    When your flow is ready, click **Publish**. Unpublished changes remain in draft and do not affect your live automation.
  </Step>
</Steps>

<Tip>
  Test every step before publishing. DialogBot requires tested steps to expose their output data in subsequent steps, which prevents mismatched data from breaking your live flows.
</Tip>
