01everything builtchecked against the live api

What is actually working

39 features shipped, each naming the endpoint behind it and checked against the running API as this page loaded. The last group is what does not work yet, because a list without it would be a sales page rather than a status page.

Engine8
…Live call websocket99ms to first audio, 20ms frames, three audio formats, server-authoritative turnsdocs/health
…Speech to text40ms, 11 Indian languages, language identified with no code supplieddocs/v1/models
…Speech synthesis20 preset voices, RTF 0.83, emotion tags, Indian number formattingdocs/v1/models
builtSemantic turn detectionEnds a turn at 82ms when the sentence is clearly finished. 24% of turnsdocs
builtLive partial transcriptsCaptions while the caller is still talking. 42ms cost, zero cost to the final textdocs
builtBarge-inInterrupt at 200ms, gated at three words so backchannel does not cut it offdocs
builtOne voice across languagesHindi to Tamil mid-call, same speaker. 0.818 on speaker similaritydocs
builtPronunciation dictionarySpell a name in the target script so it is not read by guessworkdocs
Build10
…Saved, versioned agentsImmutable versions, rollback in one click, a live call pinned to its versionopen → · docs/v1/agents
…Settings schema51 settings read out of the engine, so the form cannot drift from the productdocs/v1/config-schema
builtKnowledge basePDF, DOCX, TXT. An English document answers a Tamil caller. 100% Recall@3open → · docs
builtCustom HTTP toolsReach your systems mid-call. Private and link-local addresses refuseddocs
builtVariables and extractionFill the prompt per caller; pull facts back out after the calldocs
builtCall goalsScored against the transcript afterwards. Met, not met, or uncleardocs
builtTest call in the browserYour microphone, the same 8kHz mu-law path a phone call usesopen →
…Write an agent from a sentenceDescribe the business, get a prompt written for a phone call. Six settings, validated before you see themopen → · docs/v1/config-schema
builtFive templatesPayment reminder, delivery helpdesk, abandoned cart, appointment reminder, lead qualificationopen → · docs
…Voice picker you can hearPreset voices with a listen button, or upload a recording and the agent speaks in that person's voice. Auditioned through a simulated phone line, which is what your callers hearopen → · docs/v1/models
Calls6
builtLifecycle hooksCalled before the call for variables, after it with everything the call produceddocs
builtTransfer to a personThe agent asks for a handover and says the line while your provider bridgesdocs
partialVoicemail detectionBeep and phrase detection, deliberately reluctant. Reports rather than hangs up
Thresholds are reasoned, not fitted to real Indian voicemail recordings
builtNudges and call limitsPrompt a caller who has gone quiet; hang up on a call that never endsdocs
builtRecordingsBoth sides on one timeline, mixed so real overlap is audible. Off by defaultopen → · docs
…Call log and transcriptsEvery call, its transcript, extracted values and goal verdictopen → · docs/v1/calls
Telephony6
…Twilio, Exotel, Plivo inboundPoint a number at an agent. Format negotiated, 100ms frames split to 20msopen → · docs/v1/phone-numbers
…Number routing+91…, 91… and 0… all reach the same agentopen → · docs/v1/phone-numbers
…Outbound through your accountYour credentials, encrypted at rest. Your number, your minutesopen → · docs/v1/provider-accounts
…CampaignsCSV in, calls out. 09:00–21:00 IST enforced, retries, do-not-call at dial timeopen → · docs/v1/campaigns
…Call one number nowOne dial, no campaign. Still refuses a suppressed number. Also the button for hearing an agent on a real handsetopen → · docs/v1/provider-accounts
…Caller-ID rotationSpread a campaign across several numbers, round-robin and exactly even, so none gets flagged as spamopen → · docs/v1/provider-accounts
Measure6
…AnalyticsSuccess over calls that have a goal, latency as percentiles, daily trendopen → · docs/v1/analytics/summary
…Transcript searchFull text across every call, and it works in Devanagari and Tamilopen → · docs/v1/analytics/search?q=test
builtFailure analyserReads the calls that missed their goal and groups them by root causeopen → · docs
…Signed webhooksHMAC over timestamp and body, retried over 20 minutes, every attempt loggedopen → · docs/v1/webhooks/events
…Saved boardsA question about your calls, saved. Stores the filters, never a stale snapshot of the answeropen → · docs/v1/boards
partialUsageMinutes, calls and goal rate for your line, counted from real rows in the call log
Usage, not billing. There is no invoice, no payment method and no metered price
open → · docs/v1/analytics/summary
Account5
…Accounts and isolationTwo customers on one deployment cannot see each other. 44 checksopen →/v1/me
…Sign inYour password goes to the identity provider, never to us, so we cannot log or leak oneopen →/v1/auth/config
…API keysCreate and revoke. Revocation is immediate; the row stays for the audit trailopen →/v1/api-keys
…Call recordingsStored off the call path and served to a browser by short-lived signed linkdocs/v1/calls
builtNo rate limits216 requests including 30-way parallel, zero 429s, zero 503sdocs
Not done yet4
blockedYour own cloned voiceTested and rejected: cross-language similarity 0.149 against a 0.213 stranger floor
Rejected on measured quality, not schedule. See the limits page for the numbers
docs
blockedRoles and read-only keysToday a key is full account access, which is right for one person and wrong for a team
Accounts are isolated from each other; it is within an account that there is one level
docs
blockedIndia-hosted callsOur compute is not in India yet, so audio makes a longer trip than it will
Adds roughly 200ms for an Indian caller, and it is why we cannot answer data residency yet
docs
partialASR hotwordsBias transcription toward your product and person names
Built and unit-tested, not yet wired into the transcriber
docs
How to read the badgeslive means the endpoint answered just now. built means the feature exists but has no endpoint a browser can probe without a key. partial and blocked are explained on the row. A 401 counts as live — the endpoint was reached and refused us, which is correct behaviour and all an unauthenticated check can establish.