--- openapi: 3.1.0 components: schemas: Script: type: string enum: - Devanagari - Bengali - Gurmukhi - Gujarati - Odia - Tamil - Telugu - Kannada - Malayalam - English - Urdu - OlChiki - Meitei Language: type: string enum: - English - Hindi - Bengali - Marathi - Telugu - Tamil - Gujarati - Urdu - Bhojpuri - Kannada - Odia - Malayalam - Punjabi - Chhattisgarhi - Assamese - Maithili - Magahi - Santali - Kashmiri - Kashmiri_Arabic - Nepali - Sindhi - Sindhi_Arabic - Dogri - Konkani - Manipuri - Manipuri_Bengali - Bodo - Sanskrit - Auto NormalizeInput: type: object required: - text - language description: Input needed for Text Normalization. properties: language: $ref: '#/components/schemas/Language' type: string examples: - English description: Language (Indic/English) of input-text text: type: string examples: - "While docking preparations are underway, SDX01 and SDX02 are 105 meters\ \ apart in orbit as of 12 January IST 3:10 a.m." description: Unicode text which needs to be normalized. TranslateInput: type: object required: - inputText - inputLanguage - outputLanguage description: Input needed for Transliteration. properties: outputLanguage: $ref: '#/components/schemas/Language' type: string examples: - Hindi description: Target language (Indic/English) in to which the inputText needs to be translated to inputLanguage: $ref: '#/components/schemas/Language' type: string examples: - English description: Source language (Indic/English) of input-text inputText: type: string examples: - Chandrayaan-3 is the third and most recent lunar Indian Space Research exploration mission under the Chandrayaan programme of ISRO. It consists of a lander named Vikram and a rover named Pragyan similar to Chandrayaan-2. Its propulsion module behaves like an Orbiter. The propulsion module carries the lander and rover configuration until the spacecraft is in a 100-kilometre (62 mi) lunar orbit. description: Unicode text which needs to be transliterated. TransliterateInput: type: object required: - inputText - inputScript - outputScript description: Input needed for Transliteration. properties: inputScript: $ref: '#/components/schemas/Script' type: string examples: - Tamil description: Script in which input text is given outputScript: $ref: '#/components/schemas/Script' type: string examples: - Kannada description: Script in which the output text is expected inputText: type: string examples: - கடல்களுக்கான உரோமானியக்கடவுள் நெப்டியூன் என்பவரின் பெயரே ஞாயிற்றுத் தொகுதியில் உள்ள கோளான நெப்டியூன் கோளிற்கு சூட்டப்பட்டது. description: Unicode text which needs to be transliterated. TextToSpeechInput: type: object required: - text - language - voiceName description: Input needed for synthesizing speech. properties: voiceName: type: string examples: - Female1 description: "Voice Name: Female1, Male1 etc." language: $ref: '#/components/schemas/Language' type: string examples: - Hindi description: Language (Indic/English) of input-text text: type: string examples: - "सौर मंडल में सूर्य और वह खगोलीय पिंड सम्मलित हैं, जो इस मंडल में एक द\ ूसरे से गुरुत्वाकर्षण बल द्वारा बंधे हैं।" description: Unicode text for which speech needs to be synthesized. securitySchemes: IdToken: type: http scheme: bearer bearerFormat: JWT JWT: type: http scheme: bearer bearerFormat: JWT info: description: "These APIs provide access to Bhashini.ai Text-to-Speech (TTS), Translation\ \ and OCR services" title: Bhashini.ai REST APIs version: 1.0.0 paths: /authorize: post: responses: "200": description: OK security: - IdToken: [] /v1/normalize: post: summary: Indic Text Normalizer description: Expand numbers and abbreviations in English or Indian language text parameters: - description: Specify your API key (consisting of 32 characters) for going beyond character limits name: X-API-KEY in: header schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/NormalizeInput' required: true responses: default: description: Normalized text content: text/plain: {} "400": description: Invalid text/language in the request body "401": description: Invalid API key /v1/ocr: post: summary: Run Cloud OCR description: Run Cloud OCR on the uploaded document/image. parameters: - description: Specify your API key (consisting of 32 characters) for going beyond character limits name: X-API-KEY in: header schema: type: string requestBody: content: multipart/form-data: schema: type: object properties: file: type: - object - string format: binary required: true responses: default: description: Recognized Text content: application/xml: {} "400": description: Invalid file in the request body or missing API key "401": description: Invalid API key /v1/synthesize: post: summary: Synthesize speech from text description: Use Bhashini Neural TTS engine to synthesize speech from Unicode text parameters: - description: Specify your API key (consisting of 32 characters) for going beyond rate limits and/or getting access to premium voices name: X-API-KEY in: header schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/TextToSpeechInput' required: true responses: default: description: Synthesized speech content: audio/mpeg: {} "400": description: Invalid language/voiceName/text in the request body "401": description: Invalid API key /v1/translate: post: summary: "Translate text: English->Indic or Indic->English or Indic->Indic" description: Translate text from English to Indian language or Indian language to English or from one Indian language to another. parameters: - description: Specify your API key (consisting of 32 characters) for going beyond character limits name: X-API-KEY in: header schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/TranslateInput' required: true responses: default: description: Text translated into target language content: text/plain: {} "400": description: Invalid inputText/inputLanguage/outputLanguage in the request body "401": description: Invalid API key /v1/transliterate: post: summary: Transliterate Indic text description: See Indic text in desired script requestBody: content: application/json: schema: $ref: '#/components/schemas/TransliterateInput' required: true responses: default: description: Text transliterated into target script content: text/plain: {} "400": description: Invalid inputText/inputScript/outputScript in the request body /v2/ocr: post: summary: Run Cloud OCR description: Run Cloud OCR on the uploaded document/image. requestBody: content: multipart/form-data: schema: type: object properties: file: type: - object - string format: binary required: true responses: default: description: Recognized Text content: application/xml: {} "400": description: Invalid file in the request body or missing API key security: - IdToken: [] /v2/synthesize: post: summary: Synthesize speech from text description: Use Bhashini.AI Neural TTS engine to synthesize speech from Unicode text requestBody: content: application/json: schema: $ref: '#/components/schemas/TextToSpeechInput' required: true responses: default: description: Synthesized speech content: audio/mpeg: {} "400": description: Invalid language/voiceName/text in the request body security: - IdToken: [] /v2/translate: post: summary: "Translate text: English->Indic or Indic->English or Indic->Indic" description: Translate text from English to Indian language or Indian language to English or from one Indian language to another. requestBody: content: application/json: schema: $ref: '#/components/schemas/TranslateInput' required: true responses: default: description: Text translated into target language content: text/plain: {} "400": description: Invalid inputText/inputLanguage/outputLanguage in the request body security: - IdToken: [] servers: - url: https://bhashini.ai