API Reference
Speech To Speech · REST
https://api.shabd.tech/v1/speech-to-speechFacilitates seamless spoken language translation by converting speech from one language to another. Maintains natural voice characteristics, making it ideal for multilingual communication and real-time applications.
Headers
x-api-keystringrequiredAPI Key for authentication
- Example:
<your-api-key>
Content-TypestringrequiredContent type of the request body
- Example:
multipart/form-data
x-request-idstringrequiredUnique request ID in UUID format
- Example:
550e8400-e29b-41d4-a716-446655440000
Request bodymultipart/form-data
sourceLanguagestringrequiredSource language of the speech
- Example:
english
targetLanguagestringrequiredTarget language to translate to
- Example:
hindi
genderstringrequiredGender for voice
- Example:
male
filefileoptionalAudio file to be translated. Optional when
audioUrlis supplied.audioUrlstringoptionalPublic http(s) URL to fetch the audio from, as an alternative to uploading
file. Exactly one offileoraudioUrlis required; if both are sent the uploaded file wins. The URL must be publicly reachable and the downloaded audio is subject to the same size limit as an upload.- Example:
https://example.com/audio/sample.wav
formatstring or nulloptionalOutput audio format (default "wav")
- Example:
wav
speedstring or nulloptionalSpeed of speech (fast, normal, or slow). Default is normal if not specified.
- Example:
normal
inputSampleRatenumber or nulloptionalSample rate of the audio (default 16000)
- Example:
16000
sampleRatenumber or nulloptionalAudio Sample rate for synthesis (e.g., 48000)
- Example:
48000
projectIdstring or nulloptionalOptional project identifier
- Example:
<your-project-id-here>
stylestring or nulloptionalTranslation style ("conversational" or "formal")
- Allowed:
conversationalformal- Default:
conversational
Responses
Translated speech. When responseType is "audio" (default) the raw audio bytes are returned as application/octet-stream. When responseType is "base64" a JSON object is returned with the audio base64-encoded.
Bodyapplication/json
statusbooleanoptional- Example:
true
transcriptstringoptional- Example:
hello
translationstringoptional- Example:
नमस्ते
audiostringoptionalBase64-encoded audio
- Example:
UklGR... (base64)
mimeTypestringoptional- Example:
audio/wav
fileNamestringoptional- Example:
output.wav
Example response
{ "status": true, "transcript": "hello", "translation": "नमस्ते", "audio": "UklGR... (base64)", "mimeType": "audio/wav", "fileName": "output.wav"}Bad Request - The request is malformed or contains invalid parameters.
Bodyapplication/json
statusbooleanoptional- Example:
false
messagestringoptional- Example:
Invalid input parameters.
Example response
{ "status": false, "message": "Invalid input parameters."}Unauthorized Access - Authentication credentials are missing or invalid.
Bodyapplication/json
statusbooleanoptional- Example:
false
messagestringoptional- Example:
Unauthorized access.
Example response
{ "status": false, "message": "Unauthorized access."}Usage Limit Exceeded - The usage limit for the API has been exceeded.
Bodyapplication/json
statusbooleanoptional- Example:
false
messagestringoptional- Example:
Limit Exceeded
Example response
{ "status": false, "message": "Limit Exceeded"}Internal server error
Bodyapplication/json
statusbooleanoptional- Example:
false
messagestringoptional- Example:
An unexpected error occurred. Please try again later.
Example response
{ "status": false, "message": "An unexpected error occurred. Please try again later."}