Swagger Documentation & Playground
transl8 is an open-source translation API that leverages Microsoft Azure's Translator Cognitive Service, but made easy.
- You won't need to sign up for an Azure subscription to consume it.
- No cost to you.
- Less verbose HTTP requests.
- Easily implemented in many programming languages.
- Interactive Swagger playground and documentation.
IMPORTANT: The languages you use must be in the abbreviated format. The following is the list of abbreviated languages with their full-name counterparts:
Abbreviation (USE THIS) | Full Name |
---|---|
af | Afrikaans |
am | Amharic |
ar | Arabic |
as | Assamese |
az | Azerbaijani |
ba | Bashkir |
bg | Bulgarian |
bn | Bangla |
bo | Tibetan |
bs | Bosnian |
ca | Catalan |
cs | Czech |
cy | Welsh |
da | Danish |
de | German |
dv | Divehi |
el | Greek |
en | English |
es | Spanish |
et | Estonian |
fa | Persian |
fi | Finnish |
fil | Filipino |
fj | Fijian |
fr | French |
fr-CA | French (Canada) |
ga | Irish |
gu | Gujarati |
he | Hebrew |
hi | Hindi |
hr | Croatian |
ht | Haitan Creole |
hu | Hungarian |
hy | Armenian |
id | Indonesian |
is | Icelandic |
it | Italian |
iu | Inuktitut |
ja | Japanese |
ka | Georgian |
kk | Kazakh |
km | Khmer |
kmr | Kurdish (Northern) |
kn | Kannada |
ko | Korean |
ku | Kurdish (Central) |
ky | Kyrgyz |
lo | Lao |
lt | Lithuanian |
lv | Latvian |
lzh | Chinese (Literary) |
mg | Malagasy |
mi | Māori |
mk | Macedonian |
ml | Malayalam |
mn-Cyrl | Mongolian (Cyrillic) |
mn-Mong | Mongolian (Traditional) |
mr | Marathi |
ms | Malay |
mt | Maltese |
mww | Hmong Daw |
my | Myanmar (Burmese) |
nb | Norwegian |
ne | Nepali |
nl | Dutch |
or | Odia |
otq | Querétaro Otomi |
pa | Punjabi |
pl | Polish |
prs | Dari |
ps | Pashto |
pt | Portuguese (Brazil) |
pt-PT | Portugese (Portugal) |
ro | Romanian |
ru | Russian |
sk | Slovak |
sl | Slovenian |
sm | Samoan |
sq | Albanian |
sr-Cyrl | Serbian (Cyrillic) |
sr-Latn | Serbian (Latin) |
sv | Swedish |
sw | Swahili |
ta | Tamil |
te | Telugu |
th | Thai |
ti | Tigrinya |
tk | Turkmen |
tlh-Latin | Klingon (Latin) |
tlh-Piqd | Klingon (pIqaD) |
to | Tongan |
tr | Turkish |
tt | Tatar |
ty | Tahitian |
ug | Uyghur |
uk | Ukrainian |
ur | Urdu |
uz | Uzbek (Latin) |
vi | Vietnamese |
yua | Yucatec Maya |
yue | Cantonese (Traditional) |
zh-Hans | Chinese Simplified |
zh-Hant | Chinese Traditional |
- Endpoint: http://147.182.164.180:3000/translate
- Method: POST
Translates text to the target language.
Body request:
- text: Text to translate. (Required)
- to: Language to translate to. (Required)
- from: Language to translate from. (Optional)
- If language to translate from is not listed, it will automatically detect the language of the original text.
Schema (application/json):
{
"text": "Hello",
"to": "es",
"from": "en"
}
Response (application/json):
{
"text": "Hola",
"to": "es"
}
- Endpoint 1: http://147.182.164.180:3000/translate/to/{languageTo}/{text}
- Endpoint 2: http://147.182.164.180:3000/translate/from/{languageFrom}/to/{languageTo}/{text}
- Method: GET
Translating made even easier - instead of sending a response body, utilize the parameters to get a quick and hassle-free response. Test it right in your browser!
Example:
http://147.182.164.180:3000/translate/to/es/Hello World!
Response (application/json):
{
"text":"¡Hola mundo!",
"to":"es"
}
- Endpoint: http://147.182.164.180:3000/translate/languages
- Method: GET
Returns all available languages that can be translated to and from.
NOTE: The list of languages is long. The acceptable use of languages for input/output are the names of each object (ex: af, am, ar, es, fr, it, etc...). If you list the language (for example) as "English", you will receive an invalid language error.
Example:
GET http://147.182.164.180:3000/translate/languages
Response:
{
"af": {
"name": "Afrikaans",
"nativeName": "Afrikaans",
"dir": "ltr"
},
"am": {
"name": "Amharic",
"nativeName": "አማርኛ",
"dir": "ltr"
},
"ar": {
"name": "Arabic",
"nativeName": "العربية",
"dir": "rtl"
},
"as": {
"name": "Assamese",
"nativeName": "অসমীয়া",
"dir": "ltr"
},
...
}
- Endpoint: http://147.182.164.180:3000/dictionary/lookup
- Method: POST
Returns a list of possible translations for the requested word. Includes possible meanings of the "from" language, and the part of speech the word is in that language.
Body request:
- text: Text to translate. (Required)
- to: Language to translate to. (Required)
- from: Language to translate from. (Optional)
- If language to translate from is not listed, it will automatically detect the language of the original text.
Schema (application/json):
{
"text": "Hello"
"to": "fr"
"from": "en"
}
Response (application/json):
{
"Dictionary_Lookup": [
{
"Translation": "bonjour",
"Parts_of_Speech": "NOUN",
"Meanings": [
"hello",
"hi",
"morning",
"hey",
"greetings"
]
},
{
"Translation": "allô",
"Parts_of_Speech": "NOUN",
"Meanings": [
"hello",
"hallo"
]
},
{
"Translation": "bonsoir",
"Parts_of_Speech": "NOUN",
"Meanings": [
"hello",
"hi",
"evening",
"goodnight",
"hiya"
]
},
{
"Translation": "salut",
"Parts_of_Speech": "NOUN",
"Meanings": [
"hi",
"salvation",
"hey",
"hello",
"bye",
"greeting",
"hiya"
]
}
]
}
- Endpoint: http://147.182.164.180:3000/dictionary/examples
- Method: POST
Looks up examples of the use of the original and translated word in context.
Body request:
- text: Text to translate. (Required)
- translation: Translation of the text. (Required)
- textLanguage: Language of the text. (Required)
- translationLanguage: Language of the translation. (Required)
Schema:
{
"text": "Incredible",
"translation": "Incredibile",
"textLanguage": "en",
"translationLanguage": "it"
}
Response (application/json):
[
{
"normalizedSource": "incredible",
"normalizedTarget": "Incredibile",
"examples": [
{
"sourcePrefix": "An almost ",
"sourceTerm": "incredible",
"sourceSuffix": " tale of triumph and tragedy.",
"targetPrefix": "Un racconto quasi ",
"targetTerm": "incredibile",
"targetSuffix": " di Trionfo e tragedia."
}
]
}
]
- Endpoint: http://147.182.164.180:3000/detect
- Method: POST
Analyzes the word sent and returns the language it is from, along with a confidence float value from 0 (unsure) to 1 (sure). Also sends if the language is able to be translated to and from.
Body request:
- text: Text to be detected. (Required)
Schema (application/json):
{
"text": "Bonjour"
}
Response (application/json)
[
{
"language": "fr",
"score": 1,
"isTranslationSupported": true,
"isTransliterationSupported": false
}
]
- 400035 - The source language is not valid.
- The "to" language entered must be within the list of supported langauges.
- 400036 - Target language is not valid.
- The "from" language entered must be within the list of supported languages.