Dọkumenti
Integrate powerful translation into your applications with our simple REST API.
Bido
TranslateAPI na-enye REST interface dị mfe maka ịsụgharị ngwe n'etiti 180+ asụsụ. All API endpoints return JSON responses.
1. Get Your API Key
Kewapụta akaụntụ ọha na eze ma mepụta kii API gị site na dashes:
- Akaụntụ translateapi.ai/signup
- Gaa na Dashboard → Kii API
- Pịa "Kewapụta Kii API" ma debata kii gị
Kii API na-amalite na ta_ ékpé site ná akara héks 56.
https://api.translateapi.ai/api/v1/2. Mee arịrịọ mbụ gị
Wepụ YOUR_API_KEY na kii site na dashesbọchị gị:
curl -X POST https://api.translateapi.ai/api/v1/translate/ \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"text": "Hello, world!",
"target_language": "es"
}'
import requests
response = requests.post(
"https://api.translateapi.ai/api/v1/translate/",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"text": "Hello, world!",
"target_language": "es"
}
)
result = response.json()
print(result["translated_text"]) # "Hola, mundo!"
const response = await fetch("https://api.translateapi.ai/api/v1/translate/", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
body: JSON.stringify({
text: "Hello, world!",
target_language: "es"
})
});
const result = await response.json();
console.log(result.translated_text); // "Hola, mundo!"
$ch = curl_init("https://api.translateapi.ai/api/v1/translate/");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_API_KEY",
"Content-Type: application/json"
],
CURLOPT_POSTFIELDS => json_encode([
"text" => "Hello, world!",
"target_language" => "es"
])
]);
$result = json_decode(curl_exec($ch), true);
echo $result["translated_text"]; // "Hola, mundo!"
payload := strings.NewReader(`{
"text": "Hello, world!",
"target_language": "es"
}`)
req, _ := http.NewRequest("POST", "https://api.translateapi.ai/api/v1/translate/", payload)
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
var result map[string]interface{}
json.NewDecoder(resp.Body).Decode(&result)
fmt.Println(result["translated_text"]) // "Hola, mundo!"
var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");
var content = new StringContent(
JsonSerializer.Serialize(new {
text = "Hello, world!",
target_language = "es"
}),
Encoding.UTF8,
"application/json"
);
var response = await client.PostAsync("https://api.translateapi.ai/api/v1/translate/", content);
var result = JsonSerializer.Deserialize<JsonElement>(
await response.Content.ReadAsStringAsync()
);
Console.WriteLine(result.GetProperty("translated_text")); // "Hola, mundo!"
Ndesịta ozi ahụ
{
"translated_text": "Hola, mundo!",
"source_language": "en",
"target_language": "es",
"translations": {
"es": "Hola, mundo!"
},
"character_count": 13,
"translation_time": 0.45
}
Nkwenye
Wepụta nkwenye maka arịrịọ gị site n'iji kii API. I nwere ike ịmepụta kii API site na gị Dashboard.
Ndesịta ozi ndị ahụ
Authorization: Bearer ta_your_api_key_here
Ndesịta ozi ndị ahụ
Authorization: ApiKey ta_your_api_key_here
Paramita
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Gbanwee ngwe
Bagharịa ngwe ahụ n'asụsụ ọfụụ.
POST https://api.translateapi.ai/api/v1/translate/
Nhazi ahụ
| Paramita | Ụdị | Achọrọ | Ndesịta nkọwa |
|---|---|---|---|
text |
string | Ee | ngwe a ga-atụgharị (maximum 50,000 characters) |
target_language |
string | Ya* | Target language code (e.g., "es", "fr", "de") |
source_language |
string | Ọ dịghị | Source language code. Default: "auto" (auto-detect) |
engine |
string | Ọ dịghị | Ntụgharị engine: "auto" (dìfọ́ọ̀ltụ̀), "huggingface", mọọbụ "madlad". Gụọ Ntụgharị Models. Ụdị ntụgharị. |
* Jiri target_language ( string) maka asụsụ ọbụla mọọbụ target_languages (arịị) maka ọtụtụ. Gụọ Nsụgharị dị iche iche.
Ndesịta ozi ahụ
{
"translated_text": "Hola, mundo!",
"source_language": "en",
"target_language": "es",
"translations": {
"es": "Hola, mundo!"
},
"character_count": 13,
"translation_time": 0.45
}
source_language ma ọ bụ hazie ya na "auto" iji chọpụta asụsụ isi n'onwe ya. A na-eziga asụsụ ahụ chọpụtara n'ime source_language Nhazi
Nsụgharị dị iche iche
Gbanwee ngwe n'asụsụ ndị dị iche iche n'ime ajụjụ ọfụụ. Na-eji ngwụcha nke ọfụụ dịka ntụgharị ọfụụ.
POST https://api.translateapi.ai/api/v1/translate/
Nhazi ahụ
{
"text": "Hello, world!",
"target_languages": ["es", "fr", "de", "ja"],
"source_language": "en"
}
Jiri target_languages (arịị) ebe ọ bụ nke target_language (ọnụọgụgụ) maka ihenhọrọ ndị dị iche iche.
Ndesịta ozi ahụ
{
"source_language": "en",
"translations": {
"es": "Hola, mundo!",
"fr": "Bonjour, monde!",
"de": "Hallo, Welt!",
"ja": "こんにちは、世界!"
},
"character_count": 52,
"translation_time": 2.31
}
Báà
Gbanwee ngwe ndị dị iche iche n'otu oge na usoroiheomume async. Tinye batch na pọọlụ maka nsonaazụ.
POST https://api.translateapi.ai/api/v1/translate/batch/
Nzọụkwụ 1: Tinye Báà
curl -X POST https://api.translateapi.ai/api/v1/translate/batch/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"texts": ["Hello", "Goodbye", "Thank you"],
"target_language": "es",
"source_language": "en"
}'
Ndesịta nzaghachi (HTTP 202 Ekwenyere)
{
"job_id": "67535b2b-c9e3-4f82-9499-e237edbc1dd8",
"status": "pending",
"total_texts": 3,
"queue_position": 1,
"source_language": "en",
"target_languages": ["es"],
"character_count": 22,
"credits_remaining": -1,
"poll_url": "https://api.translateapi.ai/api/v1/jobs/67535b2b-c9e3-4f82-9499-e237edbc1dd8/"
}
Nzọụkwụ 2: Kpọọ maka nsonaazụ
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Egwuregwu Polling (Python)
import time, requests
job_id = response.json()["job_id"]
total = response.json()["total_texts"]
headers = {"Authorization": "Bearer YOUR_API_KEY"}
print(f"Batch submitted: {total} texts (job {job_id})")
while True:
result = requests.get(f"https://api.translateapi.ai/api/v1/jobs/{job_id}/", headers=headers).json()
status = result["status"]
processed = result.get("processed_texts", 0)
progress = result.get("progress_percentage", 0)
if status == "completed":
print(f"Done: {processed}/{total} in {result.get('processing_time', 0):.1f}s")
translations = result["result_data"]["translations"]
break
elif status == "failed":
raise Exception(result.get("error_message", "Translation failed"))
elif status == "pending":
print(f"Queued (position {result.get('queue_position', '?')})")
else:
print(f"[{status}] {processed}/{total} ({progress:.0f}%)")
time.sleep(3)
Ndesịta ozi ahụ
{
"job_id": "67535b2b-...",
"status": "completed",
"processed_texts": 3,
"total_texts": 3,
"progress_percentage": 100.0,
"processing_time": 10.65,
"result_data": {
"translations": ["Hola", "Adiós", "Gracias"],
"source_language": "en",
"target_language": "es",
"character_count": 22,
"processing_time": 10.65
}
}
Real-Time Progress Tracking
| Ụlọọrụ | Ndesịta nkọwa |
|---|---|
status |
pending (n'ọ̀tụ̀tụ̀, na-atụ anya maka GPU ọrụ), processing (na-asụgharị n'ụzọ nkịtị), completed, failed |
processed_texts |
Ọnụọgụgụ nke ntụgharị asụsụ nkeonwe mechara ruo ugbua. Nhazigharị n'oge ọfụụ dịka ngwe ọbụla a na-asụgharị. |
progress_percentage |
Percentile nke ngwụcha (0-100). E jiri ya tụnyere processed_texts / total_texts. |
queue_position |
Nhazi gị n'ime wọ́kspéèsì mgbe ọnọdụ ahụ bụ "na-echere" (1 = na-esonụ). Null mgbe a na-ejikwa ya mọọbụ mechara ya. Jiri nke a maka ịtụle oge ịtụle ma gosi ọnọdụ wọ́kspéèsì n'ime ndị ọrụ gị. |
processing_time |
Oge usoroiheomume zuru ezu n'ime sekọnd (n'efu mgbe e mechara). |
Multi-Language Batch
Gbanwee ngwe ndị dị iche iche na asụsụ ndị dị iche iche n'otu oge:
{
"texts": ["Hello", "Goodbye"],
"target_languages": ["es", "fr"],
"source_language": "en"
}
Ndesịta ihenhọrọ_data
{
"translations": [
{"es": "Hola", "fr": "Bonjour"},
{"es": "Adiós", "fr": "Au revoir"}
],
"source_language": "en",
"target_languages": ["es", "fr"],
"character_count": 24,
"processing_time": 2.45
}
Paramita ndị ahụ
| Paramita | Ụdị | Achọrọ | Ndesịta nkọwa |
|---|---|---|---|
texts |
array | Ee | Arịị nke ụda ndị a ga-atụgharị |
target_language |
string | Ya* | Target language code for single language |
target_languages |
array | Ya* | Arịị nke kóòdù njirimara asụsụ maka asụsụ ndị ọzọ |
source_language |
string | Ọ dịghị | Source language code. Default: "auto" |
* Wepụta ma ọ bụ target_language ma ọ bụ target_languages, abụghị ha abụọ.
Best Practices maka nnukwu Workloads
- Ziga 1 target asụsụ kwa batch arịrịọ. Nke a na-echekwa batch ọbụla n'ụzọ nkịtị nakwa na-eme ka mmepe dị mfe ịtụle.
- Kwụsị batchs na 50-100 ngwe. Batchs nke obere ga-agwụ n'ụzọ nkịtị ma nye gị mmelite mmepe nke na-emekarị.
- Bipụta ọtụtụ ọrụ batch dị ka ịchọrọ - GPU klastọ́ọ̀tụ̀ụ̀ anyị na-emegharị onwe ya ka ọ na-elekọta mkpa. Ọrụ ndị ahụ na-arụ ọrụ n'otu oge n'ime ihenhọrọ ndị dị iche iche.
- N'ụbọchị oge eruola, pụọgharịa ọrụ_id nke ọbụla n'ebe ọbụla n'ihi na ịnabata batch ọfụụ. Ọrụ mbụ ahụ nwere ike ka na-arụ ọrụ na GPU.
- Pọòlụ̀ mgbe ọbụla 3-5 sekọnd. Pọòlụ̀ na-aga n'ihu na-emeghị ka usoroiheomume na-aga n'ihu.
Dọkumenti ọfụụ
Gbanwee dọkumenti niile mgbe ị na-echekwa nhazi. Na-akwado faịlụ ụkpụrụedemede dị iche iche.
POST https://api.translateapi.ai/api/v1/translate/document/
Ndesịta arịrịọ (multipart/form-data)
| Paramita | Ụdị | Achọrọ | Ndesịta nkọwa |
|---|---|---|---|
file |
file | Ee | Dọkumenti nke a ga-asụgharị (max 10MB) |
target_language |
string | Ee | Target language code (e.g., "es", "fr", "de") |
source_language |
string | Ọ dịghị | Source language code. Default: "auto" (auto-detect) |
Ụdị faịlụ ndị ahụ e nyere nkwado ha
Dọkumenti
.txt- Faịlụ ngwe nkeonwe.docx- Dọkumenti Word.pdf- Dọkumenti PDF (na-agụnye emeredịkachọrọ)
Ndesịta ozi na mpaghara ebe
.json- Faịlụ JSON (na-atụgharị valiu string).xml- Faịlụ XML.srt- Faịlụ isiokwu ndị ahụ.po/.pot- Faịlụ nsụgharị Gettext
Inyogo
.jpg/.jpeg- Inyogo JPEG (OCR).png- Inyogo PNG (OCR).tiff/.tif- Inyogo TIFF (OCR).bmp- Inyogo BMP (OCR).webp- Inyogo WebP (OCR)
Egwuregwu (cURL)
# Translate a Word document
curl -X POST https://api.translateapi.ai/api/v1/translate/document/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@document.docx" \
-F "target_language=es" \
-F "source_language=en"
# Translate text from an image (OCR)
curl -X POST https://api.translateapi.ai/api/v1/translate/document/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@scanned_page.jpg" \
-F "target_language=es" \
-F "source_language=en"
Ndesịta ozi ahụ
{
"id": 123,
"original_filename": "document.docx",
"file_type": "docx",
"source_language": "en",
"target_language": "es",
"status": "completed",
"character_count": 5420,
"translated_file_url": "/media/translated/document_es.docx",
"created_at": "2024-01-15T10:30:00Z",
"completed_at": "2024-01-15T10:30:05Z"
}
GET https://api.translateapi.ai/api/v1/translate/document/{id}/
Chọọ ọnọdụ nke nsụgharị dọkumenti mọọbụ weghachi mbubata URL.
Valụàị̀ ndị ahụ
pending |
Faịlụ ahụ ebudatara, na-echere ka a hazie ya |
processing |
Ntụgharị |
completed |
Ntụgharị zuru ezu, mbubata dị |
failed |
Ndehie ntụgharị (chekwaa ozi_ezighị ezi) |
Asụsụ ndị e nyere nkwado
Wepụta ndesịta nke asụsụ ndị e nyere nkwado ha niile.
GET https://api.translateapi.ai/api/v1/translate/languages/
Ndesịta ozi ahụ
{
"count": 186,
"results": [
{"iso": "en", "name": "English", "en_label": "English"},
{"iso": "es", "name": "Español", "en_label": "Spanish"},
{"iso": "fr", "name": "Français", "en_label": "French"},
...
]
}
Ụdị ntụgharị
Anyị na-eji state-of-the-art open source translation models na-arụ ọrụ na anyị GPU infrastructure. All models are commercially licensed (Apache 2.0).
| Móòdù | Asụsụ | Nke kacha mma maka |
|---|---|---|
| Helsinki-NLP/opus-mt | 50+ asụsụ abụọ | Asụsụ ndị a ma ama (EN, ES, FR, DE, IT, PT, RU, ZH, JA, wdg.) |
| Google MADLAD-400 | 400+ asụsụ | Asụsụ dị iche iche, nkpuchi zuru ezu |
API na-ahọrọ n'onwe ya móòdù kacha mma maka asụsụ abụọ gị. I nwere ike ịkọwapụta n'ụzọ nkịtị engine Paramita:
| Ènjini | Ndesịta nkọwa |
|---|---|
"auto" |
Dìfọ́ọ̀ltụ̀. Na-achọ HuggingFace mbụ, na-alaghachi na MADLAD-400 |
"huggingface" |
Bubata HuggingFace/MarianMT (n'ụzọ nkịtị, 50+ asụsụ) |
"madlad" |
Force MADLAD-400 (400+ asụsụ) |
Nhazi ndehie
API ahụ na-eji ụkpụrụ nke ọnọdụ HTTP iji gosi mmeri mọọbụ mmehie.
| Ọdịdị | Ndesịta nkọwa |
|---|---|
| 200 | Ọrụ |
| 202 | Atụbatala — Báà ọrụ ahụ etinyela n'ogbe n'ụzọ ziri ezi |
| 400 | Ndesịta ozi ahụ na-adịghị mma - Paramita ndị na-adịghị mma (nkebi na-efu, asụsụ na-enweghị nkwado, wdg) |
| 401 | Enweghị ikike - kii API na-enweghị isi mọọbụ nke ewepụtụla |
| 402 | Nkwụghachi chọrọ — Akwụsịla akara kredit. Nkwalite usoroiheomume gị mọọbụ zụta n'elu. |
| 403 | Enweghị ike — kii API enweghị ihenhọrọ nke mkpa ma ọ bụ IP enweghị na ndesịta ọbara |
| 503 | Ọrụ Agaghị enwe ike - ntụgharị engine n'oge ụfọdụ akwụsịla |
Nhazi nzaghachi ndehie
{
"error": "insufficient_credits",
"credits_remaining": 0
}
Nhazi
TranslateAPI has no request rate limits. All requests are queued and processed by our auto-scaling GPU cluster. Your plan determines your monthly character allowance:
| Nhazi | Ụdị/Ụbọchị | Báà | Dọkumenti | Nri | |
|---|---|---|---|---|---|
| Ọfụụ | 250,000 | — | — | $0 | Akaụntụ |
| Òtù | 2,500,000 | $9/ọnwa | Bipụta | ||
| Pro | 10,000,000 | $29/ọnwa | Bipụta | ||
| Ụlọọrụ | 40,000,000 | $79/ọnwa | Bipụta | ||
| Sịlọn | 125,000,000 | $199/ọnwa | Bipụta | ||
| Enterprise | Unlimited | $499/ọnwa | Contact Sales |
Mgbe ị na-agafe ngwụcha gị, ị ga-enweta a 402 Payment Required nwughachi ruo mgbe ọnwa na-esonụ ma ọ bụ ịzụlite.
Auto-Scaling Cloud Infrastructure
TranslateAPI na-arụ ọrụ na NVIDIA A100 GPU nke ejiri n'aka na-ehazi n'aka. Mgbe mkpa na-arịwanye elu, GPU ndị ọzọ na-arụ ọrụ n'ime minit iji hụ na oge nzaghachi dị ngwa. Ajụjụ niile a na-eziga n'ọnụ ụzọ na-ehazi - zigara ọtụtụ narị ajụjụ na-ehazi n'otu oge na ha ga-ejikwa ha niile. Ntụgharị asụsụ oge-ọnụ na-enweta n'ihu, ọrụ batch na-arụ ọrụ n'okpuru.
Ịchọrọ ego ndị ọzọ?
N'imechara akara n'etiti ọnwa? Zụlite otu oge n'ime kredit na-agbakwunye na-enweghị ịgbanwe usoroiheomume gị. Gosi pake ndị ahụ