What does the Transliteration and Translation API do?
The Transliteration and Translation API converts text between English and supported Indian languages. It supports two operations:
- Transliteration — converts text character-by-character from one script to another (e.g., English letters → Hindi script), preserving pronunciation.
- Translation — converts the meaning of text from one language to another.
This service is provided by Bhashini on the ULI Platform.
Who can use this API?
Lenders onboarded to the ULI Platform who have subscribed to the Transliteration service on the Dev Portal. Separate subscriptions are required for Sandbox and Production environments.
What are the prerequisites before I can use this API?
Complete all common platform prerequisites (IP whitelisting, URL whitelisting, credentials, service subscription, and JWT token generation) as described in Getting Started with ULI Platform APIs. There are no additional prerequisites specific to this API.
Which languages are supported?
| Language | ISO 639-1 Code | Notes |
|---|---|---|
| English | en | |
| Hindi | hi | |
| Tamil | ta | |
| Marathi | mr | |
| Kannada | kn | |
| Bangla | bn | Available from v1.3 onwards |
| Telugu | te | Available from v1.3 onwards |
What are the API endpoints?
The URL structure follows this pattern: /{service}/{ver}/{srclang}/{tgtlang}
Transliteration:
| Environment | Example URL |
|---|---|
| Sandbox | https://extgw.nonprod.rbihub.io/transliterate/1.3/en/te |
| Production | https://extgw.api.rbihub.io/transliterate/1.3/en/te |
Translation:
| Environment | Example URL |
|---|---|
| Sandbox | https://extgw.nonprod.rbihub.io/translation/1.0/en/hi |
| Production | https://extgw.api.rbihub.io/translation/1.0/en/hi |
Method: POST
Replace srclang and tgtlang in the URL with the appropriate language codes from the table above. To change the target language, only the URL needs to be updated — no payload changes required.
What headers do I need to send?
| Header | Description |
|---|---|
Authorization | JWT token from the authentication server |
client-id | Your Client ID (Base64 encoded), provided during registration |
provider | Set to 111 for Bhashini |
content-type | Set to application/json |
x-env-route | Set to /sb for Sandbox only; omit for Production |
What do I send in the request body?
The input text must be Base64 encoded before sending.
{
"meta": {
"ver": "1.3",
"ts": "<ISO-8601 timestamp>",
"txncode": "<unique transaction ID>"
},
"data": {
"input-text": "<Base64 encoded source text>"
},
"hmac": "<SHA-256 hash of the data field>"
}
What does the response contain?
| Field | What it means |
|---|---|
status | success or fail |
errcode | E000 = success; any other code = error |
input-text | Base64 encoded transliterated or translated output text in the target language |
signature | Digital signature of the response data |
hmac | SHA-256 hash of the response data |
publickey | Platform public key for source verification |
Decode the input-text field from Base64 to get the final transliterated or translated text.
What do the error codes mean?
If the call fails, an error code will be returned in the errcode field. Refer to the Platform Error Code PDF for the full list of error codes.
Who do I contact if the API fails?
Write to support@rbihub.in with the following details:
- Service name:
Transliteration and Translation (Bhashini) - Environment: Sandbox or Production
- Provider code:
111 - Full request payload (headers + body)
- Error code and message received
- Screenshot or log of the error
- Status of prerequisites: IP whitelisting, URL whitelisting, service subscription, token generation
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article