All guides

Build and publish your first flow

A flow is the picture of what happens when someone calls you. You drag nodes onto a canvas, wire them together, and publish. There is no code, and there is nothing hidden behind the picture: what you see is exactly what runs.

The canvas

Open Flows and press New flow. Pick Voice for a call flow or Text for an SMS flow. After it exists, the orange Try calling button rehearses it on this site. No real phone rings. On the trial that is the whole phone: explore, test calls, test messaging.

The canvas works the way a node editor should:

  • Drag the background to pan, scroll to zoom.
  • Drag from a port on the right of a node to an input on the left of another to wire them.
  • Click a node to open its settings in the side panel.
  • Delete removes the selected node and its wires.

Node headers are colored by what they do: green starts, blue speaks, purple routes by choice, cyan reaches people, orange branches on a condition, teal sends messages, red ends the call.

A first flow that is actually useful

Start with the smallest thing that beats voicemail hell: greet the caller, then try to reach a human. A new flow offers three templates on the canvas — pick Main line if you want this shape already wired.

  1. Every voice flow begins with Incoming call. It is already on the canvas.
  2. Drag in an Open or closed node so nights and Sundays do not ring anyone.
  3. Drag in a Say node. Type your greeting, for example: Thanks for calling Kanda Plumbing. Connecting you now.
  4. Drag in Ring people in order (one at a time) or Ring everyone (all phones at once). Add the crew.
  5. Drag in a Take a voicemail node.
  6. Wire it up: Incoming call to hours, open to Say, Say to the ring node, ring nobody answered to Voicemail. Closed goes to a short after-hours Say, then the same voicemail. Leave the ring answered port unwired: the call is already connected to a person.

That is a complete phone system. It rings your people, and anyone who slips through gets a voicemail that lands in your inbox with a transcript.

A greeting that sits right before a menu or "collect numbers" node is folded into that prompt, so the caller can press a key while you are still talking.

Prompts: recorded or spoken

Every prompt field takes either typed text, which Taki speaks with a natural voice, or a recording you upload. Typed text is easier to change. Recordings sound like your business. Mixing both in one flow is fine.

If your callers speak more than one language, put a Language branch right after the greeting. The caller picks a language once, and every prompt after that point follows their choice.

A Press-a-key menu node reads a prompt and waits for a keypress. Each choice is a row on the card with its own output, so the wiring makes the menu obvious at a glance. Click an empty output to drop the next node already wired. Set repeats to control how many times a caller who says nothing hears the prompt again, and wire the no input port to whatever should happen when they never press anything. Sending that port to a ring node is usually kinder than hanging up.

Collect numbers asks for a zip, a phone, or a job number. Pick the kind; Taki already knows how many digits to wait for. The value is saved as {zip}, {phone}, or {job} so a later Send a text can include it.

Take a voicemail can text a contact the moment a message lands, so the truck does not have to open the inbox.

Open or closed understands a lunch break and extra closed dates (holidays) on top of the weekly grid.

Call a number rings an answering service or any outside line. Leave “must press 1” on for a cell; turn it off only for a desk that always picks up.

Known or unknown splits callers whose cell is already on your contacts from everyone else, so a returning customer can skip the menu.

Business hours

An Hours branch node has two ports, open and closed. Set your schedule in the side panel. A typical shape is: hours branch, open goes to the waterfall, closed goes to a Say node explaining when you open, then to Voicemail.

Test before you publish

Press Validate at any time. Taki checks the structure of the graph and tells you about problems in plain language:

  • Errors block publishing: no start node, two start nodes, a wire that goes nowhere, or a text node in a voice flow.
  • Warnings do not block publishing: the most common one is a node nothing can reach, which usually means you forgot a wire.

Publish

Press Publish. The published version is what live calls run. Your draft keeps changing without affecting anyone on the phone, which means you can safely rebuild a flow in the middle of a workday and switch over when you are ready.

Finally, attach the flow to a number under Numbers, then call it yourself. The Calls page shows the path the call took through the flow, node by node, which is the fastest way to see why something behaved differently than you expected.

Next: waterfall routing.