# Bandwidth Agent Builder - [Bandwidth Agent Builder](https://docs.agents.labs.bandwidth.com/getting-started/index.md): Build, test, and connect voice agents to your customers and applications. - [What you need](https://docs.agents.labs.bandwidth.com/getting-started/prerequisites.md): Prepare your workspace, AI connections, and browser for your first agent. - [Create your first agent](https://docs.agents.labs.bandwidth.com/getting-started/quickstart.md): Create, test, and publish an agent from the console. - [Troubleshooting](https://docs.agents.labs.bandwidth.com/getting-started/troubleshooting.md): Resolve access, testing, calling, and integration issues from the console. - [How agents work](https://docs.agents.labs.bandwidth.com/core-concepts/how-voai-works.md): Understand the choices that shape a voice conversation. - [Agents and workflows](https://docs.agents.labs.bandwidth.com/core-concepts/workflows-and-agents.md): Choose an agent type and understand drafts and published versions. - [Calls and results](https://docs.agents.labs.bandwidth.com/core-concepts/calls-and-runs.md): Find conversation records, understand run state, and review outcomes. - [Context & Variables](https://docs.agents.labs.bandwidth.com/core-concepts/context-and-variables.md): How data flows into, through, and out of a conversation - [Campaigns](https://docs.agents.labs.bandwidth.com/core-concepts/campaigns.md): Call a contact list with controlled scheduling, concurrency, and retries. - [Roles & Permissions](https://docs.agents.labs.bandwidth.com/core-concepts/roles-and-permissions.md): Workspace access control — what Owner, Admin, Editor, and Viewer can do - [Configure AI connections](https://docs.agents.labs.bandwidth.com/configurations/inference-providers.md): Choose shared model connections and override them for individual agents. - [Language models](https://docs.agents.labs.bandwidth.com/configurations/llm.md): Choose the model that generates responses and analyzes conversations. - [Choose a voice](https://docs.agents.labs.bandwidth.com/configurations/voice.md): Select a speech provider, model, and voice for your agent. - [Choose a transcriber](https://docs.agents.labs.bandwidth.com/configurations/transcriber.md): Configure speech recognition for the language your callers use. - [Interruption Handling](https://docs.agents.labs.bandwidth.com/configurations/interruption.md): Control whether users can interrupt the bot while it is speaking by configuring the Allow Interruption toggle on each node. - [Review traces](https://docs.agents.labs.bandwidth.com/configurations/tracing.md): Inspect model, speech, and tool activity to understand a conversation. - [Create an agent](https://docs.agents.labs.bandwidth.com/voice-agent/introduction.md): Choose a prompt or workflow and prepare an agent for testing. - [Single Prompt agents](https://docs.agents.labs.bandwidth.com/voice-agent/single-prompt.md): Guide an agent with one prompt and attach the actions it needs. - [Edit a workflow](https://docs.agents.labs.bandwidth.com/voice-agent/editing-a-workflow.md): Build conversation steps, connect pathways, and test the complete flow. - [Test and publish](https://docs.agents.labs.bandwidth.com/voice-agent/publish.md): Control when draft changes become available to production API calls. - [Use prepared audio](https://docs.agents.labs.bandwidth.com/voice-agent/pre-recorded-audio.md): Add recordings for parts of a workflow that should use a prepared message. - [Template Variables](https://docs.agents.labs.bandwidth.com/voice-agent/template-variables.md): You can use Template Variables in your prompts for your Agent nodes, or when constructing the payload for the Webhook Node - [Pre-Call Data Fetch](https://docs.agents.labs.bandwidth.com/voice-agent/pre-call-data-fetch.md): Fetch customer data from your CRM or ERP before the call starts, so your voice agent can greet callers by name and reference their account details. - [Tools](https://docs.agents.labs.bandwidth.com/voice-agent/tools/introduction.md): Extend your voice agent's capabilities by giving it tools to perform actions during live conversations. - [Call Transfer](https://docs.agents.labs.bandwidth.com/voice-agent/tools/call-transfer.md): Enable your AI agent to transfer calls to phone numbers with built-in call transfer functionality. - [End Call](https://docs.agents.labs.bandwidth.com/voice-agent/tools/end-call.md): Allow your AI agent to terminate calls when conversations reach a natural conclusion or specific conditions are met. - [HTTP API tools](https://docs.agents.labs.bandwidth.com/voice-agent/tools/http-api.md): Call your service during a conversation to look up data or perform an action. - [MCP tools](https://docs.agents.labs.bandwidth.com/voice-agent/tools/mcp-tool.md): Let an agent call selected tools exposed by your MCP server. - [Knowledge Base](https://docs.agents.labs.bandwidth.com/voice-agent/knowledge-base.md): Upload documents that your voice agent can reference during live conversations to provide accurate, context-aware responses. - [Start Call node](https://docs.agents.labs.bandwidth.com/voice-agent/start-call.md): Set the greeting and opening behavior of a workflow. - [End Call node](https://docs.agents.labs.bandwidth.com/voice-agent/end-call.md): Finish a workflow conversation with an appropriate closing message. - [Agent node](https://docs.agents.labs.bandwidth.com/voice-agent/agent.md): Guide one conversation step and define when it is complete. - [Global node](https://docs.agents.labs.bandwidth.com/voice-agent/global.md): Share instructions across the conversation steps that need them. - [QA](https://docs.agents.labs.bandwidth.com/voice-agent/qa.md): QA node allows you to run post-call quality analysis on your Voice Agent runs - [API Trigger](https://docs.agents.labs.bandwidth.com/voice-agent/api-trigger.md): Trigger outbound calls from external systems like n8n, Zapier, or your own backend - [Webhook node](https://docs.agents.labs.bandwidth.com/voice-agent/webhook.md): Send conversation results to your CRM or application after a call. - [Connect phone numbers](https://docs.agents.labs.bandwidth.com/integrations/telephony/overview.md): Set up a provider and phone numbers for inbound and outbound calls. - [Receive inbound calls](https://docs.agents.labs.bandwidth.com/integrations/telephony/inbound.md): Assign an agent to a number and route incoming calls through your provider. - [Twilio Integration](https://docs.agents.labs.bandwidth.com/integrations/telephony/twilio.md): Configure Twilio for voice communication in Bandwidth Agent Builder - [Telnyx Integration](https://docs.agents.labs.bandwidth.com/integrations/telephony/telnyx.md): Configure Telnyx for voice communication in Bandwidth Agent Builder - [Provider callbacks](https://docs.agents.labs.bandwidth.com/integrations/telephony/webhooks.md): Distinguish provider call events from webhooks sent to your application. - [Connect your services](https://docs.agents.labs.bandwidth.com/integrations/overview.md): Use tools, webhooks, MCP, and telephony to connect agents to your applications. - [Tuner Integration](https://docs.agents.labs.bandwidth.com/integrations/tuner.md): Connect Bandwidth Agent Builder to Tuner — the observability, simulation, and testing layer for voice - [Developer quickstart](https://docs.agents.labs.bandwidth.com/developer/quickstart.md): Authenticate, find an agent, and retrieve its runs over HTTPS. - [Authentication](https://docs.agents.labs.bandwidth.com/api-reference/authentication.md): Authenticate with Labs credentials and the correct workspace permissions. - [Agent UUID](https://docs.agents.labs.bandwidth.com/configurations/agent-uuid.md): Find and use your workflow's stable Agent UUID - [Place an outbound call](https://docs.agents.labs.bandwidth.com/developer/outbound-calls.md): Start a call by Agent UUID and inspect the resulting run. - [Receive call results](https://docs.agents.labs.bandwidth.com/developer/webhooks.md): Configure an HTTPS webhook to receive the result of a completed call. - [Workflow Definition Schema](https://docs.agents.labs.bandwidth.com/developer/workflow-schema.md): Schema reference for the workflow_definition object used in the Agents API - [Connect an MCP client](https://docs.agents.labs.bandwidth.com/integrations/mcp.md): Connect an assistant to your workspace using Streamable HTTP and Labs credentials. - [API overview](https://docs.agents.labs.bandwidth.com/api-reference/overview.md): Use the REST API to manage agents, place calls, and retrieve results. - [Authentication](https://docs.agents.labs.bandwidth.com/api-reference/authentication.md): Authenticate with Labs credentials and the correct workspace permissions. - [Errors and retries](https://docs.agents.labs.bandwidth.com/api-reference/errors.md): Interpret API errors and avoid duplicate actions when a request fails. - [Overview](https://docs.agents.labs.bandwidth.com/api-reference/agents.md): Create and manage voice agents (workflows) via the API - [Create from Definition](https://docs.agents.labs.bandwidth.com/api-reference/agents/create-from-definition.md): Create a voice agent from an explicit workflow definition - [Create from Template](https://docs.agents.labs.bandwidth.com/api-reference/agents/create-from-template.md): Generate a voice agent from a natural language description - [List Agents](https://docs.agents.labs.bandwidth.com/api-reference/agents/list.md): Retrieve all agents in your organization - [Get Agent Count](https://docs.agents.labs.bandwidth.com/api-reference/agents/count.md): Get the total number of agents broken down by status - [Get Agent](https://docs.agents.labs.bandwidth.com/api-reference/agents/get.md): Retrieve a single agent by ID, including its full workflow definition - [Update Agent](https://docs.agents.labs.bandwidth.com/api-reference/agents/update.md): Update an agent's name, workflow definition, or configuration - [Archive Agent](https://docs.agents.labs.bandwidth.com/api-reference/agents/archive.md): Archive or restore a voice agent - [Validate Workflow](https://docs.agents.labs.bandwidth.com/api-reference/agents/validate.md): Validate a workflow definition without executing it - [Publish an agent](https://docs.agents.labs.bandwidth.com/api-reference/agents/publish.md): Validate and publish the current draft for production API calls. - [List agent versions](https://docs.agents.labs.bandwidth.com/api-reference/agents/versions.md): Retrieve an agent's version history. - [Create a browser run](https://docs.agents.labs.bandwidth.com/api-reference/agents/runs/create.md): Create a run record for a browser test - [List Runs](https://docs.agents.labs.bandwidth.com/api-reference/agents/runs/list.md): Retrieve all runs for a workflow - [Get Run](https://docs.agents.labs.bandwidth.com/api-reference/agents/runs/get.md): Retrieve a single workflow run by ID - [Overview](https://docs.agents.labs.bandwidth.com/api-reference/runs.md): Create and inspect agent runs via the API - [Trigger an Outbound Agent Run by API Trigger Node](https://docs.agents.labs.bandwidth.com/api-reference/runs/trigger.md): Start an outbound agent run using an API Trigger node UUID - [Trigger an Outbound Agent Run by Agent UUID](https://docs.agents.labs.bandwidth.com/api-reference/runs/trigger-workflow.md): Start an outbound agent run using a workflow's stable Agent UUID - [Retrieve Agent Run Details](https://docs.agents.labs.bandwidth.com/api-reference/runs/get-run.md): Get the details, transcript, and recording for an agent run - [List Runs with Usage](https://docs.agents.labs.bandwidth.com/api-reference/runs/list-runs.md): Paginated list of workflow runs across the organization with usage and cost - [Overview](https://docs.agents.labs.bandwidth.com/api-reference/campaigns.md): Create and manage outbound calling campaigns - [Upload Contacts CSV](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/upload-contacts.md): Get a temporary upload URL to upload a contacts CSV for a campaign - [Create Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/create.md): Create a new outbound calling campaign - [List Campaigns](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/list.md): Retrieve all campaigns for your organization - [Get Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/get.md): Retrieve a single campaign by ID - [Update Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/update.md): Update campaign settings - [Start Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/start.md): Start dialing contacts in a campaign - [Pause Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/pause.md): Temporarily stop a running campaign - [Resume Campaign](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/resume.md): Resume a paused campaign - [Get Campaign Progress](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/progress.md): Get the current progress of a campaign - [Get Campaign Runs](https://docs.agents.labs.bandwidth.com/api-reference/campaigns/runs.md): Retrieve individual run records for each contact in a campaign - [Overview](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs.md): Configure telephony providers and manage phone numbers - [List Supported Providers](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/providers.md): Discover available telephony providers and the credential fields each one requires - [List Configurations](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/list.md): List all telephony configurations in your organization - [Create Configuration](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/create.md): Create a new telephony configuration - [Get Configuration](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/get.md): Retrieve a telephony configuration by id - [Update Configuration](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/update.md): Rename a configuration or rotate its credentials - [Delete Configuration](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/delete.md): Delete a telephony configuration - [Set Default Outbound](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/set-default-outbound.md): Designate this configuration as the org-wide default for outbound calls - [List Phone Numbers](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/list.md): List phone numbers attached to a telephony configuration - [Add Phone Number](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/create.md): Attach a new phone number to a telephony configuration - [Get Phone Number](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/get.md): Retrieve a phone number by id - [Update Phone Number](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/update.md): Update label, inbound binding, or activation state of a phone number - [Delete Phone Number](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/delete.md): Remove a phone number from a telephony configuration - [Set Default Caller](https://docs.agents.labs.bandwidth.com/api-reference/telephony-configs/phone-numbers/set-default-caller.md): Designate a phone number as the configuration's default outbound caller id ## OpenAPI Specs - [openapi](/api-reference/openapi.json)