---
title: "Configuring Actions"
description: "Create, customize, enable, disable, and delete actions on an agent, and choose which channels each action runs on."
---

:::note[Plan]
Actions are available on the **Starter** plan and above.
:::

In your agent, go to **Build** > **Actions**.

## Create an action

1. **Open the action list**

    Select **Create action**. Use **Search actions** to find one quickly.

2. **Add it**

    Select **Create** next to the action you want. Actions you've already added show **Added**.

3. **Configure it**

    Open the action to set it up. Available settings depend on the action type.

You may also see:

- **Connect Slack**: the action needs an integration first. See [Connecting Slack](/docs/integrations/slack/connecting-slack).
- **Plan limit reached**: this agent has used its shared **Actions & Widgets per agent** allowance. Disable a capability or upgrade before enabling another action. Widgets with their own **When to show** condition also use this allowance. See [Plans and Pricing](/docs/billing/plans-and-pricing) and [how widgets use slots](/docs/widgets#how-widgets-use-the-allowance).
- **Unavailable**: the action isn't available for your team.

Most actions can be added once per agent. **Custom API** can be added several times, once for each task. Each Custom API action calls an API through an [API connection](/docs/agents/api-connections). It can also show an enabled [widget](/docs/widgets) after a successful JSON response. A new Custom API action starts disabled. When a slot is available, it turns on after you complete its required settings and save it. At capacity, you can still create and configure the action, but it stays disabled. Free a slot, then switch it on.

## Edit an action

Select **Customize** on an action to open it. You can:

- **Enabled**: switch the action on or off without losing its settings.
- **When to use**: for most actions, describe when the agent should run it. For MCP Server, this optional text guides when the agent should use its tools. See [Trigger Conditions](/docs/actions/trigger-conditions).
- **Channels**: choose where the action is available: **Web widget**, **Public Chat**, **WhatsApp**, and, for Custom API, **API**. Not every action supports every channel; see [Where actions run](/docs/actions#where-actions-run).
- **Run again**: what happens when a later message in the same conversation matches again. See [Run again](#run-again).
- **Restore default settings**: go back to the action's original settings.

## Run again

Custom API, MCP Server, Slack notifications and Collect Leads let you choose whether an action can run more than once in a conversation:

| Option | What it does | Good for |
| --- | --- | --- |
| **Every time** | Runs whenever a message matches. This is the default. | Lookups, such as checking a second order. |
| **Until it succeeds** | Runs again only if the last run failed. | Creating something once, such as a booking or a draft, with a retry if your system was down. |
| **Once** | Runs at most once per conversation, even if it failed. | One-time notifications or offers. |

For MCP Server, set **Run again** separately for each tool. Salesforce tickets don't need it: a conversation can create only one. For Collect Leads with the lead form, the choices are **Until it succeeds**, the default, where a dismissed form shows again when a later message matches **When to use**, and **Once**, where a dismissed form stays dismissed. A submitted form never shows again.

The [Playground](/docs/agents/playground)'s [action steps](/docs/actions/action-steps) show **Already ran** when this setting kept an action from running.

## Delete an action

Open the action, select **Delete action**, and confirm. You can also use the menu on the action in the list. Deleting can't be undone.

:::note
If an action shows **Disabled by admin**, it has been turned off by Chatvox. Contact support if you need it.
:::
