When to use

  • Start a workflow the moment a customer action or system event happens.
  • Hand over from one automation to another (e.g., “automation-ended”).
  • Keep flows event-driven and composable instead of building one mega-flow.

Channel-specific trigger types

ChannelCommon EventsExample Uses
ChatChat created, User message, Bot handover, Automation endedStart when a customer initiates chat, or when a previous bot hands over to this flow
VoiceInbound call received, Scheduled outbound callLaunch IVR/auth flow when a customer calls the helpline or when the system dials
Email / TicketsTicket created, Ticket reopened, Ticket updated, Automation endedFire on new ticket, customer reply, or status change to continue processing

Examples

  • Ticket created → Auto-triage and add tags; if missing info, email the user for details.
  • Chat bot handover → Returns flow with order lookup and RMA status.
  • Inbound call → Verify → Callback flow with scheduled follow-up if lines are busy.

Chaining & Handover

  • Use automation-ended to start a follow-on automation after a flow completes.
  • Pass context variables (e.g., intent, order_id) to the next automation for continuity.

Best practices

  • Keep triggers small and focused; one clear entry per flow.
  • Use specific events (e.g., “ticket reopened”) to avoid unintended runs.
  • Log why/when a trigger fired (internal notes) for observability.
  • Guard against re-entry with idempotency keys or status checks when applicable.

Configure a trigger (Quick Steps)

1

Choose the channel

Pick Chat, Voice, or Email/Tickets based on where the event occurs.
2

Select the event

Choose the exact event (e.g., Chat created, Ticket updated, Inbound call).
3

Map starting variables

Capture key context (e.g., user_id, ticket_id, source) for downstream blocks.
4

Define next action

Route to your first block (Listen, Gen AI, or Dev/API) and set guardrails.
Use automation-ended triggers to orchestrate multi-stage journeys (e.g., Triage → Resolution → Feedback), keeping each stage independently testable and debuggable.