🇪🇸 Español 🇬🇧 English 🇧🇷 Português

IVR node: Conversation lookup

Use the Conversation lookup node to reconnect a returning caller with the agent or team who last helped them.

Jul 11, 2026

What it's for

Place this node right after a Contact lookup node. It checks whether the number calling in already has a recent conversation in your Inbox, and if so, surfaces who handled it — assigned agent, team, status — so the IVR can reconnect the caller with the same agent instead of dropping them into a generic menu.

Requirements

  • Must run after a Contact lookup node — if no contact has been resolved yet, this node advances straight through the not_found edge.
  • The calling channel needs conversations already logged in the Inbox (WhatsApp Calling, Telnyx, etc.).

Configuration

  • Filter by team: restrict the search to conversations from one team (or "Any team").
  • Statuses to consider: checkboxes for Open, Snoozed, Closed, Resolved.
  • Max age (hours, 0 = unlimited): ignore conversations older than N hours (default 720h = 30 days).

Outputs (edges)

  • found_assigned: a matching conversation exists and has an assigned agent.
  • found_unassigned: a matching conversation exists but sits unassigned (queue-only).
  • not_found: no matching conversation.

Variables it sets

${last_conversation_id}, ${last_agent_id} (found_assigned only), ${last_team_id}, ${last_status}, ${last_agent_online} (true if the agent is currently online), ${last_agent_team_match} (true if the assigned agent belongs to the team filter).

Example

A customer who talked to "Ana" on the Support team yesterday calls back. With Filter by team = Support and Statuses = Open + Snoozed, the node finds that conversation, branches on found_assigned, and stores ${last_agent_id} plus ${last_agent_online}. A downstream Route to user node transfers the call straight to Ana if she's online, or to the Support queue if not.

Tips

  • Pair found_assigned + ${last_agent_online}=true with a Route to user node for continuity without exposing the agent's direct number.
  • If ${last_agent_team_match} comes back false, the agent has since moved teams — route to the general queue instead.

Troubleshooting

  • If it always falls into not_found, check that a Contact lookup node runs first and the contact exists in the right workspace.
  • If an agent shows offline while working, presence expires every 60 seconds — it can take a few seconds to catch up.
Was this helpful?

Related articles