# OSVI AI Docs ## Docs - [Welcome to OSVI](https://docs.osvi.ai/index.md): Build AI agents that talk to your customers — over the phone, on the web, and in chat - [Quickstart](https://docs.osvi.ai/quickstart.md): Create your first AI agent and have a conversation with it in under ten minutes - [Platform Overview](https://docs.osvi.ai/platform/overview.md): How the OSVI platform fits together — agents, calls, campaigns, chat, and analytics - [Agents](https://docs.osvi.ai/platform/agents.md): Create and configure the AI agents that talk to your customers - [Prompt Writing Guidelines](https://docs.osvi.ai/platform/prompt-writing.md): How to write effective system prompts for OSVI AI agents - [Voices](https://docs.osvi.ai/platform/voices.md): Choose how your agents sound and control pronunciation - [Call Settings](https://docs.osvi.ai/platform/call-settings.md): Tune how your agent handles interruptions, silence, audio, and response timing - [Knowledge Base](https://docs.osvi.ai/platform/knowledge-base.md): Give agents your own content to answer from — product details, policies, FAQs - [Call Analysis](https://docs.osvi.ai/platform/call-analysis.md): Turn every call into structured data — summaries, extracted fields, tags, and delivery to your systems - [Campaigns](https://docs.osvi.ai/platform/campaigns.md): Run calling operations at scale — upload contacts, schedule windows, and let agents work the list - [Phone Numbers](https://docs.osvi.ai/platform/phone-numbers.md): Buy, connect, and manage the numbers your agents call from and answer on - [Conversations](https://docs.osvi.ai/platform/conversations.md): Review every call — recordings, transcripts, outcomes, and extracted data - [Chat Agents](https://docs.osvi.ai/platform/chat-agents.md): Run agents over text — embed them in your product, supervise live, and escalate to voice - [Team Management](https://docs.osvi.ai/platform/team-management.md): Invite teammates, assign roles, and control who can do what - [Ozonetel Integration](https://docs.osvi.ai/ozontel-integration.md): Connect your Ozonetel telephony infrastructure with Osvi AI conversational agents for inbound and outbound calling. - [Plivo Integration](https://docs.osvi.ai/plivo-integration.md): Connect your Plivo telephony infrastructure with Osvi AI conversational agents for inbound and outbound calling. - [Exotel Integration](https://docs.osvi.ai/exotel-integration.md): Connect your Exotel telephony infrastructure with Osvi AI conversational agents over SIP or the Exotel Voicebot WebSocket. - [Vobiz Integration](https://docs.osvi.ai/vobiz-integration.md): Connect your Vobiz telephony infrastructure with Osvi AI conversational agents for inbound and outbound calling. - [Introduction](https://docs.osvi.ai/api-reference/introduction.md): Overview of the OSVI AI REST API - [List Active Agents](https://docs.osvi.ai/api-reference/endpoint/active_agents.md): Returns the voice agents on your account that are currently **active** (and not archived) — i.e. the agents able to take calls right now. Useful for validating an `agent_uuid` before triggering `POST /v1/call`, or for populating an agent picker in your own system. - [Initiate a Phone Call](https://docs.osvi.ai/api-reference/endpoint/call_v1.md): Starts an outbound phone call to the given number using the specified agent. The call is placed asynchronously — use `webhook_url` to receive a notification when the call completes. - [List Calls](https://docs.osvi.ai/api-reference/endpoint/list_calls.md): Returns a paginated list of calls for your account, most recent first. Combine the query parameters to narrow the result set — they mirror the filters available in the dashboard's Conversations view. - [Get a Call](https://docs.osvi.ai/api-reference/endpoint/get_call.md): Returns the full record for a single call, including the AI summary, extracted data, and structured analysis. This is the same information delivered by post-call webhooks, retrievable on demand. - [Get Call Transcript](https://docs.osvi.ai/api-reference/endpoint/call_transcript.md): Returns the turn-by-turn transcript of a call. Returns an empty array if no transcript was captured (e.g. the call was never answered). - [Get Call Recording](https://docs.osvi.ai/api-reference/endpoint/call_recording.md): Returns a short-lived presigned URL to download the call's audio recording. The URL expires after 15 minutes — fetch it on demand rather than storing it. - [Add Campaign Contacts](https://docs.osvi.ai/api-reference/endpoint/campaign_add_contacts.md): Pushes a list of contacts into a campaign, replacing manual CSV uploads. Phone numbers are normalized (Indian formats accepted), duplicates are removed (keeping the longer `person_name`), and any extra keys on a contact are preserved as prompt variables for the agent. Set `enqueue: true` to release… - [Get Campaign Status](https://docs.osvi.ai/api-reference/endpoint/campaign_status.md): Returns a progress snapshot for a campaign: its settings, a breakdown of call outcomes so far, and the state of every contact upload and its calling queue. Cheap to poll. - [Add DND Number](https://docs.osvi.ai/api-reference/endpoint/dnd_add.md): Adds a number to an agent's do-not-disturb list so it is never called again. The number is normalized to canonical E.164 form. Propagates immediately to the calling engine. - [List DND Numbers](https://docs.osvi.ai/api-reference/endpoint/dnd_list.md): Returns the active do-not-disturb entries for an agent. Numbers on this list are skipped when the agent places calls. - [Remove DND Number](https://docs.osvi.ai/api-reference/endpoint/dnd_remove.md): Removes a number from an agent's do-not-disturb list. The agent may call the number again afterwards. - [Create Session](https://docs.osvi.ai/api-reference/endpoint/chat/create_session.md): Opens a new chat session for a customer with the specified agent. Any existing active session for the same customer + agent is closed first, so there is at most one active session per customer per agent. - [Send Message](https://docs.osvi.ai/api-reference/endpoint/chat/send_message.md): Sends an inbound customer message into the chat engine and returns the agent's reply synchronously. - [Get Active Session](https://docs.osvi.ai/api-reference/endpoint/chat/active_session.md): Looks up the active chat session(s) for a customer. - [Send Support / Control Command](https://docs.osvi.ai/api-reference/endpoint/chat/support.md): The operator control rail for a session. Send a plain `message` (delivered to the customer while a human has taken over), a control `command`, or both. - [Inject Context](https://docs.osvi.ai/api-reference/endpoint/chat/inject_context.md): Appends a single free-text context entry to a running session — for example a summary of an earlier voice call. The entry is added to the session's context bucket. - [Initiate a Phone Call](https://docs.osvi.ai/api-reference/endpoint/call.md): **Legacy — will be deprecated soon. Use the [versioned endpoint](/api-reference/endpoint/call_v1) (`POST /v1/call`) for new integrations.** - [Start Chat Session](https://docs.osvi.ai/api-reference/endpoint/start_chat_session.md): **Legacy — will be deprecated soon. Use the [Chat v1](/api-reference/endpoint/chat/create_session) endpoints (`POST /v1/chat/session`) for new integrations.** - [Send Chat Message](https://docs.osvi.ai/api-reference/endpoint/send_chat_message.md): **Legacy — will be deprecated soon. Use the [Chat v1](/api-reference/endpoint/chat/send_message) endpoint (`POST /v1/chat/inbound`) for new integrations.** - [Pause Chat Session](https://docs.osvi.ai/api-reference/endpoint/pause_chat_session.md): **Legacy — will be deprecated soon. The [Chat v1](/api-reference/endpoint/chat/support) endpoints replace session lifecycle control via `POST /v1/chat/session/:id/support`.** - [End Chat Session](https://docs.osvi.ai/api-reference/endpoint/end_chat_session.md): **Legacy — will be deprecated soon. Use the [Chat v1](/api-reference/endpoint/chat/support) `close` command (`POST /v1/chat/session/:id/support` with `{ "command": "close" }`) for new integrations.** - [Post call webhook](https://docs.osvi.ai/api-reference/endpoint/webhook.md): After each analyzed call, OSVI sends the post-call analysis results to every webhook integration configured on the agent (Agent → Post-Call Analysis → Integrations). The HTTP method, custom headers, and request body are all configurable per integration. The schema below describes the default **Auto*… ## OpenAPI Specs - [openapi](https://docs.osvi.ai/api-reference/openapi.json) ## Optional - [Blog](https://osvi.ai/blogs)