Variables and extraction

Variables carry data through a conversation. They arrive in two ways: you pass them in, or the agent captures them from what the caller says.

Passing variables in

When you start a call or session you can seed variables - a customer's name, an account tier, an order reference. They are available immediately, so the agent can open with them.

Use them in any prompt or message with {{name}}:

Greet {{customer_name}} by name and confirm you are calling about order {{order_id}}.

They can also be used in edge conditions, so a workflow can branch on data you already had before the caller said a word.

Capturing what the caller says

Extraction pulls structured values out of the conversation. Each field has a name and a hint telling the model what to look for:

FieldHint
full_nameThe caller's full name
callback_numberA phone number to call back on
preferred_dayThe day they want the appointment

Captured values become variables, so a later step can use {{full_name}}.

Extraction captures what was said - it does not make the agent ask. If a field is required, the prompt has to actually ask for it. This is the most common reason a field comes back empty.

Required fields and retries

A field can be required. If the conversation reaches the end of a step without it, the agent re-asks using retry_message, up to max_retries times, then moves on rather than trapping the caller in a loop.

Where captured values end up

Variables are stored on the session, visible in the dashboard, included in the end-of-call report, and delivered on the session.completed webhook - which is how they reach your CRM.

Variables and extraction · Glytos Docs