ker-ai docs

Introduction

ker-ai is a hosted Malayalam voice API — speech in, calls to your own functions, and spoken replies. Reach it over REST and a WebSocket; one language, done exceptionally.

ker-ai is a hosted Malayalam voice API. A user speaks; ker-ai transcribes, reasons, calls the functions your app already exposes, and speaks the result back — all behind an API you call from your own backend or client.

It is infrastructure, not an app. Your users never download a separate assistant — they talk to your product, and ker-ai is the service that makes that possible.

How it works

You reach ker-ai two ways, both documented in the API reference:

  • REST — service health and the provider/plan catalog.
  • WebSocket (/ws/voice) — the live voice channel: stream audio or text up, get transcripts, tool calls, and spoken replies back.

A turn is a short exchange of JSON events:

// client -> ker-ai
{ "type": "session.init", "payload": { "language": "ml-IN" } }
{ "type": "audio.chunk",  "payload": { "base64": "..." } }
 
// ker-ai -> client
{ "type": "transcript.final", "payload": { "text": "..." } }
{ "type": "function.call",     "payload": { "name": "add_to_cart", "arguments": {} } }
{ "type": "assistant.audio",   "payload": { "base64": "..." } }

Why Malayalam first

One underserved language done exceptionally beats ten done passably. Malayalam is the language ker-ai is built and proven around — speech recognition, the model's understanding, and the synthesized voice are all tuned for it first, never a dropdown afterthought.

Where to go next

  • Getting started — get a key and make your first call.
  • API reference — the session config, REST endpoints, and the WebSocket voice protocol in full.
  • Concepts — interaction modes, tool calling, providers, and recommendations.

Client SDKs — a Flutter SDK that wraps this API is in the works but not yet published. Until it ships, integrate against the API directly; see the SDK page for a preview of the planned surface.

On this page