Skip to content

Explore CallMissed

Indian language AI

Indian language AI, measured honestly.

Twenty-three Indian languages can be transcribed and translated to English through one endpoint. Eleven of them have a published voice to answer in. That gap is the most useful thing on this page, so it is the first thing on it — along with every model id, language code and price behind the claim.

23
languages transcribed and translated
11
languages with a voice to reply in
5
transcripts of the same Hinglish audio

What works in which language

This is two published lists printed side by side, not a marketing summary. The transcription column carries the saaras:v3 language codes from the model's own allowlist; the voice column is the set of codes bulbul:v3 accepts. Where there is a code, you can paste it straight into a request — filter the table to see where the two columns diverge.

All 23 languages

Indian language coverage for transcription, translation to English and text to speech
LanguageNativeTranscribe (saaras code)Translate to EnglishSpeak it back (bulbul code)
Hindiहिन्दीhi-INYes — mode=translatehi-IN
Bengaliবাংলাbn-INYes — mode=translatebn-IN
Gujaratiગુજરાતીgu-INYes — mode=translategu-IN
Kannadaಕನ್ನಡkn-INYes — mode=translatekn-IN
Malayalamമലയാളംml-INYes — mode=translateml-IN
Marathiमराठीmr-INYes — mode=translatemr-IN
Odiaଓଡ଼ିଆod-INYes — mode=translateod-IN
Punjabiਪੰਜਾਬੀpa-INYes — mode=translatepa-IN
Tamilதமிழ்ta-INYes — mode=translateta-IN
Teluguతెలుగుte-INYes — mode=translatete-IN
English (India)Englishen-INYes — mode=translateen-IN
Urduاُردُوur-INYes — mode=translateNo voice published
Assameseঅসমীয়াas-INYes — mode=translateNo voice published
Bodoबड़ोbrx-INYes — mode=translateNo voice published
Dogriडोगरीdoi-INYes — mode=translateNo voice published
Kashmiriکٲشُرks-INYes — mode=translateNo voice published
Konkaniकोंकणीkok-INYes — mode=translateNo voice published
Maithiliमैथिलीmai-INYes — mode=translateNo voice published
Manipuriꯃꯅꯤꯄꯨꯔꯤmni-INYes — mode=translateNo voice published
Nepaliनेपालीne-INYes — mode=translateNo voice published
Sanskritसंस्कृतम्sa-INYes — mode=translateNo voice published
Santaliᱥᱟᱱᱛᱟᱲᱤsat-INYes — mode=translateNo voice published
Sindhiسنڌيsd-INYes — mode=translateNo voice published

A voice agent needs both halves, so it covers the 11 rows with a code. The remaining 12 are still useful — transcribe the call, translate it, reply over WhatsApp or email. Every code in the table is from the model allowlists; leave the language field out of a transcription request and the model detects it.

Pick a language, get the three requests

Transcribe and translate work for every row. The third request only exists where a published voice takes the language code — on the other rows the honest answer is text, not audio.

Transcribe a file
curl -X POST https://api.callmissed.com/v1/audio/transcriptions \
  -H "Authorization: Bearer cm_your_key" \
  -F file=@call.wav \
  -F model=saaras:v3 \
  -F language=hi-IN

-F language=hi-IN

Translate it to English
curl -X POST https://api.callmissed.com/v1/audio/transcriptions \
  -H "Authorization: Bearer cm_your_key" \
  -F file=@call.wav \
  -F model=saaras:v3 \
  -F language=hi-IN \
  -F mode=translate

-F language=hi-IN -F mode=translate

Speak the reply
curl -X POST https://api.callmissed.com/v1/audio/speech \
  -H "Authorization: Bearer cm_your_key" \
  -H "Content-Type: application/json" \
  -d '{"model": "bulbul:v3", "voice": "shubh", "language": "hi-IN", "input": "Your text here", "response_format": "mp3"}' \
  --output speech.mp3

-d '{"language": "hi-IN", …}'

Nobody speaks only one language in one sentence

A customer says "bhaiya woh order cancel kar do please" and every word of it matters. The mode field on saaras models decides which of five transcripts you get back from that one recording — you do not have to choose a different model or a different product.

-F mode=codemix

Code-mixed output — the Indic and English words each kept as they were spoken.

One recording comes back as

मेरा order कब deliver होगा?

Simulated example — your transcript depends on your audio.

See every mode with a worked request · Audio translation reference

The models that carry the claim

Eight ids, three surfaces, one API key. Each line is the claim the reference makes for that model, not a summary of it. Prices come from the same table that bills the request.

Speech to text

  • saaras:v3Free tier

    23 languages with auto-detection, all five output modes, and 8 kHz telephony audio.

    $0.3125 / hour

  • saaras:v4Free tier

    The docs state 24 languages and all five modes on one model, but do not name the twenty-fourth.

    $0.3125 / hour

  • gnani-prisma-v2.5

    India-first telephony transcription across 10 Indian languages, with code-switching.

    $0.2813 / hour

Text to speech

  • bulbul:v3Free tier

    37 voices across 11 language codes. Every voice speaks every code.

    $0.3125 / 10K chars

  • sonic-3.6

    Native-quality Hindi and Hinglish among 44 languages, with five named native Hindi speakers.

    $0.5208 / 10K chars

  • gnani-timbre-v2.0

    73 voices across English, Hindi and other Indian languages, tuned for telephony.

    $0.2813 / 10K chars

LLM

  • sarvam-105bFree tier

    A 105B mixture-of-experts model for reasoning in Indic languages, with a 128K context.

    $0.3646 in · $0.3646 out / 1M tokens

  • sarvam-105b-conversationsFree tier

    The same family tuned for spoken dialogue, which is what a voice agent turns on.

    $0.3646 in · $0.3646 out / 1M tokens

Browse every model · Plans and credits · The inference API

Six things to know before you build

Indic language support has edges, and every one of these is written down in the reference. Reading them now is cheaper than finding them in production.

  • 01

    Twelve of these languages can be heard, not spoken.

    Transcription and translation cover all twenty-three. The text-to-speech catalogue names voices for eleven. Until that changes, an Urdu or Santali caller can be understood and answered in text, but not answered out loud.

  • 02

    One model does not do both halves.

    Speech recognition, synthesis and reasoning are three different models chosen per request. A voice agent names one of each, and the languages it truly handles are the ones where both the transcriber and the voice support them.

  • 03

    Two code conventions, not one.

    bulbul:v3 takes region codes such as hi-IN and ta-IN. sonic-3.6 takes base codes such as hi and en. Sending the wrong shape is the most common first-request mistake.

  • 04

    ink-2 covers Hindi but no other Indic language, and fails quietly.

    It accepts en, fr, hi, ja and es. Send Tamil or Bengali audio and it does not raise an error — it just transcribes badly. Use saaras:v3 or saaras:v4 for the other Indian languages, and ink-whisper where you need broad non-Indic coverage.

  • 05

    No expressive markup on the Indic voices.

    bulbul:v3 and gnani-timbre-v2.0 do not support SSML or pause markup. An ellipsis written for a dramatic pause gets read out as dots. Shape delivery with temperature and with the humanize field instead.

  • 06

    A live call keeps the language it started with.

    Session configuration is fixed once a voice session begins, so the language cannot be switched mid-call. Route to a second agent instead of trying to change it in place.

Indian language AI questions

Which Indian languages does the speech to text API support?

saaras:v3 covers 23 languages: Hindi, Bengali, Gujarati, Kannada, Malayalam, Marathi, Odia, Punjabi, Tamil, Telugu, Urdu, Assamese, Bodo, Dogri, Kashmiri, Konkani, Maithili, Manipuri, Nepali, Sanskrit, Santali, Sindhi and English. It detects the language itself if you leave the language field out, and it handles 8 kHz telephony audio. saaras:v4 is documented as covering 24.

Can the AI speak back in every language it understands?

No, and it is worth knowing before you design around it. Text to speech names voices for 11 language codes on bulbul:v3 — hi-IN, bn-IN, gu-IN, kn-IN, ml-IN, mr-IN, od-IN, pa-IN, ta-IN, te-IN and en-IN. The other 12 are transcription and translation only today.

How is Hinglish and code-switching handled?

With the mode field on saaras models. codemix returns the Indic and English words each in the script they were spoken in, translit returns the whole utterance in Latin script, translate returns English, and verbatim keeps the filler words. One field, five different transcripts of the same audio.

What does Indian language AI cost?

Speech to text on saaras:v3 is $0.3125 / hour, billed on true audio duration. Text to speech on bulbul:v3 is $0.3125 / 10K chars. sarvam-105b is $0.3646 in · $0.3646 out / 1M tokens. All three are on the free tier.

Can a phone call run in an Indian language end to end?

Yes, where the language has both a transcriber and a voice. A voice agent names an STT model, an LLM and a TTS model plus a BCP-47 language such as hi-IN, and the default voice is shubh. The language is fixed for the duration of that session.

Do I need a different API for each language?

No. It is the same endpoint and the same cm_ API key throughout — the language is a field in the request body, not a different product. Switching from Hindi to Tamil is a one-word change.