> For clean Markdown of any page, append `.md` to the page URL.
> For a complete documentation index, see https://docs.sarvam.ai/llms.txt.
> For full documentation content in one file, see https://docs.sarvam.ai/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.sarvam.ai/_mcp/server.

# Supported languages

> All language codes accepted by the Sarvam AI Voice Cloning API as language_code, with native-script guidance and code-mixed text support.

The Voice Cloning API supports synthesis in 12 Indian languages. Pass any of the following codes as `language_code` in your request.

## Language codes

| Language         | Code    |
| ---------------- | ------- |
| Assamese         | `as-IN` |
| Bengali          | `bn-IN` |
| English (Indian) | `en-IN` |
| Gujarati         | `gu-IN` |
| Hindi            | `hi-IN` |
| Kannada          | `kn-IN` |
| Malayalam        | `ml-IN` |
| Marathi          | `mr-IN` |
| Odia             | `od-IN` |
| Punjabi          | `pa-IN` |
| Tamil            | `ta-IN` |
| Telugu           | `te-IN` |

Codes follow the BCP-47 standard. If you need a language not listed here, contact your account manager.

## Cross-lingual support

Every supported language can be synthesized from a reference clip in any other supported language. The reference clip's language does not need to match `language_code`. See [Clone Across Languages](/api/api-guides-tutorials/voice-cloning/how-to/clone-across-languages) for details.

## Script support

The `text` field accepts native scripts for each language. Always prefer the native script for the most accurate pronunciation:

| Language  | Native script       |
| --------- | ------------------- |
| Assamese  | অসমীয়া             |
| Bengali   | বাংলা               |
| Gujarati  | ગુજરાતી             |
| Hindi     | हिन्दी (Devanagari) |
| Kannada   | ಕನ್ನಡ               |
| Malayalam | മലയാളം              |
| Marathi   | मराठी (Devanagari)  |
| Odia      | ଓଡ଼ିଆ               |
| Punjabi   | ਪੰਜਾਬੀ (Gurmukhi)   |
| Tamil     | தமிழ்               |
| Telugu    | తెలుగు              |

## Code-mixed text

Code-mixed input (e.g. Hindi with embedded English words written in Roman script) is supported, and frequently appears in real-world Indian content. The model handles common mixing patterns natively:

```bash
curl -s -X POST "https://api.sarvam.ai/voices/clone" \
  -H "api-subscription-key: $SARVAM_API_KEY" \
  -F "text=मैं office जा रहा हूँ, meeting at 10 AM है।" \
  -F "language_code=hi-IN" \
  -F "ref_audio=@reference.wav"
```

For best results with code-mixed text, set `language_code` to the dominant language (Hindi in the example above).

Pre-TTS text normalization (`enable_text_normalization`) converts numbers, currencies, and dates to their spoken form before synthesis. It is supported for all 12 languages listed above and is skipped silently for any other code.