Install the SDK
Pick your language. We ship official packages for Node, Python, Go, Ruby, and PHP.
npm install @tellco/sdkOne REST API, three SDKs, sub-300 ms latency. Place AI calls, stream transcripts, and ship voice automations without rebuilding telephony.
// Initialize Tellco SDKimport { Tellco } from "@tellco/sdk"; const tellco = new Tellco({ apiKey: process.env.TELLCO_KEY,}); // Place a real outbound AI callconst call = await tellco.calls.create({ agent: "agent_apex_realty_v3", to: "+91 98765 43210", voice: "priya_hi",}); console.log(call.id);// → "call_8a4f7b9c-2e1d-4c5a..."Our live Swagger UI is wired straight to the production Tellco AI API. Sign in with your tenant API key, expand any endpoint, fill in the parameters, and hit Execute. The OpenAPI spec is also available as raw JSON for SDK generation.
Three commands. One curl. A real call on the wire.
Pick your language. We ship official packages for Node, Python, Go, Ruby, and PHP.
npm install @tellco/sdkGenerate from the dashboard. Only your server should ever see this key.
export TELLCO_KEY="sk_live_..."One request. The agent dials, talks, and reports back when it's done.
await tellco.calls.create({ agent: "default", to: "+91 98765 43210",});12 endpoints across calls, agents, numbers, voices, and campaigns. All idempotent where it matters. All paginated where it grows.
{ "id": "call_8a4f7b9c-2e1d-4c5a", "status": "queued", "agent": "agent_apex_realty_v3", "to": "+91 98765 43210", "created_at": "2026-05-08T14:32:18Z", "estimated_start": "2026-05-08T14:32:21Z", "links": { "self": "/v1/calls/call_8a4f7b9c-2e1d-4c5a", "transcript": "/v1/calls/call_8a4f7b9c-2e1d-4c5a/transcript" }}Same call, five languages. Drop into your codebase and run.
import { Tellco } from "@tellco/sdk"; const tellco = new Tellco({ apiKey: process.env.TELLCO_KEY }); const call = await tellco.calls.create({ agent: "agent_apex_realty_v3", to: "+91 98765 43210", voice: "priya_hi",}); console.log(call.id);Sub-200 ms delivery. Signed payloads. Automatic retries with exponential backoff.
call.startedFires when an agent picks up the line.
call.endedFires when the call hangs up — successful or otherwise.
call.transcript.partialStreams partial transcripts every 250 ms while the call is active.
call.transcript.finalFull transcript with timestamps, dispatched after call.ended.
call.sentiment.detectedFires when the AI detects a meaningful sentiment change.
agent.createdA new AI agent has been provisioned in your workspace.
campaign.completedAll calls in a bulk campaign have terminated.
number.purchasedA new India-optimized phone number is ready.
Type-safe, fully-tested, semver-versioned. All MIT-licensed and open-source.
Every error returns a stable code, a human message, and a docs link. Retry guidance baked in.
invalid_requestunauthorizedforbiddennot_foundconflictvalidation_errorrate_limitedserver_errorbad_gatewayservice_unavailable100 free minutes. No credit card. Test in production.