Bolcho Docs Back to app

Get started

Quickstart

Two common flows: start a web (browser) call with an assistant, or place an outbound phone call over your SIP trunk.

1. Create an assistant

bash
curl -X POST https://api.bolchoai.in/v1/agents -H "Authorization: Bearer $VOXA_API_KEY" -H "Content-Type: application/json" \
  -d '{
    "name": "Support Bot",
    "config": {
      "systemPrompt": "You are a friendly support agent for Acme.",
      "firstMessage": "Hi! Thanks for calling Acme — how can I help?",
      "llmProvider": "openai",
      "llmModel": "gpt-4o-mini",
      "ttsProvider": "azure",
      "ttsVoiceId": "en-US-AvaMultilingualNeural"
    }
  }'

Publish it so calls run the live version:

bash
curl -X POST https://api.bolchoai.in/v1/agents/$AGENT_ID/publish -H "Authorization: Bearer $VOXA_API_KEY"

2a. Start a web call

Returns a LiveKit token + wsUrl — connect to it from the browser with the LiveKit client SDK to talk to the assistant.

bash
curl -X POST https://api.bolchoai.in/v1/calls -H "Authorization: Bearer $VOXA_API_KEY" -H "Content-Type: application/json" \
  -d '{ "agentId": "'$AGENT_ID'" }'

2b. Or place an outbound phone call

First connect a SIP trunk and import a number (see Phone numbers), then dial:

bash
curl -X POST https://api.bolchoai.in/v1/telephony/dial -H "Authorization: Bearer $VOXA_API_KEY" -H "Content-Type: application/json" \
  -d '{
    "fromNumberId": "'$NUMBER_ID'",
    "to": "+14155551234",
    "agentId": "'$AGENT_ID'"
  }'
After a call ends, fetch its transcript, recording, and analysis via the Calls API.