ElevenLabs Agents Platform API

Build, configure and manage Conversational AI agents, knowledge bases, tools, and conversations.

Operations 150

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /v1/convai/conversation/get_signed_url Get a signed agent URL via the legacy endpoint · Get Signed Url #
Ask an LLM
“Is the underscore get_signed_url path still usable for private agents?”
“What does the deprecated signed URL endpoint return for an authorized agent?”
Tell an agent
Use the legacy get_signed_url endpoint to sign a conversation URL for agent {agent_id}.
Call the deprecated signed URL route for agent {agent_id} in environment {environment}.
GET /v1/convai/conversation/token Get a WebRTC token for a live agent session · Get Webrtc Token #
Ask an LLM
“How can my app open a real-time WebRTC voice session with an agent?”
“Can I set the participant name on the WebRTC session token?”
Tell an agent
Get a WebRTC session token for agent {agent_id}.
Issue a WebRTC token for agent {agent_id} with participant name {participant_name}.
POST /v1/convai/twilio/outbound-call Place an outbound agent call through Twilio · Handle An Outbound Call Via Twilio #
Ask an LLM
“How do I have my voice agent dial a customer using a Twilio number?”
“Can a Twilio outbound agent call be recorded?”
Tell an agent
Have agent {agent_id} call {to_number} from Twilio number {agent_phone_number_id}.
Place a recorded Twilio call to {to_number} with agent {agent_id} using phone number {agent_phone_number_id}.
POST /v1/convai/twilio/register-call Register a Twilio call and get TwiML back · Register A Twilio Call And Return Twiml #
Ask an LLM
“What TwiML do I return to connect a Twilio call I manage myself to an agent?”
“Can I register an inbound Twilio call with an agent and get the connecting TwiML?”
Tell an agent
Register the Twilio call from {from_number} to {to_number} with agent {agent_id} and return TwiML.
Register a {direction} Twilio call between {from_number} and {to_number} for agent {agent_id}.
POST /v1/convai/exotel/outbound-call Place an outbound agent call through Exotel · Handle An Outbound Call Via Exotel #
Ask an LLM
“How can my agent dial out using an Exotel phone number?”
“Which fields does an Exotel outbound agent call need?”
Tell an agent
Call {to_number} via Exotel with agent {agent_id} from number {agent_phone_number_id}.
Start an Exotel outbound call from agent {agent_id} to {to_number} on {agent_phone_number_id}.
POST /v1/convai/whatsapp/outbound-call Place an outbound agent voice call on WhatsApp · Make An Outbound Call Via Whatsapp #
Ask an LLM
“Can my agent call a customer over WhatsApp voice?”
“Which permission request template is needed before an agent calls on WhatsApp?”
Tell an agent
Voice-call WhatsApp user {whatsapp_user_id} from {whatsapp_phone_number_id} with agent {agent_id}.
Ring WhatsApp user {whatsapp_user_id} with agent {agent_id}.
POST /v1/convai/whatsapp/outbound-message Send a WhatsApp template message from an agent · Send An Outbound Message Via Whatsapp #
Ask an LLM
“How do I have an agent start a WhatsApp chat with a template message?”
“Can I fill template parameters when my agent messages someone on WhatsApp?”
Tell an agent
Send WhatsApp template {template_name} to user {whatsapp_user_id} for agent {agent_id} with params {template_params}.
Message WhatsApp user {whatsapp_user_id} using template {template_name}.
POST /v1/convai/agents/create Create a conversational agent · Create Agent #
Ask an LLM
“How do I create a new voice agent from a config object?”
“Can I turn on versioning when I first create an agent?”
Tell an agent
Create an agent named {name} with conversation config {conversation_config}.
Build a new agent tagged {tags} from config {conversation_config}.
GET /v1/convai/agents/summaries Get summaries for several agents at once · Get Agent Summaries #
Ask an LLM
“Can I fetch short summaries for a batch of agent IDs in one call?”
“What summary info comes back when I pass a list of agents?”
Tell an agent
Get summaries for agents {agent_ids}.
Summarize this set of agents: {agent_ids}.
GET /v1/convai/agents/{agent_id} Get an agent's configuration · Get Agent #
Ask an LLM
“How can I see the full config of one of my agents?”
“Can I read an agent's config at a specific version or branch?”
Tell an agent
Show the configuration for agent {agent_id}.
Get agent {agent_id} config as of version {version_id}.
PATCH /v1/convai/agents/{agent_id} Update an agent's settings · Patches An Agent Settings #
Ask an LLM
“How do I change the prompt or voice settings of an existing agent?”
“Can I add a version description when I update an agent?”
Tell an agent
Rename agent {agent_id} to {name}.
Update agent {agent_id} conversation config to {conversation_config} on branch {branch_id}.
DELETE /v1/convai/agents/{agent_id} Delete an agent · Delete Agent #
Ask an LLM
“How do I permanently remove an agent I no longer need?”
“What happens when I delete a conversational agent?”
Tell an agent destructive · confirm first
Delete agent {agent_id}.
Remove the agent {agent_id} from my account.
GET /v1/convai/agents/{agent_id}/widget Get an agent's embeddable widget config · Get Agent Widget Config #
Ask an LLM
“What widget settings are used when I embed an agent on my website?”
“Can I fetch the widget config with a conversation signature?”
Tell an agent
Get the widget configuration for agent {agent_id}.
Fetch the embed widget config of agent {agent_id} using signature {conversation_signature}.
POST /v1/convai/agents/{agent_id}/avatar Set an agent's widget avatar · Post Agent Avatar #
Ask an LLM
“How do I upload a profile picture for my agent's widget?”
“Can I change the avatar shown in the embedded agent widget?”
Tell an agent
Set the avatar of agent {agent_id} to {avatar_file}.
Upload {avatar_file} as the widget image for agent {agent_id}.
POST /v1/convai/agents/{agent_id}/hold-audio Upload custom hold music for queued callers · Post Agent Hold Audio #
Ask an LLM
“Can callers waiting in my agent's queue hear my own hold music?”
“Does uploading new hold audio replace the previous clip?”
Tell an agent
Set {hold_audio_file} as the hold audio for agent {agent_id}.
Replace the waiting-queue hold clip on agent {agent_id} with {hold_audio_file}.
DELETE /v1/convai/agents/{agent_id}/hold-audio Remove an agent's custom hold audio · Delete Agent Hold Audio #
Ask an LLM
“How do I go back to the default hold tone for queued callers?”
“Can I remove the custom hold clip I uploaded for an agent?”
Tell an agent destructive · confirm first
Remove the custom hold audio from agent {agent_id}.
Restore the default hold tone on agent {agent_id}.
GET /v1/convai/agents List my agents · List Agents #
Ask an LLM
“Which conversational agents do I have in my workspace?”
“Can I search my agents by name or include archived ones?”
Tell an agent
List all my agents.
Find agents matching {search}.
GET /v1/convai/agent/{agent_id}/knowledge-base/size Get the page count of an agent's knowledge base · Returns The Size Of The Agent'S Knowledge Base #
Ask an LLM
“How many pages are in my agent's knowledge base?”
“What's the size of the knowledge attached to one agent?”
Tell an agent
Count knowledge base pages for agent {agent_id}.
Tell me how big agent {agent_id}'s knowledge base is.
POST /v1/convai/agent/{agent_id}/llm-usage/calculate Estimate LLM token usage for a specific agent · Calculate Expected Llm Usage For An Agent #
Ask an LLM
“How many LLM tokens will one of my agents likely use?”
“Does enabling RAG change the expected token count for my agent?”
Tell an agent
Estimate LLM token usage for agent {agent_id}.
Calculate expected tokens for agent {agent_id} with a {prompt_length} character prompt and {number_of_pages} knowledge pages.
POST /v1/convai/agents/{agent_id}/duplicate Duplicate an existing agent · Duplicate Agent #
Ask an LLM
“Can I clone an agent to experiment without touching the original?”
“How do I copy an agent and give the copy a new name?”
Tell an agent
Duplicate agent {agent_id}.
Clone agent {agent_id} as {name}.
POST /v1/convai/agents/{agent_id}/simulate-conversation Simulate a conversation with an agent (deprecated) · Simulates A Conversation #
Ask an LLM
“Can I run a whole conversation between my agent and a simulated user and get the result?”
“Is there a turn limit on a simulated agent conversation?”
Tell an agent
Simulate a conversation with agent {agent_id} using spec {simulation_specification}.
Run a simulated chat on agent {agent_id} capped at {new_turns_limit} turns with spec {simulation_specification}.
POST /v1/convai/agents/{agent_id}/simulate-conversation/stream Stream a simulated agent conversation (deprecated) · Simulates A Conversation (Stream) #
Ask an LLM
“Can I watch a simulated user conversation with my agent stream in as it happens?”
“Is there a streaming version of the agent conversation simulator?”
Tell an agent
Stream a simulated conversation for agent {agent_id} using spec {simulation_specification}.
Stream the simulation of agent {agent_id} with extra evaluation criteria {extra_evaluation_criteria} and spec {simulation_specification}.
POST /v1/convai/agent-testing/folders Create a folder for agent tests · Create Agent Test Folder #
Ask an LLM
“How do I organize my agent tests into folders?”
“Can I nest a new test folder inside another one?”
Tell an agent
Create an agent test folder named {name}.
Make test folder {name} inside folder {parent_folder_id}.
GET /v1/convai/agent-testing/folders/{folder_id} Get an agent test folder · Get Agent Test Folder By Id #
Ask an LLM
“What's the full path of one of my agent test folders?”
“Can I look up a test folder by its ID?”
Tell an agent
Get agent test folder {folder_id}.
Show the folder path of test folder {folder_id}.
PATCH /v1/convai/agent-testing/folders/{folder_id} Rename an agent test folder · Update Agent Test Folder #
Ask an LLM
“Can I rename one of my agent test folders?”
“What can I change on an existing test folder?”
Tell an agent
Rename test folder {folder_id} to {name}.
Change the name of agent test folder {folder_id} to {name}.
DELETE /v1/convai/agent-testing/folders/{folder_id} Delete an agent test folder · Delete Agent Test Folder #
Ask an LLM
“How do I delete a test folder that still has tests in it?”
“Can I remove an empty agent test folder?”
Tell an agent destructive · confirm first
Delete test folder {folder_id}.
Force-delete test folder {folder_id} and everything in it.
POST /v1/convai/agent-testing/bulk-move Move several agent tests to another folder · Bulk Move Tests To Folder #
Ask an LLM
“How do I move a batch of agent tests into a different folder?”
“Can I move folders and tests together in one request?”
Tell an agent
Move tests {entity_ids} into folder {move_to}.
Bulk move {entity_ids} to the root test folder.
GET /v1/convai/conversations List my agents' conversations · Get Conversations #
Ask an LLM
“Which conversations have my agents had recently?”
“Can I filter agent conversations by success, duration or rating?”
Tell an agent
List conversations for agent {agent_id}.
Show unsuccessful conversations started after {call_start_after_unix}.
GET /v1/convai/users List distinct users who talked to my agents · Get Conversation Users #
Ask an LLM
“Who are the unique end users that have spoken with my agent?”
“Can I search the people my agent has talked to within a date range?”
Tell an agent
List distinct conversation users for agent {agent_id}.
Find conversation users matching {search}.
GET /v1/convai/conversations/resolve Resolve a Slack or Zendesk URL to a conversation · Resolve Conversation Reference #
Ask an LLM
“Which agent conversation came from this Zendesk ticket?”
“Can I turn a Slack message URL into the matching conversation ID?”
Tell an agent
Resolve {reference} to a conversation for agent {agent_id}.
Find the conversation ID behind Slack link {reference} for agent {agent_id}.
GET /v1/convai/conversations/{conversation_id} Get a conversation's full details · Get Conversation Details #
Ask an LLM
“How do I pull the full transcript and metadata of one agent conversation?”
“Can I choose the format of a conversation's details?”
Tell an agent
Get the details of conversation {conversation_id}.
Show the full transcript of conversation {conversation_id} in {format} format.
DELETE /v1/convai/conversations/{conversation_id} Delete a conversation · Delete Conversation #
Ask an LLM
“How do I delete a conversation record from my agent's history?”
“Can I permanently remove a single agent conversation?”
Tell an agent destructive · confirm first
Delete conversation {conversation_id}.
Erase agent conversation {conversation_id} from history.
GET /v1/convai/conversations/{conversation_id}/summary Get a lightweight summary of a conversation · Get Conversation Summary #
Ask an LLM
“What's the title and short summary of one agent call, without the whole transcript?”
“Was a given conversation successful, at a glance?”
Tell an agent
Summarize conversation {conversation_id}.
Get a quick summary of conversation {conversation_id} with up to {max_messages} messages.
GET /v1/convai/conversations/{conversation_id}/sip-messages Get SIP messages for a conversation's call · Get Sip Messages For A Conversation #
Ask an LLM
“Can I see the SIP signaling for a specific agent phone call?”
“How do I debug the SIP exchange behind one conversation?”
Tell an agent
Get SIP messages for conversation {conversation_id}.
Show the SIP log of conversation {conversation_id}, {page_size} per page.
GET /v1/convai/conversations/{conversation_id}/audio Download a conversation's audio recording · Get Conversation Audio #
Ask an LLM
“How do I download the recording of an agent conversation?”
“Is the audio of each conversation available to listen back to?”
Tell an agent
Download the audio of conversation {conversation_id}.
Get the call recording for conversation {conversation_id}.
POST /v1/convai/conversations/{conversation_id}/feedback Send feedback on a conversation · Send Conversation Feedback #
Ask an LLM
“Can I mark an agent conversation as good or bad?”
“How do I submit feedback for a specific conversation?”
Tell an agent
Send feedback {feedback} for conversation {conversation_id}.
Rate conversation {conversation_id} as {feedback}.
GET /v1/convai/conversations/messages/text-search Keyword search across conversation transcripts · Text Search Conversation Messages #
Ask an LLM
“Can I find every conversation where a caller said a specific phrase?”
“Does transcript keyword search tolerate typos with fuzzy matching?”
Tell an agent
Search conversation transcripts for the words {text_query}.
Full-text search agent {agent_id}'s transcripts for {text_query}.
GET /v1/convai/conversations/messages/smart-search Semantic search across conversation transcripts · Smart Search Conversation Messages #
Ask an LLM
“Can I find transcript messages by meaning rather than exact words?”
“Which conversations talk about a topic even if they phrase it differently?”
Tell an agent
Semantically search transcripts for messages about {text_query}.
Smart search agent {agent_id}'s conversations for intent like {text_query}.
POST /v1/convai/conversations/{conversation_id}/tags Tag a conversation · Assign Conversation Tags #
Ask an LLM
“How do I label a conversation with one or more of my workspace tags?”
“What happens if I assign a tag that's already on the conversation?”
Tell an agent
Add tags {tag_ids} to conversation {conversation_id}.
Label conversation {conversation_id} with tag {tag_ids}.
DELETE /v1/convai/conversations/{conversation_id}/tags/{tag_id} Remove a tag from a conversation · Unassign Conversation Tag #
Ask an LLM
“Can I take a single tag off one conversation without deleting the tag?”
“How do I untag a conversation?”
Tell an agent destructive · confirm first
Remove tag {tag_id} from conversation {conversation_id}.
Untag conversation {conversation_id}, dropping {tag_id}.
GET /v1/convai/tags List the workspace's conversation tags · List Conversation Tags #
Ask an LLM
“Which conversation tags exist in my workspace?”
“What labels are available for tagging agent calls, newest first?”
Tell an agent
List all conversation tags in my workspace.
Show the {page_size} most recently created conversation tags.
POST /v1/convai/tags Create a conversation tag · Create Conversation Tag #
Ask an LLM
“How do I create a new label for categorizing agent conversations?”
“Can a conversation tag have a description as well as a title?”
Tell an agent
Create a conversation tag titled {title}.
Add a new tag {title} described as {description}.
GET /v1/convai/tags/{tag_id} Get a conversation tag · Get Conversation Tag #
Ask an LLM
“What's the title and description of a particular conversation tag?”
“Can I look up one conversation tag by ID?”
Tell an agent
Get conversation tag {tag_id}.
Show the details of tag {tag_id}.
PATCH /v1/convai/tags/{tag_id} Edit a conversation tag · Update Conversation Tag #
Ask an LLM
“Can I rename a conversation tag or change its description?”
“Who can edit an existing conversation tag?”
Tell an agent
Rename conversation tag {tag_id} to {title}.
Change the description of tag {tag_id} to {description}.
DELETE /v1/convai/tags/{tag_id} Delete a conversation tag · Delete Conversation Tag #
Ask an LLM
“Who is allowed to delete a conversation tag?”
“How do I get rid of a tag from the workspace entirely?”
Tell an agent destructive · confirm first
Delete conversation tag {tag_id}.
Remove tag {tag_id} from the workspace for good.
POST /v1/convai/phone-numbers Import a phone number for agents · Import Phone Number #
Ask an LLM
“How do I bring my existing Twilio, Exotel or SIP trunk number onto the agents platform?”
“Can I import a SIP trunk number so an agent can answer it?”
Tell an agent
Import my Twilio phone number for use with agents.
Add a SIP trunk phone number to the workspace.
GET /v1/convai/phone-numbers List phone numbers connected to agents · List Phone Numbers #
Ask an LLM
“Which phone numbers have I imported for my agents?”
“Can I list only the numbers from one telephony provider or assigned to one agent?”
Tell an agent
List all my agent phone numbers.
Show phone numbers from provider {provider} assigned to agent {agent_id}.
GET /v1/convai/phone-numbers/{phone_number_id} Get a phone number's details · Get Phone Number #
Ask an LLM
“Which agent is a particular phone number assigned to?”
“What configuration does one imported number have?”
Tell an agent
Get details for phone number {phone_number_id}.
Show the config of number {phone_number_id}.
DELETE /v1/convai/phone-numbers/{phone_number_id} Delete an imported phone number · Delete Phone Number #
Ask an LLM
“How do I remove a phone number from my agents setup?”
“Can I delete a number I imported by mistake?”
Tell an agent destructive · confirm first
Delete phone number {phone_number_id}.
Remove imported number {phone_number_id} from the workspace.
PATCH /v1/convai/phone-numbers/{phone_number_id} Reassign or relabel a phone number · Update Phone Number #
Ask an LLM
“How do I point a phone number at a different agent?”
“Can I turn on SIP message storage or change trunk settings on a number?”
Tell an agent
Assign phone number {phone_number_id} to agent {agent_id}.
Relabel number {phone_number_id} as {label}.
GET /v1/convai/phone-numbers/{phone_number_id}/sip-messages Get SIP messages for a phone number · Get Sip Messages For A Phone Number #
Ask an LLM
“Can I review the SIP traffic across all calls on one phone number?”
“Where do I see SIP logs for a trunk number rather than a single call?”
Tell an agent
List SIP messages for phone number {phone_number_id}.
Page through SIP logs on number {phone_number_id}, {page_size} at a time.
POST /v1/convai/llm-usage/calculate Compare expected cost across LLMs · Calculate Expected Llm Usage #
Ask an LLM
“Which LLM would be cheapest for an agent with my prompt size and knowledge base?”
“What's the expected cost per model given a prompt length and page count?”
Tell an agent
Compare LLM costs for a {prompt_length} character prompt, {number_of_pages} pages, with RAG set to {rag_enabled}.
Price out every model for a prompt of {prompt_length} characters over {number_of_pages} pages and RAG {rag_enabled}.
GET /v1/convai/llm/list List LLMs agents can use · List Available Llms #
Ask an LLM
“Which language models can power my agents in this region?”
“Are any of the agent LLMs deprecated?”
Tell an agent
List the LLMs available for agents.
Show agent LLM options with their capabilities and deprecation status.
POST /v1/convai/conversations/{conversation_id}/files Upload an image or PDF into a conversation · Upload File #
Ask an LLM
“Can users share a PDF or image with the agent during a conversation?”
“How do I get a file ID to reference an upload in a conversation?”
Tell an agent
Upload {file} to conversation {conversation_id}.
Attach the PDF {file} to ongoing conversation {conversation_id}.
DELETE /v1/convai/conversations/{conversation_id}/files/{file_id} Remove an unused file from a conversation · Delete File Upload #
Ask an LLM
“Can I take back a file upload before the agent has used it?”
“Why can't I remove a file that's already been used in the conversation?”
Tell an agent destructive · confirm first
Remove file {file_id} from conversation {conversation_id}.
Cancel upload {file_id} in conversation {conversation_id}.
GET /v1/convai/analytics/live-count Count conversations happening right now · Get Live Count #
Ask an LLM
“How many conversations are my agents handling at this moment?”
“Can I see the live call count for just one agent?”
Tell an agent
Show how many conversations are live right now.
Get the live conversation count for agent {agent_id}.
GET /v1/convai/knowledge-base/summaries Get summaries for several knowledge base documents · Get Knowledge Base Summaries By Ids #
Ask an LLM
“Can I fetch summaries of multiple knowledge base documents by ID in one go?”
“What summary data comes back for a batch of knowledge documents?”
Tell an agent
Get summaries for knowledge base documents {document_ids}.
Summarize these knowledge docs: {document_ids}.
POST /v1/convai/knowledge-base Add a file or webpage to the knowledge base · Add To Knowledge Base #
Ask an LLM
“Is there one endpoint that takes either a file upload or a webpage URL for the knowledge base?”
“Can I add a document to the shared knowledge base and attach it to an agent at once?”
Tell an agent
Add webpage {url} to the shared knowledge base for agent {agent_id}.
Upload {file} to the shared knowledge base as {name}.
GET /v1/convai/knowledge-base List knowledge base documents · Get Knowledge Base List #
Ask an LLM
“Which documents are in my agents' knowledge base?”
“Can I list knowledge documents inside one folder, folders first?”
Tell an agent
List my knowledge base documents.
List knowledge base items named like {search} in folder {parent_folder_id}.
POST /v1/convai/knowledge-base/url Create a knowledge document by scraping a URL · Create Url Document #
Ask an LLM
“Can I turn a webpage into a knowledge document that auto-syncs?”
“How often can a scraped URL document re-sync with its source?”
Tell an agent
Scrape {url} into a new knowledge document.
Create an auto-syncing URL document from {url} refreshed every {minimum_frequency_days} days.
POST /v1/convai/knowledge-base/file Create a knowledge document from a file · Create File Document #
Ask an LLM
“How do I upload a PDF as a knowledge base document?”
“Can I place an uploaded file document in a specific knowledge folder?”
Tell an agent
Create a knowledge document from file {file}.
Upload {file} as knowledge document {name} into folder {parent_folder_id}.
POST /v1/convai/knowledge-base/text Create a knowledge document from pasted text · Create Text Document #
Ask an LLM
“Can I add plain text to the knowledge base without uploading a file?”
“What's the way to create a knowledge document straight from a text snippet?”
Tell an agent
Create a knowledge document containing {text}.
Save this text as knowledge document {name}: {text}.
PATCH /v1/convai/knowledge-base/{documentation_id} Edit a knowledge document's name or content · Update Document #
Ask an LLM
“Can I edit the text of a knowledge document directly?”
“How do I rename a knowledge base document?”
Tell an agent
Rename knowledge document {documentation_id} to {name}.
Replace the content of knowledge document {documentation_id} with {content}.
GET /v1/convai/knowledge-base/{documentation_id} Get a knowledge base document's details · Get Documentation From Knowledge Base #
Ask an LLM
“What metadata does a specific knowledge base document have?”
“Can I look up one knowledge document in the context of a given agent?”
Tell an agent
Get knowledge base document {documentation_id}.
Show details of knowledge doc {documentation_id} for agent {agent_id}.
DELETE /v1/convai/knowledge-base/{documentation_id} Delete a knowledge document or folder · Delete Knowledge Base Document Or Folder #
Ask an LLM
“How do I delete one knowledge document or folder?”
“Can I delete a knowledge document even if agents still depend on it?”
Tell an agent destructive · confirm first
Delete knowledge base document {documentation_id}.
Force-delete knowledge folder {documentation_id}.
PATCH /v1/convai/knowledge-base/{documentation_id}/update-file Replace a file document's source file · Update File Document #
Ask an LLM
“How do I swap in a newer version of the PDF behind a knowledge document?”
“Will uploading a new source file overwrite my manual edits to the document?”
Tell an agent
Replace the source file of document {documentation_id} with {file}.
Upload {file} as the new version of file document {documentation_id}.
POST /v1/convai/knowledge-base/rag-index Compute RAG indexes for many documents at once · Compute Rag Indexes In Batch #
Ask an LLM
“Can I index a batch of knowledge documents for RAG in one request?”
“What's the maximum number of documents per batch RAG indexing call?”
Tell an agent
Compute RAG indexes for these documents: {items}.
Batch index {items} for retrieval.
GET /v1/convai/knowledge-base/rag-index Get total RAG index size across the knowledge base · Get Rag Index Overview #
Ask an LLM
“How much storage do all my RAG indexes use in total?”
“Can I see an overview of RAG indexing for the knowledge base?”
Tell an agent
Show the RAG index overview for my knowledge base.
Report the total size of my RAG indexes.
POST /v1/convai/knowledge-base/{documentation_id}/refresh Re-fetch a URL document from its source · Refresh Url Document Content #
Ask an LLM
“How do I pull the latest content for a knowledge document scraped from a webpage?”
“Can I manually refresh a URL document instead of waiting for auto-sync?”
Tell an agent
Refresh URL document {documentation_id} from its source page.
Re-scrape the webpage behind knowledge doc {documentation_id}.
POST /v1/convai/knowledge-base/{documentation_id}/rag-index Index one document for RAG or check its status · Compute Rag Index #
Ask an LLM
“How do I trigger RAG indexing for a single knowledge document?”
“Is my document already indexed for a given embedding model?”
Tell an agent
Index document {documentation_id} with model {model}.
Check the {model} RAG index status of document {documentation_id}.
GET /v1/convai/knowledge-base/{documentation_id}/rag-index List a document's RAG indexes · Get Rag Indexes Of The Specified Knowledgebase Document #
Ask an LLM
“Which RAG indexes exist for one knowledge document?”
“Can I see what embedding models a document has been indexed with?”
Tell an agent
List RAG indexes for document {documentation_id}.
Show every retrieval index built on knowledge doc {documentation_id}.
DELETE /v1/convai/knowledge-base/{documentation_id}/rag-index/{rag_index_id} Delete a document's RAG index · Delete Rag Index #
Ask an LLM
“Can I drop one RAG index from a knowledge document without deleting the document?”
“How do I remove an outdated retrieval index?”
Tell an agent destructive · confirm first
Delete RAG index {rag_index_id} on document {documentation_id}.
Remove index {rag_index_id} from knowledge doc {documentation_id}.
GET /v1/convai/knowledge-base/search Search inside knowledge base content · Search Knowledge Base Content #
Ask an LLM
“Which knowledge documents mention a particular term?”
“Can I fuzzy search the text of every knowledge document?”
Tell an agent
Search my knowledge base content for {query}.
Find knowledge documents of type {types} that mention {query}.
POST /v1/convai/agents/{agent_id}/knowledge-base/rag-query Preview what an agent's RAG retrieves for a query · Query Agent Knowledge Base Rag #
Ask an LLM
“What chunks would my agent pull from its knowledge base for a given question?”
“Can I test agent retrieval without starting a conversation?”
Tell an agent
Run agent {agent_id}'s RAG retrieval for {query}.
Show the top {max_retrieved_rag_chunks_count} chunks agent {agent_id} would retrieve for {query}.
GET /v1/convai/knowledge-base/{documentation_id}/dependent-agents List agents using a knowledge document · Get Dependent Agents List #
Ask an LLM
“Which agents rely on this one knowledge document?”
“Before I delete a document, how can I see what depends on it?”
Tell an agent
List agents that depend on knowledge document {documentation_id}.
Show {dependent_type} dependents of document {documentation_id}.
POST /v1/convai/knowledge-base/dependent-agents List agents using any of several documents · Get Dependent Agents For Multiple Documents #
Ask an LLM
“Which agents depend on any document in a set of knowledge docs?”
“Can I check dependents for many knowledge documents in one request?”
Tell an agent
Find agents depending on any of documents {document_ids}.
Check which agents use knowledge docs {document_ids}.
GET /v1/convai/knowledge-base/{documentation_id}/content Get the full text of a knowledge document · Get Document Content #
Ask an LLM
“How do I read the entire content stored in a knowledge document?”
“Can I export what my agent actually knows from one document?”
Tell an agent
Get the full content of knowledge document {documentation_id}.
Print everything stored in knowledge doc {documentation_id}.
GET /v1/convai/knowledge-base/{documentation_id}/source-file-url Get a download link for a document's original file · Get Document Source File Url #
Ask an LLM
“Can I download the original PDF I uploaded to the knowledge base?”
“Where do I get a signed link to a file document's source?”
Tell an agent
Get a download URL for the source file of document {documentation_id}.
Sign a link to the original upload behind knowledge doc {documentation_id}.
GET /v1/convai/knowledge-base/{documentation_id}/chunk/{chunk_id} Get one RAG chunk of a knowledge document · Get Documentation Chunk From Knowledge Base #
Ask an LLM
“What text is in a specific RAG chunk my agent retrieved?”
“Can I inspect a single chunk of a document for a given embedding model?”
Tell an agent
Get chunk {chunk_id} of document {documentation_id}.
Show chunk {chunk_id} from doc {documentation_id} under embedding model {embedding_model}.
GET /v1/convai/knowledge-base/{documentation_id}/chunks List all RAG chunks of a knowledge document · Get All Rag Chunks For A Document #
Ask an LLM
“How was my document split into chunks for retrieval?”
“Can I page through every chunk of a document for one embedding model?”
Tell an agent
List all {embedding_model} chunks of document {documentation_id}.
Page through RAG chunks of knowledge doc {documentation_id} for model {embedding_model}, {page_size} at a time.
POST /v1/convai/knowledge-base/bulk-delete Delete many knowledge documents at once · Bulk Delete Knowledge Base Documents #
Ask an LLM
“Can I delete a batch of knowledge documents and folders in one call?”
“If one document in a bulk delete fails, do the others still go through?”
Tell an agent destructive · confirm first
Bulk delete knowledge documents {document_ids}.
Remove all of these knowledge items at once, forcing past dependents: {document_ids}.
GET /v1/convai/agents/{agent_id}/topics See the topics an agent's callers talk about · Get Agent Conversation Topics #
Ask an LLM
“What topics come up most in conversations with my agent?”
“Can I see discovered conversation topics for a specific time window?”
Tell an agent
Show the latest conversation topics for agent {agent_id}.
Get agent {agent_id} topics between {from_unix_secs} and {to_unix_secs}.
POST /v1/convai/tools Add a tool agents can call · Add Tool #
Ask an LLM
“How do I give my agents a new webhook or client tool?”
“Can I include mock responses when I create a tool?”
Tell an agent
Add a workspace tool with config {tool_config}.
Create a tool from {tool_config} with response mocks {response_mocks}.
GET /v1/convai/tools List agent tools in the workspace · Get Tools #
Ask an LLM
“Which tools have been set up for agents in my workspace?”
“Can I filter workspace tools by type or by who created them?”
Tell an agent
List all agent tools in my workspace.
Find tools of type {types} matching {search}.
GET /v1/convai/tools/{tool_id} Get an agent tool's definition · Get Tool #
Ask an LLM
“What's the configuration of a specific agent tool?”
“Can I view a tool as it's set up in a particular environment?”
Tell an agent
Get tool {tool_id}.
Show tool {tool_id} as configured for environment {environment}.
PATCH /v1/convai/tools/{tool_id} Update an agent tool's config · Update Tool #
Ask an LLM
“How do I change the URL or schema of a tool I already created?”
“Can I update the mock responses on an existing tool?”
Tell an agent
Update tool {tool_id} with config {tool_config}.
Replace tool {tool_id}'s definition with {tool_config} and mocks {response_mocks}.
DELETE /v1/convai/tools/{tool_id} Delete an agent tool · Delete Tool #
Ask an LLM
“How do I remove a tool from the workspace?”
“Can I delete a tool that agents are still using?”
Tell an agent destructive · confirm first
Delete tool {tool_id}.
Force-remove workspace tool {tool_id} even though agents depend on it.
GET /v1/convai/tools/{tool_id}/dependent-agents List agents using a tool · Get Dependent Agents List #
Ask an LLM
“Which agents are wired up to use a particular tool?”
“What breaks if I change this tool?”
Tell an agent
List agents that depend on tool {tool_id}.
Show which agents call tool {tool_id}.
GET /v1/convai/tools/{tool_id}/executions List a tool's execution history · Get Tool Executions #
Ask an LLM
“How often has my agent tool been called, and did any calls error?”
“Can I see a tool's executions for one agent in a time range?”
Tell an agent
List executions of tool {tool_id}.
Show failed runs of tool {tool_id} by agent {agent_id} since {start_time}.
GET /v1/convai/settings Get workspace agent platform settings · Get Convai Settings #
Ask an LLM
“What webhook and retention settings apply to agents in my workspace?”
“Is MCP server use enabled for my agents workspace?”
Tell an agent
Show my workspace's agent platform settings.
Get the conversational AI settings for this workspace.
PATCH /v1/convai/settings Update workspace agent platform settings · Update Convai Settings #
Ask an LLM
“How do I set the webhook that receives conversation initiation data?”
“Can I change how long RAG data and conversation embeddings are retained?”
Tell an agent
Set RAG retention for the workspace to {rag_retention_period_days} days.
Update workspace agent webhooks to {webhooks}.
GET /v1/convai/settings/dashboard Get the agents dashboard chart layout · Get Convai Dashboard Settings #
Ask an LLM
“Which charts are configured on my agents analytics dashboard?”
“Can I read the dashboard settings for the workspace?”
Tell an agent
Show my agents dashboard settings.
List the charts on the workspace agents dashboard.
PATCH /v1/convai/settings/dashboard Change the agents dashboard charts · Update Convai Dashboard Settings #
Ask an LLM
“How do I customize which charts show on the agents dashboard?”
“Can I reorder or replace dashboard charts through the API?”
Tell an agent
Set the agents dashboard charts to {charts}.
Update the workspace dashboard layout with charts {charts}.
POST /v1/convai/secrets Store a new workspace secret · Create Convai Workspace Secret #
Ask an LLM
“How do I store an API token so my agent tools can use it securely?”
“What fields are needed to create a workspace secret?”
Tell an agent
Create a {type} secret named {name} with value {value}.
Save secret {name} = {value} of type {type} to the workspace.
GET /v1/convai/secrets List workspace secrets for agents · Get Convai Workspace Secrets #
Ask an LLM
“Which secrets are stored for my agents' tools?”
“Can I search workspace secrets by name?”
Tell an agent
List my workspace secrets.
Find workspace secrets matching {search}.
GET /v1/convai/secrets/{secret_id} Get a workspace secret · Get Convai Workspace Secret #
Ask an LLM
“Can I look up one workspace secret's details by ID?”
“What does the API return about a stored secret?”
Tell an agent
Get workspace secret {secret_id}.
Show secret {secret_id}.
DELETE /v1/convai/secrets/{secret_id} Delete an unused workspace secret · Delete Convai Workspace Secret #
Ask an LLM
“How do I delete a secret my agents no longer use?”
“Why can't I delete a secret that's still in use?”
Tell an agent destructive · confirm first
Delete workspace secret {secret_id}.
Remove the unused secret {secret_id}.
PATCH /v1/convai/secrets/{secret_id} Rotate or edit a workspace secret · Update Convai Workspace Secret #
Ask an LLM
“How do I rotate the value of an existing workspace secret?”
“Can I rename a secret without creating a new one?”
Tell an agent
Rotate secret {secret_id} to new value {value}, keeping name {name} and type {type}.
Update secret {secret_id}: name {name}, type {type}, value {value}.
GET /v1/convai/secrets/{secret_id}/dependencies/{resource_type} List resources that use a secret · Get Secret Dependencies By Type #
Ask an LLM
“Which tools or agents reference a given secret?”
“Can I see a secret's dependents filtered by resource type?”
Tell an agent
List {resource_type} resources that depend on secret {secret_id}.
Show what uses secret {secret_id} among {resource_type}.
POST /v1/convai/batch-calling/submit Schedule a batch of outbound agent calls · Submit A Batch Call Request #
Ask an LLM
“How do I have my agent call a whole list of recipients?”
“Can I schedule a batch call campaign for a future time and timezone?”
Tell an agent
Submit batch call {call_name} with agent {agent_id} to recipients {recipients}.
Schedule batch {call_name} for {scheduled_time_unix} using agent {agent_id} and recipients {recipients}.
GET /v1/convai/batch-calling/workspace List batch call campaigns · Get All Batch Calls For A Workspace #
Ask an LLM
“Which batch call campaigns have run in my workspace?”
“Can I list batch calls for just one agent?”
Tell an agent
List all batch calls in my workspace.
Show batch calls for agent {agent_id}.
GET /v1/convai/batch-calling/{batch_id} Get a batch call and its recipients · Get A Batch Call By Id #
Ask an LLM
“What's the status of each recipient in my batch call?”
“How is a batch calling campaign progressing?”
Tell an agent
Get batch call {batch_id} with all recipients.
Check progress of batch {batch_id}.
DELETE /v1/convai/batch-calling/{batch_id} Permanently delete a batch call record · Delete A Batch Call #
Ask an LLM
“If I delete a batch call, are its conversations kept?”
“How do I remove a batch call and its recipient records?”
Tell an agent destructive · confirm first
Delete batch call {batch_id}.
Permanently erase batch {batch_id} and its recipient list.
POST /v1/convai/batch-calling/{batch_id}/cancel Cancel a running batch call · Cancel A Batch Call #
Ask an LLM
“How do I stop a batch call campaign that's already running?”
“What happens to remaining recipients when I cancel a batch?”
Tell an agent destructive · confirm first
Cancel batch call {batch_id}.
Stop the running campaign {batch_id} now.
POST /v1/convai/batch-calling/{batch_id}/retry Retry failed recipients in a batch call · Retry A Batch Call #
Ask an LLM
“Can I re-dial the people who didn't pick up in a batch call?”
“Which recipients get called again when I retry a batch?”
Tell an agent
Retry batch call {batch_id}.
Call the failed and no-answer recipients of batch {batch_id} again.
GET /v1/convai/batch-calling/{batch_id}/export Export batch call results as CSV · Export Batch Call Results #
Ask an LLM
“Can I download a spreadsheet of results from a finished batch call?”
“What's included in a batch call CSV export?”
Tell an agent
Export batch call {batch_id} results to CSV.
Download recipients and outcomes for completed batch {batch_id}.
POST /v1/convai/sip-trunk/outbound-call Place an outbound agent call over SIP trunk · Handle An Outbound Call Via Sip Trunk #
Ask an LLM
“How do I make my agent dial out through my own SIP trunk?”
“What's needed to start an outbound agent call on a SIP trunk number?”
Tell an agent
Dial {to_number} over SIP trunk with agent {agent_id} from number {agent_phone_number_id}.
Start a SIP trunk call from {agent_phone_number_id} to {to_number} handled by agent {agent_id}.
POST /v1/convai/mcp-servers Connect a new MCP server · Create Mcp Server #
Ask an LLM
“How do I connect an MCP server so my agents can use its tools?”
“What config does adding an MCP server require?”
Tell an agent
Add an MCP server with config {config}.
Register MCP server {config} in the workspace.
GET /v1/convai/mcp-servers List MCP servers configured for agents · List Mcp Servers #
Ask an LLM
“Which MCP servers are connected to my agents workspace?”
“Can I see all MCP server configurations in one list?”
Tell an agent
List my workspace MCP servers.
Show every MCP server config available to agents.
GET /v1/convai/mcp-servers/{mcp_server_id} Get an MCP server's configuration · Get Mcp Server #
Ask an LLM
“What settings does one of my MCP servers have?”
“Can I view a single MCP server config by ID?”
Tell an agent
Get MCP server {mcp_server_id}.
Show the config for MCP server {mcp_server_id}.
DELETE /v1/convai/mcp-servers/{mcp_server_id} Remove an MCP server · Delete Mcp Server #
Ask an LLM
“How do I disconnect an MCP server from the workspace?”
“Can I delete an MCP server configuration I no longer need?”
Tell an agent destructive · confirm first
Delete MCP server {mcp_server_id}.
Disconnect MCP server {mcp_server_id} from my agents.
PATCH /v1/convai/mcp-servers/{mcp_server_id} Update an MCP server's settings · Update Mcp Server Configuration #
Ask an LLM
“Can I change the response timeout or request headers of an MCP server?”
“How do I make the agent speak before calling an MCP server's tools?”
Tell an agent
Set MCP server {mcp_server_id} response timeout to {response_timeout_secs} seconds.
Change MCP server {mcp_server_id} approval policy to {approval_policy} and headers to {request_headers}.
GET /v1/convai/mcp-servers/{mcp_server_id}/tools List the tools an MCP server exposes · List Mcp Server Tools #
Ask an LLM
“Which tools does a connected MCP server offer my agents?”
“Can I list an MCP server's tools for a specific environment?”
Tell an agent
List tools from MCP server {mcp_server_id}.
Show MCP server {mcp_server_id} tools in environment {environment}.
PATCH /v1/convai/mcp-servers/{mcp_server_id}/approval-policy Set an MCP server's approval policy (deprecated) · Update Mcp Server Approval Policy #
Ask an LLM
“Is there still a dedicated endpoint just for an MCP server's approval policy?”
“Can I switch an MCP server to per-tool approval via the older approval-policy route?”
Tell an agent
Use the legacy approval-policy route to set MCP server {mcp_server_id} to {approval_policy}.
Change only the approval policy of MCP server {mcp_server_id} to {approval_policy} via the deprecated endpoint.
POST /v1/convai/mcp-servers/{mcp_server_id}/tool-approvals Pre-approve one MCP tool · Create Mcp Server Tool Approval #
Ask an LLM
“In per-tool approval mode, how do I approve a single MCP tool for my agents?”
“Can I approve an MCP tool together with its input schema?”
Tell an agent
Approve tool {tool_name} ({tool_description}) on MCP server {mcp_server_id}.
Add an approval for MCP tool {tool_name} on server {mcp_server_id}, described as {tool_description}, with schema {input_schema}.
DELETE /v1/convai/mcp-servers/{mcp_server_id}/tool-approvals/{tool_name} Revoke approval for one MCP tool · Delete Mcp Server Tool Approval #
Ask an LLM
“How do I withdraw approval for a specific MCP tool?”
“Can I un-approve a single tool without changing the whole server's policy?”
Tell an agent destructive · confirm first
Revoke approval for tool {tool_name} on MCP server {mcp_server_id}.
Remove the {tool_name} tool approval from server {mcp_server_id}.
POST /v1/convai/mcp-servers/{mcp_server_id}/tool-configs Create a config override for one MCP tool · Create Mcp Tool Configuration Override #
Ask an LLM
“Can one MCP tool have its own timeout or pre-tool speech, different from the server default?”
“How do I add mocked responses for a single MCP tool?”
Tell an agent
Create an override for MCP tool {tool_name} on server {mcp_server_id} with a {response_timeout_secs} second timeout.
Add a tool config override for {tool_name} on {mcp_server_id} with response mocks {response_mocks}.
GET /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name} Get an MCP tool's config override · Get Mcp Tool Configuration Override #
Ask an LLM
“What overrides are set on a specific MCP tool?”
“Does this MCP tool have custom settings apart from its server?”
Tell an agent
Get the config override for tool {tool_name} on MCP server {mcp_server_id}.
Show custom settings of MCP tool {tool_name} on {mcp_server_id}.
PATCH /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name} Edit an existing MCP tool config override · Update Mcp Tool Configuration Override #
Ask an LLM
“Can I change the input overrides on an MCP tool that already has an override?”
“How do I adjust interruption behavior for one MCP tool I've customized?”
Tell an agent
Update the existing override on MCP tool {tool_name} of server {mcp_server_id} to execution mode {execution_mode}.
Change input overrides of tool {tool_name} on {mcp_server_id} to {input_overrides}.
DELETE /v1/convai/mcp-servers/{mcp_server_id}/tool-configs/{tool_name} Delete an MCP tool's config override · Delete Mcp Tool Configuration Override #
Ask an LLM
“How do I reset an MCP tool back to its server defaults?”
“Can I delete the custom config on a single MCP tool?”
Tell an agent destructive · confirm first
Delete the config override for tool {tool_name} on MCP server {mcp_server_id}.
Reset MCP tool {tool_name} on {mcp_server_id} to server defaults.
GET /v1/convai/whatsapp-accounts/{phone_number_id} Get a connected WhatsApp account · Get Whatsapp Account #
Ask an LLM
“Which agent is handling a given WhatsApp business number?”
“What settings does one of my WhatsApp accounts have?”
Tell an agent
Get WhatsApp account {phone_number_id}.
Show the settings of WhatsApp number {phone_number_id}.
PATCH /v1/convai/whatsapp-accounts/{phone_number_id} Update a WhatsApp account's agent and features · Update Whatsapp Account #
Ask an LLM
“Can I switch which agent answers a WhatsApp number?”
“How do I turn on typing indicators or voice note replies for WhatsApp?”
Tell an agent
Assign agent {assigned_agent_id} to WhatsApp account {phone_number_id}.
Set messaging enabled to {enable_messaging} on WhatsApp number {phone_number_id}.
DELETE /v1/convai/whatsapp-accounts/{phone_number_id} Disconnect a WhatsApp account · Delete Whatsapp Account #
Ask an LLM
“How do I remove a WhatsApp account from my agents?”
“Can I delete a connected WhatsApp business number?”
Tell an agent destructive · confirm first
Delete WhatsApp account {phone_number_id}.
Disconnect WhatsApp number {phone_number_id} from the workspace.
GET /v1/convai/whatsapp-accounts List connected WhatsApp accounts · List Whatsapp Accounts #
Ask an LLM
“Which WhatsApp accounts are linked to my agents?”
“Can I list WhatsApp numbers assigned to one agent?”
Tell an agent
List all my WhatsApp accounts.
Show WhatsApp accounts for agent {agent_id}.
POST /v1/convai/agents/{agent_id}/branches Create a branch of an agent · Create A New Branch #
Ask an LLM
“How do I branch an agent to try changes without affecting production?”
“Can I start a new branch from a specific version of another branch?”
Tell an agent
Create branch {name} on agent {agent_id} from version {parent_version_id}, described as {description}.
Branch agent {agent_id} off version {parent_version_id} as {name} with note {description}.
GET /v1/convai/agents/{agent_id}/branches List an agent's branches · List Agent Branches #
Ask an LLM
“What branches does my agent have?”
“Can I include archived branches when listing an agent's branches?”
Tell an agent
List branches of agent {agent_id}.
Show all branches of agent {agent_id} including archived ones.
GET /v1/convai/agents/{agent_id}/branches/{branch_id} Get an agent branch · Get Agent Branch #
Ask an LLM
“What's the state of one branch of my agent?”
“Is a particular agent branch protected or archived?”
Tell an agent
Get branch {branch_id} of agent {agent_id}.
Show details of agent {agent_id} branch {branch_id}.
PATCH /v1/convai/agents/{agent_id}/branches/{branch_id} Rename, archive or protect an agent branch · Update Agent Branch #
Ask an LLM
“How do I archive an agent branch I'm finished with?”
“Can I set protection on a branch so it can't be changed casually?”
Tell an agent
Archive branch {branch_id} of agent {agent_id}.
Set protection on agent {agent_id} branch {branch_id} to {protection_status}.
GET /v1/convai/agents/{agent_id}/versions/{version_id} Get metadata for an agent version · Get Agent Version Metadata #
Ask an LLM
“When was a particular agent version created and what does it contain?”
“Can I look up the metadata of one specific agent version?”
Tell an agent
Get metadata for version {version_id} of agent {agent_id}.
Show agent {agent_id} version {version_id} info.
GET /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge-preview Preview merging one agent branch into another · Preview Merged Configuration #
Ask an LLM
“What would my agent config look like if I merged this branch, before I commit?”
“Can I see the diff of a branch merge without doing it?”
Tell an agent
Preview merging branch {source_branch_id} into {target_branch_id} for agent {agent_id}.
Show the merge diff of agent {agent_id} from {source_branch_id} to {target_branch_id}.
POST /v1/convai/agents/{agent_id}/branches/{source_branch_id}/merge Merge an agent branch into another branch · Merge A Branch Into A Target Branch #
Ask an LLM
“How do I ship changes from a test branch of my agent into main?”
“Can I archive the source branch automatically after merging?”
Tell an agent
Merge branch {source_branch_id} into {target_branch_id} on agent {agent_id}.
Merge agent {agent_id} branch {source_branch_id} into {target_branch_id} and archive the source.
GET /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase-preview Preview rebasing an agent branch onto main · Preview Rebased Configuration #
Ask an LLM
“What would my branch look like after pulling in main's latest changes?”
“Can I preview a rebase before performing it?”
Tell an agent
Preview rebasing branch {branch_id} of agent {agent_id} onto main.
Show the rebase diff for agent {agent_id} branch {branch_id}.
POST /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase Rebase an agent branch onto main · Rebase A Branch Onto Main #
Ask an LLM
“How do I bring main's latest changes into my agent branch while keeping my edits?”
“Can I update a stale branch to the newest main?”
Tell an agent
Rebase branch {branch_id} of agent {agent_id} onto main.
Update agent {agent_id} branch {branch_id} with the latest main.
POST /v1/convai/agents/{agent_id}/deployments Deploy an agent · Create Or Update Deployments #
Ask an LLM
“How do I roll out a version of my agent to live traffic?”
“Can I create or change deployments for an agent from the API?”
Tell an agent
Deploy agent {agent_id} with {deployment_request}.
Update the deployment of agent {agent_id} to {deployment_request}.
POST /v1/convai/agents/{agent_id}/drafts Save a draft of an agent on a branch · Create Agent Draft #
Ask an LLM
“Can I save unpublished changes to an agent as a draft?”
“How do I create a draft for a specific agent branch?”
Tell an agent
Create a draft of agent {agent_id} on branch {branch_id} using config {conversation_config}.
Save draft {name} for agent {agent_id} branch {branch_id}.
DELETE /v1/convai/agents/{agent_id}/drafts Discard an agent's draft · Delete Agent Draft #
Ask an LLM
“How do I throw away unpublished draft changes on an agent branch?”
“Can I delete an agent draft and keep the committed version?”
Tell an agent destructive · confirm first
Delete the draft of agent {agent_id} on branch {branch_id}.
Discard draft changes for agent {agent_id} branch {branch_id}.
POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures Create a procedure on an agent branch · Create Procedure #
Ask an LLM
“How do I add a new procedure to my agent?”
“Can I create a procedure on a non-main branch of an agent?”
Tell an agent
Create a procedure on branch {branch_id} of agent {agent_id}.
Add a new procedure to agent {agent_id} on {branch_id}.
GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures List procedures on an agent branch · List Procedures #
Ask an LLM
“Which procedures are attached to this branch of my agent?”
“Can I list the procedures from a published agent version instead of drafts?”
Tell an agent
List procedures on branch {branch_id} of agent {agent_id}.
Show procedures for agent {agent_id} branch {branch_id} as of version {agent_version_id}.
POST /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/compile Compile procedure drafts into a workflow · Compile Procedures #
Ask an LLM
“How do I turn my procedure drafts into the agent's workflow?”
“What does compiling procedures on a branch produce?”
Tell an agent
Compile procedures on branch {branch_id} of agent {agent_id}.
Build the workflow from agent {agent_id}'s procedure drafts on {branch_id}.
DELETE /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id} Remove a procedure from an agent's draft set · Remove Procedure #
Ask an LLM
“How do I take a procedure out of my agent?”
“Does removing a procedure folder also remove everything under it?”
Tell an agent destructive · confirm first
Remove procedure {procedure_id} from agent {agent_id} branch {branch_id}.
Drop procedure folder {procedure_id} and its subtree on agent {agent_id} branch {branch_id}.
GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id} Get a procedure at a version or HEAD · Get Procedure #
Ask an LLM
“What does a procedure look like at the current branch head?”
“Can I read an older version of one procedure?”
Tell an agent
Get procedure {procedure_id} on branch {branch_id} of agent {agent_id}.
Show procedure {procedure_id} at version {version_id} for agent {agent_id} branch {branch_id}.
GET /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft Get my draft of a procedure · Get Procedure Draft #
Ask an LLM
“What unsaved edits do I have on a procedure?”
“Can I see my personal draft of a procedure before committing it?”
Tell an agent
Get my draft of procedure {procedure_id} on agent {agent_id} branch {branch_id}.
Show my pending edits to procedure {procedure_id} for agent {agent_id} on {branch_id}.
PATCH /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft Write or edit my draft of a procedure · Update Procedure Draft #
Ask an LLM
“How do I edit the content of a procedure as a draft?”
“Can I set a trigger on a procedure while drafting it?”
Tell an agent
Save a draft of procedure {procedure_id} on agent {agent_id} branch {branch_id} named {name}, type {type}, content {content}.
Draft procedure {procedure_id} for agent {agent_id} on {branch_id} with trigger {trigger}.
DELETE /v1/convai/agents/{agent_id}/branches/{branch_id}/procedures/{procedure_id}/draft Discard my draft of a procedure · Delete Procedure Draft #
Ask an LLM
“How do I reset a procedure back to its committed version?”
“Can I throw away my unsaved procedure edits?”
Tell an agent destructive · confirm first
Delete my draft of procedure {procedure_id} on agent {agent_id} branch {branch_id}.
Reset procedure {procedure_id} for agent {agent_id} on {branch_id} to its committed version.
GET /v1/convai/environment-variables List workspace environment variables · List Environment Variables #
Ask an LLM
“Which environment variables are defined for my agents workspace?”
“Can I filter environment variables by label or environment?”
Tell an agent
List my workspace environment variables.
Show environment variables labeled {label} in environment {environment}.
POST /v1/convai/environment-variables Create a workspace environment variable · Create Environment Variable #
Ask an LLM
“How do I define a new environment variable for my agents?”
“Can I add a variable that differs between staging and production?”
Tell an agent
Create a new workspace environment variable.
Add an environment variable for my agents with per-environment values.
GET /v1/convai/environment-variables/{env_var_id} Get an environment variable · Get Environment Variable #
Ask an LLM
“What values does one environment variable have?”
“Can I look up an environment variable by its ID?”
Tell an agent
Get environment variable {env_var_id}.
Show the values of env var {env_var_id}.
PATCH /v1/convai/environment-variables/{env_var_id} Replace an environment variable's values · Update Environment Variable #
Ask an LLM
“How do I change the values of an environment variable?”
“Can I remove a variable's value for one environment but not production?”
Tell an agent
Set environment variable {env_var_id} values to {values}.
Replace env var {env_var_id} with values {values}.

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/elevenlabs-agents-platform-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

elevenlabs-agents-platform-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ElevenLabs API Documentation Agents Platform API
  description: This is the documentation for the ElevenLabs API. You can use this API to use our service programmatically, this is done by using your API key. You can find your API key in the dashboard at https://elevenlabs.io/app/settings/api-keys.
  version: '1.0'
tags:


# --- truncated at 32 KB (1205 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elevenlabs/refs/heads/main/openapi/elevenlabs-agents-platform-api-openapi.yml