Product
Live MonitorAppointment BookingSMS AgentWeb AgentOutbound & BatchCall TransferPost-Call AnalysisCustom FunctionsWebhooks & AutomationsBring Your Own Carrier
Compare
OverviewNixflex vs RetellNixflex vs VapiNixflex vs BlandNixflex vs Synthflow
Developers
DocumentationQuickstartAPI ReferenceTwilio & TelnyxCal.comGoogle CalendarGoHighLevelSlackZapier & Make
More
PricingSecurityContact usGet started free
NixflexDevelopersFunction Calling
FUNCTION CALLING

Your agent can talk.
Give it your API and it can act.

Let the agent call your own endpoints in the middle of a live call: look up the order, check the balance, write to the CRM, then say the answer out loud. You set the timeout, and a filler phrase keeps the line alive while your system is queried.

15 functions per numberTimeout up to 45sNo dead air
Tool round-trip
CallerIs my order shipped yet?
AgentLet me check that for you.
POSTyour-api.com/orders/lookup...
{ "status": "shipped", "eta": "Thursday" }
AgentYes, it shipped and arrives Thursday.
The agent covers the wait, so the line never goes quiet.
In short

Function calling lets a voice agent reach your own API during a live call. The agent pulls the arguments out of what the caller said, sends them to the URL you registered, waits for your JSON, and speaks the result back in conversation, so callers get real answers from your systems instead of a promise that someone will ring them back.

order lookupbalance checkCRM writestock levelaccount statusticket createquote pricemembership checkorder lookupbalance checkCRM writestock levelaccount statusticket createquote pricemembership check

HOW IT WORKS

How does the agent call your API?

1

Describe the function

You give it a name, a plain-English description of when to use it, and the URL to call. The description is what the agent reasons over, so write it the way you would brief a new receptionist.

2

The agent calls it mid-call

When the conversation needs that information, the agent pulls the arguments out of what the caller said and POSTs them to your endpoint, speaking your filler phrase while it waits.

3

Your JSON becomes speech

Whatever you return comes back into the conversation as spoken words. The caller gets a real answer from your system rather than a promise that somebody will call them back.

FUNCTION CONFIGURATION

What you set on each function

FieldWhat it does
nameHow the function is referred to internally.
descriptionPlain English telling the agent when to reach for it. This is the field that decides whether it gets called at the right moment.
urlYour endpoint. The agent POSTs the arguments it extracted from the conversation.
headersAnything your endpoint needs to authorise the request.
timeoutHow long to wait, from 1000ms to 45000ms. Defaults to 5000ms.
speak_duringThe line the agent says while your endpoint is being queried, so the caller never hears silence.

Functions live on the phone number, not the agent, so one template can serve many numbers that each call different systems.

BUILT FOR LIVE CONVERSATION

Why does it hold up on a real call?

Silence is the enemy, so we cover it

A tool call that blocks the audio is what makes a voice agent feel broken. Your filler phrase plays the moment the agent decides to call you, so the wait sounds like a person checking rather than a dropped line.

You own the timeout budget

Set it tight for a fast lookup or long for a slow legacy system, anywhere from one second to forty-five. Nothing hangs indefinitely, and a slow endpoint degrades the moment rather than the call.

Per number, not per agent

Each number reaches its own systems with its own credentials.

Facts come from the engine

Exact values are taken from your response, never improvised.

Booking uses the same loop

Calendar tools ride the identical path, so behaviour is consistent.

Fifteen per number

Enough for a real product, capped so the agent stays decisive.

THE PART TEAMS GET WRONG

Write the description like a briefing, not a label.

The description is the whole decision. The agent has no other way to judge whether this is the right moment to call you, so name the situation it belongs to and the information it needs. Keep what you return small as well: a handful of fields the agent can say out loud beats a large object it has to summarise, because everything you send back has to survive being spoken to somebody holding a phone.

QUESTIONS

Function calling, answered

What is function calling in a voice agent?+

Function calling lets the agent reach your own API during a live call. When the caller asks something only your systems know, the agent sends the details to your endpoint, waits for the JSON, and speaks the answer back in the conversation. Without it a voice agent can only talk; with it the agent can actually do the work.

What can a custom function actually do?+

Anything your API does. Common ones are looking up an order or a booking, checking a balance or a stock level, creating a ticket, quoting a price, and writing the call outcome into a CRM. If your endpoint can answer in a second or two, the agent can use it in conversation.

Does the caller hear silence while my API is called?+

Not if you set a filler phrase. Every function has a speak_during field: the agent says that line while your endpoint is being queried, so the line never goes quiet. Dead air during a tool call is the most common reason a voice agent feels broken, and this is the direct fix for it.

What happens if my endpoint is slow or fails?+

You set the timeout yourself, from one second up to forty-five, with five seconds as the default. If your endpoint does not answer in that window the agent stops waiting and handles the moment gracefully rather than leaving the caller hanging on an open line.

How many functions can one number have?+

Up to fifteen per number. They are configured per phone number rather than per agent, so one shared agent template can back many numbers while each number reaches a different set of endpoints with its own credentials.

How does the agent know which function to call?+

From the description you write. The agent matches the intent of what the caller said against your descriptions, so a specific one such as look up an order by its reference number works far better than a vague one such as get data.

Can the agent invent an answer instead of calling my API?+

The engine supplies the facts, not the model. Anything that has to be exact, such as a reference number or a time, comes from the tool result rather than from the model writing something plausible. That separation is deliberate: prompts are guidance, but a value that must be correct is never left to the model to imagine.

Do functions cost extra?+

No. Function calls are part of the conversation and included in the flat $0.08 per minute of voice. You pay for the minutes, not per tool call, and there is no SDK to install to use them.

Give your agent something to do.

Register one endpoint and the next caller gets an answer from your own systems.

Last updated August 2026