---
title: "Speech To Text Translate"
method: POST
path: "/speech-to-text-translate"
tags: ["speechToText"]
---

# Speech To Text Translate

`POST /speech-to-text-translate`

## Speech to Text Translation API

This API automatically detects the input language, transcribes the speech, and translates the text to English.

### Available Options:
- **REST API** (Current Endpoint): For quick responses under 30 seconds with immediate results
- **Batch API**: For longer audio files [Follow this documentation](https://docs.sarvam.ai/api-reference-docs/api-guides-tutorials/speech-to-text/batch-api)
  - Supports diarization (speaker identification)

### Note:
- Pricing differs for REST and Batch APIs
- Diarization is only available in Batch API with separate pricing
- Please refer to [here](https://docs.sarvam.ai/api-reference-docs/pricing) for detailed pricing information

## Headers

- `api-subscription-key` string, required

## Response `200`

Successful Response

- SarvamModelAPISpeechToTextTranslateResponse
  - `request_id` string, nullable, required
  - `transcript` string, required — Transcript of the provided speech
  - `language_code` 'hi-IN' | 'bn-IN' | 'kn-IN' | 'ml-IN' | 'mr-IN' | 'od-IN' | 'pa-IN' | 'ta-IN' | 'te-IN' | 'gu-IN' | 'en-IN' | 'as-IN' | 'ur-IN' | 'ne-IN' | 'kok-IN' | 'ks-IN' | 'sd-IN' | 'sa-IN' | 'sat-IN' | 'mni-IN' | 'brx-IN' | 'mai-IN' | 'doi-IN', required — Languages supported for Speech-to-Text-Translate (detected source language). **saaras:v2.5 supports (11 languages):** hi-IN, bn-IN, kn-IN, ml-IN, mr-IN, od-IN, pa-IN, ta-IN, te-IN, gu-IN, en-IN For additional languages (as-IN, ur-IN, ne-IN, kok-IN, ks-IN, sd-IN, sa-IN, sat-IN, mni-IN, brx-IN, mai-IN, doi-IN), use saaras:v3 via the `/speech-to-text` endpoint with `mode="translate"`.
  - `diarized_transcript` SarvamModelAPIDiarizedTranscript
    - `entries` SarvamModelAPIDiarizedEntry[], required — List of diarized transcript entries.
      - `transcript` string, required — transcript of the segment of that audio
      - `start_time_seconds` number, double, required — Start time of the word in seconds.
      - `end_time_seconds` number, double, required — End time of the word in seconds.
      - `speaker_id` string, required — Speaker ID for the word.
  - `language_probability` number, double, nullable — Float value (0.0 to 1.0) indicating the probability of the detected language being correct. Higher values indicate higher confidence. **When it returns a value:** - When `language_code` is not provided in the request - When `language_code` is set to `unknown` **When it returns null:** - When a specific `language_code` is provided (language detection is skipped) The parameter is always present in the response.

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `422` — Unprocessable Entity
- `429` — Quota Exceeded
- `500` — Internal Server Error
- `503` — Service Overloaded

---

[API](https://skmtc.dev/sarvam/apis/endpoints.md) · [All operations](https://skmtc.dev/sarvam/apis/endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/sarvam/endpoints/revisions/2b7f7955b147/schema)
