> ## Documentation Index
> Fetch the complete documentation index at: https://docs.telzino.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Managing AI Agents

> Create, configure, and manage AI phone agents in the Connect App

The AI Agents view is the main screen of the Connect App. It shows all agents assigned to your account and provides tools for creating new agents, editing existing ones, and managing agent settings.

## Agent List

The agent list displays all AI phone agents with two columns:

* **Account** — The agent's name
* **Extension** — The phone extension assigned to the agent (if applicable)

The list is sortable by clicking the **Account** column header. A downward arrow (▼) indicates the current sort direction.

`[Screenshot: AI Agents list view showing Account and Extension columns]`

### Searching Agents

Use the search bar at the top of the agent list to filter agents by name, extension, site, or description. Type your search term and the list will filter in real time.

### Agent Row Actions

Each agent row displays five action icons on the right side when you hover over it:

* **Integrations** (gear icon) — View and configure available integrations for this agent
* **Usage Analytics** (magnifying glass icon) — View usage metrics and call statistics for this agent
* **Test** (phone icon) — Open a WebRTC test client to have a live voice conversation with the agent
* **Edit** (pencil icon) — Open the agent editor to modify settings and configuration
* **Delete** (red X icon) — Remove the agent permanently

`[Screenshot: Agent row with action icons visible on hover]`

***

## Creating a New Agent

Click the **New** button in the top-right corner of the agent list to launch the new agent wizard. The wizard guides you through setup in several steps.

<Steps>
  <Step title="Choose Extension">
    Enter an unused extension number to assign to the new agent. This is the internal extension that will be used to reach the agent within the phone system.

    `[Screenshot: Choose Extension step]`
  </Step>

  <Step title="Select Caller ID">
    Choose a Caller ID (DID) from the dropdown. This is the phone number that will appear as the Caller ID when the agent makes outbound calls. The dropdown is populated with available numbers from your account.

    `[Screenshot: Select Caller ID step]`
  </Step>

  <Step title="Name and Notification Email">
    Enter an **Agent Name** — a descriptive name that identifies the agent's purpose (e.g., "Front Desk", "After Hours Support"). Then enter a **Notification Email** where agent notifications will be sent.

    `[Screenshot: Create New Agent step with name and email fields]`
  </Step>

  <Step title="Choose a Template">
    Select from one of the ready-to-use agent templates to get started quickly. Each template comes pre-configured with instructions and functions suited to a specific use case:

    * **Receptionist Agent** — Answers questions, screens calls, and transfers to appropriate destinations
    * **Appointment Scheduler** — Schedules appointments and takes messages according to instructions
    * **Support Agent (CRM)** — Connects with Zendesk, Freshdesk, or MCP Server to handle customer support inquiries
    * **Blank Slate Agent** — Start from scratch with a basic agent template
    * **Message Taker Agent** — Answers questions and takes messages that are emailed with the full call transcript and recording

    `[Screenshot: Select a Template screen]`
  </Step>

  <Step title="Template Setup Wizard">
    After selecting a template, a guided wizard walks you through the key settings for that template type. The steps vary by template but typically include:

    * **Business name** — Enter the name of your business so the agent can refer to it during calls
    * **Greeting** — Customize what the agent says when it answers calls (a default greeting is pre-filled based on the template and your business name). This step can be skipped.
    * **Template-specific options** — For example, the Receptionist Agent template asks whether to enable call transfers and shows available transfer destinations

    `[Screenshot: Template setup wizard - greeting step]`
  </Step>

  <Step title="Transfer Destinations (Receptionist Agent)">
    If you selected the Receptionist Agent template and enabled transfers, this step shows the available transfer destinations. These are automatically populated from the NetSapiens directory — any user with **"announce in directory"** set to **Yes** in NetSapiens will appear as a transfer destination.

    The transfer instructions are pre-generated in a format the agent can use (e.g., "If the caller wants to speak to John Smith, transfer the call to pbx:1234").

    `[Screenshot: Transfer Destinations step]`
  </Step>

  <Step title="Finish">
    Click **Finish** to create the agent. A success confirmation will appear, and your new agent will be added to the agent list, ready to use.

    `[Screenshot: Success confirmation]`
  </Step>
</Steps>

***

## Agent Row Actions

### Integrations (Gear Icon)

The Integrations view shows available third-party integrations that can be connected to the agent. Click on any integration to configure it.

`[Screenshot: Integrations view]`

Available integrations:

* **Google Calendar** — Connect your Google account to manage your calendar
* **Outlook Calendar** — Connect your Outlook account to manage your calendar
* **ModMed** — Connect to ModMed EHR for patient scheduling and management
* **Model Context Protocol** — Connect to external MCP servers for extended capabilities (`extensions.mcp_servers`; [GET shape](/api-reference/agents/get#stored-mcp-connection-shape) vs [POST/PUT request shape](/api-reference/agents/create#mcp-servers-request-body))
* **Netsapiens** — Connect to Netsapiens UCaaS platform for subscriber management

### Usage Analytics (Magnifying Glass Icon)

Opens the per-agent **Usage Analytics** page, which displays:

* **Voice Minutes** — A chart showing minute consumption over time
* **Call count** — Total number of calls handled
* **Average duration** — Average call length

`[Screenshot: Usage Analytics view for a single agent]`

### Test Agent (Phone Icon)

Opens a built-in WebRTC test client that allows you to have a live voice conversation with the agent directly from your browser. Click **Start Conversation** to begin speaking with the agent and test its behavior.

`[Screenshot: Test agent WebRTC client]`

### Edit Agent (Pencil Icon)

Opens the agent editor. See the [Editing an Agent](#editing-an-agent) section below for details.

### Delete Agent (Red X Icon)

Removes the agent. You will be prompted to confirm the deletion.

<Warning>
  Deleting an agent is permanent and cannot be undone. All agent configuration, call history, and associated data will be removed.
</Warning>

***

## Editing an Agent

The agent editor is organized into tabs. The available tabs depend on whether the agent is attached to a template or has been detached.

**When attached to a template:** Basic Settings, SIP Settings, Rename Agent, Embeds

**When detached from a template:** Basic Settings, Advanced Settings, SIP Settings, Rename Agent, Embeds

### Attached vs. Detached Mode

When an agent is created from a template, it remains **attached** to that template. In attached mode, the editor shows a simplified set of fields tailored to the template type. A **Detach** button appears in the top-right corner of the editor.

Clicking **Detach** permanently separates the agent from its template, unlocking the full set of editing options including the **Advanced Settings** tab. This gives you direct access to agent instructions, transfer rules, LLM model selection, and more.

<Warning>
  Detaching an agent from its template cannot be undone. Once detached, the agent will no longer receive updates from the template.
</Warning>

`[Screenshot: Detach confirmation dialog]`

### Basic Settings (Attached to Template)

When attached to a template, the Basic Settings tab shows template-specific fields:

* **Template** — The parent template (e.g., Receptionist Agent) as a dropdown
* **Language** — Speech-to-Text language (English - US, Spanish - US, or Multilingual)
* **Time Zone** — The agent's time zone for scheduling and time-related responses
* **Voice** — Select a TTS voice from the dropdown, with a **Preview** button to hear a sample
* **Voice Speed** — A slider to adjust speaking speed from Slower to Faster (default 1.0x)
* **Business name** — How the agent refers to your business
* **Business website** — Your company website URL
* **Additional Link** — An extra URL for the agent's knowledge base
* **Agent Notification Email** — One or more email addresses for notifications (use **Add Email** to add additional recipients)
* **Greeting** — The message your agent says when answering calls
* **Enable Transfers** — Checkbox to enable call transfer functionality
* **Transfer Destinations** — Auto-populated transfer instructions from the NetSapiens directory (with a refresh button to re-sync)
* **Agent instructions** — What information the agent should know (with **AI Prompt Improver** button)
* **Questions and Info Collection** — Define what information the agent should gather from callers

`[Screenshot: Basic Settings - attached to template]`

### Basic Settings (Detached from Template)

When detached, the Basic Settings tab shows a different layout with these fields:

* **Greeting** — The message your agent says when answering calls
* **Agent Notification Email** — One or more email addresses (use **Add Email** to add more)
* **Links** — Knowledge base URLs for the agent (use **+ Add** to add links)
* **Functions** — Agent functions like webhooks and email (use **+ Add** to add functions)
* **Campaign ID** — A unique identifier for the agent (with **Copy** button)
* **Language** — Speech-to-Text language selection
* **Time Zone** — The agent's time zone
* **Voice** — TTS voice selection with **Preview** button
* **Voice Speed** — Slider from Slower to Faster (default 1.0x)

`[Screenshot: Basic Settings - detached from template]`

### Advanced Settings (Detached Only)

The Advanced Settings tab is only available after detaching from a template. It provides full control over the agent's core configuration:

* **Agent Instructions** — The complete instructions prompt with **AI Prompt Improver** button to help refine your prompt
* **Transfer Rules** — Instructions for when and how to transfer calls, with a refresh button to re-sync destinations from the NetSapiens directory
* **Model** — The LLM model powering the agent's intelligence (e.g., GPT-4.1 Smart)
* **STT Engine** — The Speech-to-Text engine for transcribing caller speech (e.g., Deepgram)
* **Call Recording** — Toggle to enable or disable call recording
* **Mobile Call Detection** — Toggle to detect whether callers are using a mobile phone before the call starts
* **Background Audio** — Toggle to enable ambient background sounds during calls

`[Screenshot: Advanced Settings tab]`

***

## Adding Functions

Click the **+ Add** button next to Functions in the Basic Settings tab (detached mode) to add capabilities to your agent. The following functions are available:

`[Screenshot: Add Functions dialog]`

<AccordionGroup>
  <Accordion title="Webhooks">
    Send HTTP requests to your backend systems during or around calls. Use webhooks to fetch dynamic information, push data to a CRM, trigger workflows, or log call events.

    When adding a webhook, you configure the following fields:

    * **Name** (required) — Internal name for the webhook with no spaces (e.g., `send_lead_to_crm`)
    * **Friendly Name** — Display name shown in the UI (e.g., "Send Lead to CRM")
    * **Description** — Describe when the agent should trigger this webhook (e.g., "Trigger when a caller provides their contact information and wants to be contacted later")
    * **Trigger Condition** (required) — When the webhook fires. Options: Before Call, During Call, or After Call. Limits: 1 Before Call, 2 During Call, 1 After Call.
    * **HTTP Method** (required) — The HTTP method to use (e.g., POST, GET)
    * **URL** (required) — The endpoint URL to send the request to
    * **Headers** — Custom HTTP headers to include with the request (use **+ Add Header** to add key-value pairs)
    * **Parameters** — Custom parameters to include in the request body (use **+ Add Parameter** to add key-value pairs)

    `[Screenshot: Configure Webhook form]`

    #### Headers Example

    Headers are useful for authentication and specifying content types. Each header is a key-value pair. Common examples:

    | Key               | Value                      | Purpose                    |
    | ----------------- | -------------------------- | -------------------------- |
    | `Authorization`   | `Bearer your-api-key-here` | Authenticate with your API |
    | `Content-Type`    | `application/json`         | Specify JSON request body  |
    | `X-Custom-Header` | `my-value`                 | Pass custom metadata       |

    #### Parameters Example

    Parameters define the data sent in the request body. Each parameter is a key-value pair that the agent will populate based on the call context. Common examples:

    | Key                | Value                             | Purpose                        |
    | ------------------ | --------------------------------- | ------------------------------ |
    | `caller_name`      | `The name provided by the caller` | Capture the caller's name      |
    | `caller_phone`     | `The caller's phone number`       | Pass the caller's phone number |
    | `reason`           | `The reason for the call`         | Log the call purpose           |
    | `appointment_date` | `The requested appointment date`  | Pass scheduling information    |

    <Info>
      Parameter values act as descriptions that tell the agent what data to extract from the conversation and include in the webhook request.
    </Info>
  </Accordion>

  <Accordion title="Send Email During Call">
    When enabled, your agent can send emails during the call based on the instructions you provide. This is useful for sending confirmations, follow-ups, or notifications to team members in real time while the caller is still on the line.
  </Accordion>

  <Accordion title="Transfer to Agent">
    Transfer the call to another AI agent based on conditions you specify. This allows you to build multi-agent workflows where different agents handle different types of inquiries.
  </Accordion>
</AccordionGroup>

***

## Adding Links

Click the **+ Add** button next to Links in the Basic Settings tab to provide your agent with external knowledge sources. Links point to web pages or PDFs that the agent can reference during calls to provide accurate, up-to-date information.

<Info>
  Links serve as the agent's knowledge base. The agent will use the content from these URLs to answer caller questions. Link to specific, relevant pages such as FAQ sections or product detail pages rather than general homepages.
</Info>

***

## Sharing and Publishing

Once your agent is configured, you can make it available to receive calls and interact with customers.

### Forwarding Calls

Forward your existing business phone number to your agent's Telzino number so that incoming calls are answered by the AI agent.

### Publishing a Profile

Publish a public profile page for your agent that allows people to interact with it via web chat. The profile page can be shared via a link.

### Embedding on a Website

Embed your agent as a chat widget on your website so visitors can interact with it directly from your web pages.

### Porting a Phone Number

Port an existing phone number to Telzino so your agent answers calls on your current business number.
