Skip to main content
Moving an agent from another platform should not mean rebuilding it by hand. The importer reads your agents from Retell AI or ElevenLabs Agents with your API key for that platform, shows you exactly how each setting carries over, and creates the agents here when you are ready.

How it works

1

List your agents

POST /imports/agents with the source platform and your API key for it returns the agents on that account.
2

Dry run

POST /imports with the agent IDs returns a report for each agent. Nothing is created yet.
3

Import

Send the same request with "dryRun": false. The agents are created with their custom tools and knowledge bases, and the report lists what to check before switching traffic.
Your source API key is used only for read-only requests to that platform during the import request. It is never stored, logged, or returned. A key with read access to agents, tools, knowledge base and voices is enough.
ElevenLabs agents that live in a data-residency region are read from that region: pass "region": "eu", "in", "sg" or "us".

The report

Every source setting that is set gets one line, so nothing is dropped silently: Each agent also gets a checklist of the steps left to you, and a status: ready or ready_with_gaps on a dry run, imported or imported_with_gaps after importing, blocked when the agent cannot be imported (see below), or failed.

What carries over

Voices. The importer picks the matching Studio voice when one is available, and otherwise the closest voice by language and gender. Preview the voice before going live. No platform lets you export a cloned voice, so clone it again from a recording you own. Webhook payloads. An imported Retell webhook URL keeps Retell’s call_ended / call_analyzed payload shape, and ElevenLabs agents are set to the post_call_transcription shape, so your existing handler keeps working. Only the signature check changes: verify X-RevRing-Signature. See compatibility formats. Custom tool requests. ElevenLabs webhook tools are imported with Send Raw Request Body on, so your endpoint receives the same body shape. Retell tools send the arguments under arguments instead of args; update the handler or turn on Send Raw Request Body.

Not imported (yet)

  • Blocked agents: agents that run on your own language model server (custom LLM), and Retell Conversation Flow agents. ElevenLabs workflows import the main agent prompt only.
  • Secrets: secret header values and OAuth connections cannot be exported from the source. The tool is created with the header name and an empty value for you to fill in.
  • Phone numbers: connect your carrier numbers or SIP trunk after importing and assign them to the agent. See Telephony.
  • Other unsupported settings, such as pronunciation dictionaries or ambient sound, are listed in the report with the reason.

Importing again

Importing an agent you already imported updates the agent it created instead of making a copy: settings are re-applied, custom tools with the same name are updated, and knowledge bases already linked are left in place. Use this to pick up source changes while you test side by side.

Limits

  • Up to 25 agents per dry run, and up to 10 per import request.
  • Knowledge bases hold up to 50 sources each; larger sets are split across several knowledge bases linked to the agent.
  • Custom tool calls time out after 8 seconds. Longer source timeouts are reported.
See Import Agents and List Source Agents in the API reference.