# Automations > Flows that reply, route and tag on their own — triggers, nodes, drafts and publishing. > Source: https://onpad.in/docs/automations An automation is a flow that runs on its own when something happens — a first message arrives, or a customer says a particular word. Automations are built on a canvas: a trigger at the top, then nodes connected by lines. Each node does one thing and hands the conversation to the next. ## Triggers A flow has exactly one trigger, and it decides when the flow runs. **New conversation** — the first time a customer messages you. Use it for a welcome message, or to collect what you need before a human picks up. **Keyword** — the customer's message contains or equals a word you choose. Use it for `price`, `hours`, `STOP`, `catalogue`. ## Nodes | Node | What it does | |---|---| | **Message** | Sends free text | | **Template** | Sends an approved template — works even when the 24-hour window is closed | | **Buttons** | Sends a message with tappable reply buttons | | **List** | Sends a menu the customer picks from | | **AI reply** | Hands this turn to the AI Agent, which answers from your business information | | **Condition** | Branches on what the customer said — equals, contains | | **Delay** | Waits before continuing | | **Wait for reply** | Pauses the flow until the customer answers | | **Tag** | Adds a tag to the contact | | **Assign** | Assigns the conversation to a team member | | **Handoff** | Stops the automation and hands over to a human | | **End** | Finishes the flow | **Assign and Handoff need an active team member.** A flow pointing at someone who has left will not publish. ## Draft and published An automation keeps two versions: the **draft** you are editing and the **published** one that is actually running. Editing never affects live conversations. Changes take effect when you publish, and each publish increments the version. This is deliberate — a flow serving customers right now should not change under them because somebody dragged a node. ## Statuses | Status | Meaning | |---|---| | **Draft** | Never published. Not running | | **Active** | Published and running | | **Paused** | Published but not running. Resumes on unpause | Pause is the safe way to stop a flow that is misbehaving. Nothing is lost, and conversations part-way through stop where they are. ## Free text and the 24-hour window The same rule as everywhere else: a **Message** node sends free text, which only works inside the 24-hour window. Since automations usually trigger on a customer's own message, the window is almost always open. But a flow with a long **Delay** can wake up after it has closed — in that case use a **Template** node, which works at any time. ## Designing one that works **Start small.** A welcome message and a handoff is a complete, useful automation. Build the twenty-node version after you have seen the two-node one run. **Always leave a way to a human.** A flow a customer cannot escape is worse than no flow. Put a Handoff on the path where nothing matched. **Use buttons instead of asking people to type.** Taps are unambiguous; typed answers need a Condition node for every spelling. **Name nodes for what they do.** Six months from now "Message 4" tells you nothing. ## Watching them Each automation records how many times it ran, how many succeeded, when it last ran, and the last error if one occurred. A run count climbing with a success count that is not is the signal to open it — usually a Template node whose template was paused, or an Assign node pointing at someone who left. ## Automations and the AI Agent They work together. An **AI reply** node hands one turn to the agent and then continues the flow, which lets you keep control of the structure — collect the order number with a Wait for reply, then let the agent answer the question about it. See [AI Agent](https://onpad.in/docs/ai-agent). ## Next - [AI Agent](https://onpad.in/docs/ai-agent) — the assistant that answers customers - [Inbox](https://onpad.in/docs/inbox) — where a handoff lands