Skip to main content
Configure visual flows that execute when the call completes. Use flow nodes to push call summaries, transcripts, and variables to your CRM or external systems when the conversation ends.

Overview

  • When it runs: After the conversation ends (asynchronously).
  • Typical tasks:
    • Generate and store a call summary and disposition
    • Persist transcript to CRM or data warehouse
    • Trigger downstream workflows (e.g. ticket creation)

Create a Post-Call Action Flow

  1. Open Studio → Build → AI Agents → Actions tab → Post-Call.
  2. Click “Create New Action” and configure:
    • Name: Short, descriptive identifier
    • Description: What the action does and why
    • Execute on channels: Which channels the action runs on — Voice, Chat, or both (at least one must be selected)
  3. Save the action, then click Save & Edit Flow to open the Flow Builder.

Channel Scoping

Post-call actions can be scoped to run only on specific channels — for example, log a ticket only for voice calls, or send a chat transcript email only for chat sessions.
  • Existing and newly created actions default to Voice only.
  • To branch within a shared flow instead, use the built-in interaction.CHANNEL variable (resolves to voice or chat) in a Decision node.

Flow Builder

The flow defines what happens when the call ends. Drag nodes from the sidebar and connect them starting from the Start node. In a large flow, use the search box in the top-right of the canvas to jump to a node by name or type — see Find a Node on the Canvas.

API Request Node

Call an external HTTP API and map response fields to variables:
  • Method: GET, POST, PUT, DELETE, PATCH
  • URL: Static URL (e.g. https://api.example.com/tickets)
  • Query Params: Key-value pairs, variable-aware
  • Headers: Static or variable-aware
  • Body: JSON body (e.g. passing {{interaction.SUMMARY}}, {{interaction.TRANSCRIPT}})
  • Auth Profile: Optional reusable credentials profile — see Auth Profiles for details. Also supports mTLS for APIs that require certificate-based mutual authentication.
  • Test Request: Use “Send” to preview response in Data or Meta tabs
  • Response Mapping: Map JSON paths to variables to store references.

Set Variable Node

Assign or overwrite variables based on post-call calculations or responses.

Decision Node

Route post-call logic conditionally (e.g., only call the Zendesk API if {{interaction.DISPOSITION}} == "escalated").
Post-call flows do not support Say nodes as the conversation has already ended.

Best Practices

  • Keep post-call operations idempotent; the same call payload may be retried.
  • If you need both summary and transcript, design your backend to accept a single payload in the API Request node to minimize network calls.
  • Store external IDs (e.g. ticket number) for cross-system traceability.