← All nodes
Agents collect_data

Collect Data

Conversational agent that gathers structured fields and remembers facts via hidden tools.

What does it do?

A conversational AI agent specialized in collecting customer information step by step, like filling out a form through chat.

How does it work?

You give it a list of required fields (e.g. name, email, car model). The AI chats with the user until all fields are complete, asking follow-up questions if anything is missing.

Why use it?

The best way to capture leads or take orders without sending users to boring web forms. The customer feels like they're talking to a human while you fill your CRM with structured data.

Inputs

nametype
text string

Outputs

nametype
data object
reply string

Branches

Fixed branches

  • completed — Completed
  • collecting — Collecting

Configuration

mode "conversational" | "streaming" required default: "conversational"
streaming object optional
model string optional
prompt string required
input_field string required default: "text"
memory_key string required default: "messages"
history_turns integer required default: 20
recent_turns integer required default: 20
temperature number required default: 0.4
max_tokens integer optional
hidden_tools object required default: {}
tools array required default: []
branch_when_completed string required default: "completed"
branch_when_collecting string required default: "collecting"
memory_facts_schema object optional
memory_summary_config object optional

Default configuration

{
  "mode": "conversational",
  "prompt": "Greet the user and ask for the missing fields one at a time.",
  "input_field": "text",
  "memory_key": "messages",
  "history_turns": 20,
  "recent_turns": 20,
  "temperature": 0.4,
  "max_tokens": 800,
  "hidden_tools": {},
  "tools": [],
  "branch_when_completed": "completed",
  "branch_when_collecting": "collecting"
}

Emitted events

  • agent.reply

    Final agent reply with the generated text.

  • collect_data.streaming_update

    Extraction progress update for fields.

  • collect_data.streaming_skip

    A streaming chunk was skipped by configuration.

  • collect_data.streaming_pending

    Fields still pending extraction.

  • collect_data.streaming_failed_definitively

    Field extraction failed definitively.