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
NixflexPhone Agent API
Phone agent API · webhook-first

Give an AI agent a phone number

Attach an agent to your own number over one REST API. It answers and places calls, and every call fires events to your server — call.started, call.in_progress, call.ended — the last with the full transcript and analysis. No polling.

Waiting+44 20 7946 0112
POSTyour-server.com/webhooks
call.startedinbound · +44 20 7946 0112
call.in_progressagent answering
call.endedduration 48s
{
  "transcript": "…",
  "summary": "Rescheduled to Thu 2pm",
  "sentiment": "positive"
}

Events come to you

The hard part of a phone agent is not making a phone ring — it is streaming audio with low latency, handling interruptions, and keeping transcripts tied to your systems. Nixflex runs all of that and hands you a clean, event-driven interface. You register a webhook, and the platform pushes each event the moment it happens, so your code stays reactive instead of looping to ask whether a call is finished.

The events you receive

call.started

A call has begun — inbound or outbound — with the number and agent involved.

call.in_progress

Live updates as the conversation runs, so you can react while the call is active.

call.ended

The call is over — payload carries the full transcript, a summary, sentiment and any extracted data.

Prefer to pull instead of receive? Every call is also available from GET /v1/calls with the same transcript and analysis.

The endpoints you build with

POST /v1/agents

Create the agent — its prompt, voice, language and behaviour.

POST /v1/phone-numbers

Import your own number and attach it to an agent to answer inbound calls.

POST /v1/calls/outbound

Place an outbound call, or a whole batch, from that agent and number.

GET /v1/calls

Pull any call with its transcript, summary, sentiment and extracted fields.

Let the agent reach into your systems

A phone agent is only as useful as the data it can act on. With custom functions, the agent makes an HTTP request to your API in the middle of a call — to look up an order, check an account, or trigger an action — and uses the JSON you return to keep talking. The engine supplies the exact facts that must be right, like a date or a callback number, rather than leaving the model to guess.

Why build your phone agent on Nixflex

Webhook-first

Push events for every call — no polling, no reconciling state by hand.

Inbound + outbound

One agent answers and places calls, with the same events and records for both.

Your carrier

Attach your own Twilio or Telnyx numbers; costs and routing stay on your account.

Custom functions

The agent calls your APIs mid-conversation and acts on the result.

Multi-tenant

One agent behind many numbers — a number per customer, from one API key.

Flat $0.08/min

Premium model included; no platform fee to start.

Comparing phone APIs? Nixflex is a modern alternative to Retell, Vapi and Bland. Compare them →

Frequently asked questions

What is a phone agent API?

A phone agent API lets you give an AI agent a phone number and control it from your own code. You attach a number to an agent, the agent answers and places calls, and your server receives events — when a call starts, while it runs, and when it ends with the transcript and analysis attached. It is the bridge between the phone network and your application.

How do I receive events from a call?

Register a webhook URL and Nixflex posts events to it as they happen — call.started when a call begins, updates while it runs, and call.ended with the full transcript, a summary, a sentiment score and any extracted data. It is push-based, so you never poll asking whether a call is done.

Can I handle both inbound and outbound?

Yes. Point a number at an agent to answer inbound calls, and place outbound calls — single or as a batch — from POST /v1/calls/outbound. Both run through the same agent and both deliver the same events and call records back to you.

How do I attach a number to an agent?

Import your own Twilio or Telnyx number through /v1/phone-numbers and attach it to an agent. One agent is a template that can sit behind many numbers, so you can give every one of your own customers their own number backed by the same agent.

Can the agent call my own systems during a call?

Yes. Custom functions let the agent make an HTTP request to your API mid-call — to look up an order, check an account, or trigger an action — and use the JSON you return to continue the conversation. That is how the agent works with live data instead of only what is in its prompt.

How do I authenticate requests?

Each request carries a bearer token of two halves joined by a colon: Authorization: Bearer nxf_xxx:nxfs_xxx. Keys are created and rotated through the API, so you can revoke access without changing anything about your agents or numbers.

What does the phone agent API cost?

A flat $0.08 per minute of voice, pay-as-you-go, with the premium model included. You bring your own carrier, so number and call charges stay on your account, and there is no monthly platform fee to start.

Give your first agent a number

Grab an API key, attach a number, and start receiving call events.