Skip to content

Flows

Flows are Lane.Chat's automation engine: event-triggered sequences of conditions and actions that run server-side on a conversation. They power welcome messages, keyword replies, lead-capture forms, routing, and rich-message sequences — without any code on your side.

Flows are authored in the dashboard. This page explains the concepts a developer integrating with Lane.Chat needs to know; it is not a Flow-builder tutorial.

Triggers

A Flow runs in response to an event on a conversation. Common triggers include:

  • Chat started — a new conversation opens.
  • Visitor message — a message arrives (optionally keyword-matched).
  • Button click — the visitor taps a rich-message button. The postback (button_id, button_value, button_text) is available to the Flow.
  • No reply / no agent, rating submitted, keyword detected, and working / off hours are also available.

A form submission does not start a Flow — it resumes one already paused on a form step (see Waiting and resuming); the submitted values become form.* variables.

Actions

Actions are the steps a Flow executes. The set includes (among others):

  • Send message — plain text, with {{variable}} interpolation.
  • Send rich message — any of the six rich types (markdown, card, buttons, carousel, form, link).
  • Send button group — a quick set of reply buttons.
  • Ask for email — gate the input until the visitor provides a valid email.
  • Transfer to agent — hand the conversation to a human.
  • Rate chat, request binding, API call, and more.

All visitor-facing copy supports template variables and per-language {lang: text} maps.

Waiting and resuming

Some actions pause the Flow until the visitor does something:

  • A form with a flow_step_id submit action pauses until the visitor submits (POST /v1/forms/submit), then resumes with the values injected as form.* variables.
  • A button group pauses until the visitor clicks a button.

While a Flow is waiting, ordinary visitor messages still pass through — keyword Flows and AI can still answer; the paused execution simply stays waiting until its expected input arrives.

Egress and channels

Everything a Flow sends goes out through the single agent-to-visitor dispatch path, which broadcasts to the widget over WebSocket and fans out to native channels (Telegram, WhatsApp, Slack, email) with per-channel translation and a text fallback. You author a message once; each channel renders it as best it can.

Observability

Flow executions are traced. Execution history, trigger attempts, stats, dry-run, and versioning are available in the dashboard.

Lane.Chat — AI customer support, multichannel CRM, and roleplay AI.