بەڵگەنامەکان
وەرگێڕانی بەهێز لە پرۆگرامەکانتدا بە بەکارهێنانی REST API سادەکەمان تێکەڵ بکە.
دەست پێکردن
پڕۆگرامی وەرگێڕان ڕێگایەکی ئاسانی REST دەڕەخسێنێت بۆ وەرگێڕانی نوسراوەکان لە نێوان 180 زماندا. هەموو خاڵەکانی کۆتایی پڕۆگرامی وەرگێڕان وەڵامی JSON دەدەنەوە.
1. Get Your API Key
Create a free account and generate your API key from the dashboard:
- Sign up at translateapi.ai/signup
- Go to داشبۆرد → کلیلی API
- Click "Create API Key" and copy your key
API keys start with ta_ followed by 56 hex characters.
https://api.translateapi.ai/api/v1/2. Make Your First Request
Replace YOUR_API_KEY with the key from your dashboard:
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!"
وەڵامدانەوە
{
"translated_text": "Hola, mundo!",
"source_language": "en",
"target_language": "es",
"translations": {
"es": "Hola, mundo!"
},
"character_count": 13,
"translation_time": 0.45
}
دڵنیابوونەوە
داواکارییەکانی خۆت بە بەکارهێنانی کلیلی API پشتڕاست بکەەوە. دەتوانیت کلیلی API دروست بکەیت لە کۆمپیوتەرەکەتەوە داشبۆرد.
ڕاستکردنەوەی سەرنووس (پەسەندکراوە)
Authorization: Bearer ta_your_api_key_here
ApiKey Header
Authorization: ApiKey ta_your_api_key_here
پارامەتری پرسیار
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
وەرگێڕانی نوسراو
وەرگێڕانی نوسراوەکان بۆ زمانێکی دیاریکراو.
POST https://api.translateapi.ai/api/v1/translate/
بەشە داواکراوەکان
| پێوانە | جۆر | پێویسته | باسکردن |
|---|---|---|---|
text |
string | بەڵێ | نوسراوە بۆ وەرگێڕان (بەگشتی ٥٠,٠٠٠ هێما) |
target_language |
string | بەڵێ | Target language code (e.g., "es", "fr", "de") |
source_language |
string | نەخێر | Source language code. Default: "auto" (auto-detect) |
engine |
string | نەخێر | Translation engine: "auto" (default), "huggingface", or "madlad". See Translation Models. وەرگێڕان. |
بەکارھێنان target_language (شێوەزار) بۆ زمانێکی تاک یان target_languages .بڕوانە وەرگێڕانی زۆر ئامانج.
وەڵامدانەوە
{
"translated_text": "Hola, mundo!",
"source_language": "en",
"target_language": "es",
"translations": {
"es": "Hola, mundo!"
},
"character_count": 13,
"translation_time": 0.45
}
source_language or set it to "auto" to automatically detect the source language. The detected language is returned in the source_language response field.
وەرگێڕانی زۆر ئامانج
وەرگێڕانی نوسراوەکان بۆ زمانە جۆراوجۆرەکان لە یەک داواکاریدا. هەمان خاڵی کۆتایی بەکاردەهێنێت وەک وەرگێڕانی تاک.
POST https://api.translateapi.ai/api/v1/translate/
بەشە داواکراوەکان
{
"text": "Hello, world!",
"target_languages": ["es", "fr", "de", "ja"],
"source_language": "en"
}
بەکارھێنان target_languages (ڕێگە) لە جیاتی target_language بۆ ئامانجە زۆرەکان.
وەڵامدانەوە
{
"source_language": "en",
"translations": {
"es": "Hola, mundo!",
"fr": "Bonjour, monde!",
"de": "Hallo, Welt!",
"ja": "こんにちは、世界!"
},
"character_count": 52,
"translation_time": 2.31
}
وەرگێڕان
وەرگێڕانی چەند نوسراوێک لە یەک کاتدا بە پەرەپێدانی بێ هاوتا. پێشکەشکردنی کۆمەڵە و دەنگدان بۆ ئەنجامەکان.
POST https://api.translateapi.ai/api/v1/translate/batch/
هەنگاوی ١: پێشکەشکردنی کۆمەڵە
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"
}'
وەڵامدانەوە (HTTP 202 پەسەندکراوە)
{
"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/"
}
هەنگاوی ٢: بۆ ئەنجامەکان دەنگ بدە
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
نمونەی دەنگدان (پایتۆن)
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)
وەڵامدانەوە (تەواو کرا)
{
"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
| Field | باسکردن |
|---|---|
status |
pending (queued, waiting for a GPU worker), processing (actively translating), completed, failed |
processed_texts |
Number of individual translations completed so far. Updates in real time as each text is translated. |
progress_percentage |
Completion percentage (0-100). Calculated from processed_texts / total_texts. |
queue_position |
Your position in the queue when status is "pending" (1 = next up). Null when processing or completed. Use this to estimate wait time and show queue status to your users. |
processing_time |
Total processing time in seconds (available when completed). |
زمانە زۆرەکان
وەرگێڕانی چەند وتارێک بۆ چەند زمانێک لە یەک کاتدا:
{
"texts": ["Hello", "Goodbye"],
"target_languages": ["es", "fr"],
"source_language": "en"
}
ئەنجامی داتا تەواو بوو
{
"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
}
پێوانە داواکراوەکان
| پێوانە | جۆر | پێویسته | باسکردن |
|---|---|---|---|
texts |
array | بەڵێ | ئاڕشیڤی ڕستە بۆ وەرگێڕان |
target_language |
string | بەڵێ | کۆدی زمانی ئامانج بۆ زمانێکی تاک |
target_languages |
array | بەڵێ | کۆدەکانی زمانە ئامانجەکان بۆ زمانە زۆرەکان |
source_language |
string | نەخێر | Source language code. Default: "auto" |
یاخود target_language یان target_languagesهەردوکیان
Best Practices for Large Workloads
- Send 1 target language per batch request. This keeps each batch fast and makes progress easy to track.
- Keep batches at 50-100 texts. Smaller batches complete faster and give you more frequent progress updates.
- Submit as many batch jobs as you need — our GPU cluster auto-scales to handle demand. Jobs are processed in parallel across multiple instances.
- On timeout, re-poll the same job_id instead of submitting a new batch. The original job may still be processing on the GPU.
- Poll every 3-5 seconds. More frequent polling does not speed up processing.
وەرگێڕانی سند
وەرگێڕانی هەمو سندووقەکان لەگەڵ پاراستنی شێواز. پشتگیری چەندین شێوازی فایل دەکات.
POST https://api.translateapi.ai/api/v1/translate/document/
داواکاری (هەندێک بەش/هەندێک زانیاری)
| پێوانە | جۆر | پێویسته | باسکردن |
|---|---|---|---|
file |
file | بەڵێ | سندەکە بۆ وەرگێڕان (بەگشتی ١٠ مێگابایت) |
target_language |
string | بەڵێ | Target language code (e.g., "es", "fr", "de") |
source_language |
string | نەخێر | Source language code. Default: "auto" (auto-detect) |
جۆری پڕۆگرامەکان
Documents
.txt- فۆڕمی نووسراو.docx- سندووقەکانی وورد.pdf- سندووقەکانی پی دی ئێف (لەوانەی کە وێنەیان کێشراوە)
Data & Localization
.json- فۆڕمەکانی JSON (بە مانای زنجیرەکان دەگۆڕێت).xml- فۆڕمی XML.srt- فایلی ژێرناوەکان.po/.pot- فۆڕمەکانی وەرگێڕان
Images (OCR)
.jpg/.jpeg- وێنەی JPEG.png- وێنەی PNG.tiff/.tif- وێنەی TIFF.bmp- وێنەی BMP.webp- وێنەی WebP
نموونە (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"
وەڵامدانەوە
{
"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}/
پشکنینی بارودۆخی وەرگێڕانی سندێک یان وەرگرتنی ناوەکەی داگرتن.
بایەخی حاڵەت
pending |
فۆڕمەکە دابەزێنرا، چاوەڕێیە بۆ پەرەپێدان |
processing |
وەرگێڕان |
completed |
وەرگێڕان تەواو بوو، دابەزاندن ئامادەیە |
failed |
وەرگێڕان شکستی هێناوە (بڕوانە پەیامی هەڵە) |
زمانی پاڵپشتیکراو
لیستی هەموو زمانەکانی پاڵپشتیکراو وەربگرە.
GET https://api.translateapi.ai/api/v1/translate/languages/
وەڵامدانەوە
{
"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"},
...
]
}
Submit Corrections
Suggest a better translation for a given source text. Corrections enter a moderation queue; once approved by our team they surface as "Community Verified" translations for that text.
https://translateapi.ai/api/v1/ (not the api. translation host), and requires an API key.POST https://translateapi.ai/api/v1/suggestions/
بەشە داواکراوەکان
| Parameter | جۆر | باسکردن |
|---|---|---|
source_text |
string | The original text that was translated. |
source_language |
string | Source language code (e.g. "en"). |
target_language |
string | Target language code (e.g. "es"). |
machine_translation |
string | The machine translation you are correcting. |
suggested_translation |
string | Your improved translation (must differ from machine_translation). |
Example Request
curl -X POST https://translateapi.ai/api/v1/suggestions/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"source_text": "Hello, world!",
"source_language": "en",
"target_language": "es",
"machine_translation": "Hola, mundo!",
"suggested_translation": "¡Hola, mundo!"
}'
وەڵامدانەوە
{
"id": 4213,
"status": "pending",
"created": true,
"message": "Correction submitted for review."
}
Re-submitting the same source/language pair updates your existing suggestion instead of creating a duplicate (returns 200 with "created": false).
وەرگێڕان
ئێمە مۆدێلی وەرگێڕانی سەرچاوە کراوە بەکاردەهێنین کە لەسەر بنەڕەتی GPU ی خۆمان کاردەکات. هەموو مۆدێلەکان مۆڵەتی بازرگانییان هەیە (ئاپاچی 2.0).
| مۆدێل | زمانەکان | باشترین بۆ |
|---|---|---|
| Helsinki-NLP/opus-mt | دوو زمان | زمانە گشتیەکان (EN, ES, FR, DE, IT, PT, RU, ZH, JA, و هتد) |
| Google MADLAD-400 | 400 زمان | زمانە نەزانراوەکان، بڵاوکردنەوەیەکی فراوان |
ئەپی پی بە ئۆتۆماتیکی باشترین مۆدێلی بۆ جووت زمانی خۆت هەڵدەبژێرێت. دەتوانیت هەڵبژێردراوێک دیاری بکەیت engine پێوانە:
| ماشێن | باسکردن |
|---|---|
"auto" |
پێشنیار کراوە. یەکەمجار هەوڵ دەدات بە گرتنی ڕووخسار، پاشان دەگەڕێتەوە بۆ MADLAD-400 |
"huggingface" |
ناچارکردنی HuggingFace/MarianMT (بە خێرایی، زیاتر لە ٥٠ زمان) |
"madlad" |
هێزی MADLAD-400 (400+ زمان) |
هەڵسەنگاندنی هەڵە
ئەم ئەپی یە ستانداردی کۆدی دۆخی HTTP بەکاردەهێنێت بۆ نیشاندانی سەرکەوتن یان شکست.
| کۆد | باسکردن |
|---|---|
| 200 | سەرکەوتن |
| 202 | Accepted — Batch job queued successfully |
| 400 | Bad Request — Invalid parameters (missing text, unsupported language, etc.) |
| 401 | مۆڵەت نەدراوە - کلیلی نایاسایی یان نەماوە |
| 402 | Payment Required — Character credits exhausted. Upgrade your plan or purchase a top-up. |
| 403 | Forbidden — API key lacks required scope or IP not in whitelist |
| 503 | خزمەتگوزاری نەماوە - بزوێنەری وەرگێڕان بۆ ماوەیەک داخراوە |
شێوازی وەڵامدانەوەی هەڵە
{
"error": "insufficient_credits",
"credits_remaining": 0
}
Usage Limits
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:
| پلان | رەگەز/مانگ | Batch API | Documents | نرخ | |
|---|---|---|---|---|---|
| ئازادە | 250,000 | — | — | $0 | تۆماربکە |
| دەست پێکردن | 2,500,000 | $9/میگابایت | بەشداربە | ||
| پڕۆ | 10,000,000 | $29/میگابایت | بەشداربە | ||
| بازرگانی | 40,000,000 | $79/میگابایت | بەشداربە | ||
| پێوانە | 125,000,000 | $199/میگابایت | بەشداربە | ||
| Enterprise | Unlimited | $499/میگابایت | Contact Sales |
کاتێک لە سنوورەکەت تێدەپەڕیت، پەیامێک وەردەگریت 402 Payment Required تا مانگی داهاتوو وەڵام ناداتەوە یان بەرزت دەکاتەوە.
Auto-Scaling Cloud Infrastructure
TranslateAPI runs on dedicated NVIDIA A100 GPU instances with automatic horizontal scaling. When demand increases, additional GPU instances are launched within minutes to maintain fast response times. All requests are queued and processed — send hundreds of concurrent requests and they'll all be handled. Real-time translations get priority, batch jobs process in the background.
Need More Credits?
Run out of characters mid-month? Purchase a one-time credit top-up without changing your plan. View top-up packs