An agent is one object — config — plus the things you attach to it: tools, knowledge bases, MCP servers and handoff destinations. The config decides which channel the agent runs on, which models run it, what it says and what it is allowed to do. Everything else on Talqing points at an agent: a phone number, a web call token, a text conversation, a campaign. Here is a complete voice agent, exactly as POST /v1/agents takes it:
Only name is required. Everything else takes a default, and the defaults are a working voice agent on the Sarvam speech stack with OpenAI’s gpt-5.6-luna reasoning it. Replace the tool id with one from GET /v1/tools — an id that does not exist, or a tool that has never been published, is refused.

The parts of an agent

Identity and behaviour. name, channel, prompt, greeting. The prompt is where the agent’s behaviour lives — see prompting. The model stack. Either the sttllmtts cascade, or a single realtime speech-to-speech model that replaces all three. Valid provider and model pairs come from the catalog and nowhere else — see models. How it hears and speaks. language, turn_handling, background_audio, noise_cancellation, vision_input. Voice and video only. What it can do. tools, kb_ids, mcps, handoffs, and the three lifecycle hooks. Every tool must be published before it can be attached. What it knows about the person. vars and timezone feed the templating in the prompt, greeting and tools; conversation decides what a new call knows about earlier ones. What happens around the call. recording and analysis.

Writes replace the whole config

POST /v1/agents and PATCH /v1/agents/{agent_id} both take the complete config, not a patch. Any field you leave out reverts to its default.
Omitting tools detaches every tool. Omitting handoffs deletes every handoff destination. Omitting prompt replaces your prompt with the platform default. Always read the current config, change it, and send the result back.
The response of get, create and update is the same shape, so the config you read back is the config to send next time. Some fields are normalized on the way in — switching to text clears the speech stack, setting realtime clears the cascade — so read the response rather than assuming your input survived unchanged. See channels.

Draft and published

Every write lands on the draft. Live traffic runs the last published version, an immutable snapshot. Nothing you change reaches a caller until you publish, and publishing pins every attached tool to the version that is live at that moment. Full rules in versions; the checks publishing runs are in validation.

In the dashboard

Agents are listed at https://app.talqing.com/agents. The editor is at https://app.talqing.com/agents/detail?id=<agent id> and is organized the way this reference is: Channel, Prompt, Avatar (on video), Models, Vision, Tools, Handoffs, Integrations, Knowledge, Tuning, Past calls, Analysis, and a test call panel. A cost estimate and the CoPilot sit in a rail beside it.
Agents are regional. An agent created against https://api.in.talqing.com does not exist in https://api.us.talqing.com, and neither do its calls. The same token works in every region — see regions.

Config reference

Every top-level field of config. “Channels” is where the field has an effect; a field outside its channels is cleared or ignored on save. Sub-fields of the model slots are documented in models, model fallbacks and thinking and provider tools.

Next

Channels

Pick voice, video or text, and see what changes when you switch.

Prompting

Write a system prompt the agent can act on.

Models

The catalog, the two pipelines, and every model with its flags and price.