API ලේඛන
අපගේ සරල REST API සමඟ ඔබේ අයදුම්පත් බවට බලවත් පරිවර්තනය ඒකාබද්ධ.
ආරම්භ කිරීම
මෙම TranslateAPI 180+ භාෂා අතර පෙළ පරිවර්තනය කිරීම සඳහා සරල REST අතුරුමුහුණත සපයයි. සියලු API අවසාන ලකුණු JSON ප්රතිචාර ආපසු.
1. ඔබේ API යතුර ලබා ගන්න
නොමිලේ ගිණුමක් නිර්මාණය කර දර්ශක පුවරුව සිට ඔබේ API යතුර ජනනය කරන්න:
- ලියාපදිංචි වන්න translateapi.ai/signup
- යන්න දර්ශක පුවරුවComment → API යතුරු
- ක්ලික් කරන්න "API යතුර නිර්මාණය කරන්න" සහ ඔබේ යතුර පිටපත් කරන්න
API යතුරු ආරම්භ වන්නේ ta_ 56 hex අක්ෂර අනුගමනය.
https://api.translateapi.ai/api/v1/2. ඔබේ පළමු ඉල්ලීම කරන්න
ඔබේ දෘඩාංග පද්ධතියේ සිට යතුර සමග YOUR_API_KEY ආදේශ:
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 ශීර්ෂකය
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 | ඔව් | පරිවර්තනය කිරීමට පෙළ (උපරිම 50,000 අක්ෂර) |
target_language |
string | ඔව්* | Target language code (e.g., "es", "fr", "de") |
source_language |
string | නෑ. | Source language code. Default: "auto" (auto-detect) |
engine |
string | නෑ. | පරිවර්තන එන්ජිම: "අවංක" (පෙරනිමි), "huggingface", හෝ "madlad". පරිවර්තන ආකෘති බලන්න. පරිවර්තන ආකෘති. |
* භාවිතය 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 හෝ එය සකසන්න "auto" ස්වයංක්රීයව මූලාශ්රය භාෂාව හඳුනා ගැනීමට. හඳුනා භාෂාව තුළ ආපසු source_language ප්රතිචාර ක්ෂේත්රය.
බහු- ඉලක්ක පරිවර්තනය
තනි ඉල්ලීමක් බහු භාෂා පෙළ පරිවර්තනය. තනි පරිවර්තනය ලෙස එම අවසන් ස්ථානය භාවිතා කරයි.
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
}
කට්ටල පරිවර්තනය
async සැකසුම් සමග එකවර බහු පෙළ පරිවර්තනය. ප්රතිඵල සඳහා කණ්ඩායමක් සහ ඡන්දය ඉදිරිපත් කරන්න.
POST https://api.translateapi.ai/api/v1/translate/batch/
පියවර 1: කණ්ඩායම ඉදිරිපත් කරන්න
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/"
}
පියවර 2: ප්රතිඵල සඳහා ඡන්ද විමසීම
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
පෝලින් උදාහරණය (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)
ප්රතිචාරය (සම්පූර්ණ)
{
"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
}
}
සැබෑ කාලය ප්රගතිය හඹායෑම
| ක්ෂේත්රය | විස්තරය |
|---|---|
status |
pending [Error: UNIQUE constraint failed: translations_translation.textbase_id, translations_translation.language_id] processing (ක්රියාකාරී පරිවර්තනය), completed, failed |
processed_texts |
[Error: UNIQUE constraint failed: translations_translation.textbase_id, translations_translation.language_id] |
progress_percentage |
සම්පූර්ණ ප්රතිශතය (0-100). processed_texts / total_texts සිට ගණනය. |
queue_position |
පෝලිමේ ඔබේ ස්ථානය තත්වය "පවතිමින්" නම් (1 = ඊලඟට). සැකසීම හෝ සම්පූර්ණ වූ විට ශුන්ය වේ. ඔබේ පරිශීලකයන්ට පෝලිමේ තත්වය පෙන්වීමට බලාසිටින කාලය ඇස්තමේන්තු කිරීමට මෙය භාවිත කරන්න. |
processing_time |
තත්පර මුළු සැකසුම් කාලය (සම්පූර්ණ වූ විට ලබා ගත හැක). |
බහු- භාෂා කණ්ඩායම
එකවර භාෂා බොහොමයක් බහු පෙළ පරිවර්තනය:
{
"texts": ["Hello", "Goodbye"],
"target_languages": ["es", "fr"],
"source_language": "en"
}
සම්පූර්ණ වූ ප්රතිඵල දත්ත (_d)
{
"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දෙකම නෙමෙයි.
විශාල වැඩ බර සඳහා හොඳම ප්රතිපත්ති
- කණ්ඩායම් ඉල්ලීමකට 1 ඉලක්ක භාෂාව යවන්න. මෙම එක් එක් කණ්ඩායම් වේගයෙන් පවත්වාගෙන යන අතර ප්රගතිය පහසුවෙන් හඳුනා ගැනීමට කරයි.
- [Error: UNIQUE constraint failed: translations_translation.textbase_id, translations_translation.language_id]
- ඔබ අවශ්ය ලෙස කණ්ඩායම් රැකියා ගණනාවක් ඉදිරිපත් කරන්න - ඉල්ලුම හැසිරවීම සඳහා අපගේ GPU ක්ලැස්ටර් ස්වයංක් රීය පරිමාණ. රැකියා බහු අවස්ථා හරහා සමාන්තරව සකස් කරනු ලැබේ.
- කාලය අවසන් වූ විට, නව කණ්ඩායමක් ඉදිරිපත් කිරීම වෙනුවට එම job_id නැවත පරීක්ෂා කරන්න. මුල් රැකියාව තවමත් GPU මත සැකසීම විය හැක.
- සෑම තත්පර 3-5 කට වරක් ඡන්ද විමසීම. වඩාත් නිතර ඡන්ද විමසීම සැකසීම වේගවත් නොවේ.
ලේඛන පරිවර්තනය
සැකසුම් පවත්වා ගනිමින් මුළු ලේඛන පරිවර්තනය. බහු ගොනු ආකෘති සහාය.
POST https://api.translateapi.ai/api/v1/translate/document/
ඉල්ලීම (බහුපාර්ශ්වික / ආකෘතිය-දත්ත)
| පරාමිතීන් | වර්ගය | අවශ්ය | විස්තරය |
|---|---|---|---|
file |
file | ඔව් | පරිවර්තනය කිරීමට ලේඛනය (උපරිම 10MB) |
target_language |
string | ඔව් | Target language code (e.g., "es", "fr", "de") |
source_language |
string | නෑ. | Source language code. Default: "auto" (auto-detect) |
සහාය දක්වන ගොනු වර්ග
ලේඛන
.txt- සරල පෙළ ගොනු.docx- Word ලේඛන.pdf- PDF ලේඛන (ස්කෑන් ඇතුළු)
දත්ත හා ප්රාදේශීයකරණය
.json- JSON ගොනු (වචන අගයන් පරිවර්තනය).xml- XML ගොනු.srt- උපසිරැසි ගොනු.po/.pot- Gettext පරිවර්තන ගොනු
පිංතූර (OCR)
.jpg/.jpeg- JPEG පිංතූර (OCR).png- PNG පිළිඹිබු (OCR).tiff/.tif- TIFF පිළිඹිබු (OCR).bmp- BMP පිංතූර (OCR).webp- WebP පිංතූර (OCR)
උදාහරණය (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}/
ලේඛනය පරිවර්තනය තත්වය පරීක්ෂා කරන්න හෝ බාගත URL ලබා ගන්න.
තත්ව අගයන්
pending |
ගොනුව උඩුගත කර ඇත, සැකසීම සඳහා බලා සිටියි |
processing |
පරිවර්තනය ක්රියාත්මකයි |
completed |
පරිවර්තනය සම්පූර්ණ, ලබා ගත හැකි බාගත |
failed |
පරිවර්තනය අසාර්ථක විය (check error_message) |
සහාය දක්වන භාෂා
සියලු සහාය දක්වන භාෂා ලැයිස්තුව ලබා ගන්න.
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"},
...
]
}
පරිවර්තන ආකෘති
අපි අපේම GPU යටිතල පහසුකම් මත ධාවනය රාජ්ය-of-the-art විවෘත මූලාශ්රය පරිවර්තන ආකෘති භාවිතා. සියලු ආකෘති වාණිජ බලපත්ර (Apache 2.0).
| ආකෘතිය | භාෂා | සඳහා හොඳම |
|---|---|---|
| Helsinki-NLP/opus-mt | 50+ භාෂා යුගල | පොදු භාෂා (EN, ES, FR, DE, IT, PT, RU, ZH, JA, ආදිය) |
| Google MADLAD-400 | 400+ භාෂා | දුර්ලභ භාෂා, පුළුල් ආවරණය |
මෙම API ස්වයංක්රීයව ඔබේ භාෂා යුගලය සඳහා හොඳම ආකෘතිය තෝරා ගනී. ඔබ විකල්ප වශයෙන් සඳහන් කළ හැකිය engine පරාමිතිය:
| එන්ජිම | විස්තරය |
|---|---|
"auto" |
පෙරනිමි. පළමුව HuggingFace උත්සාහ කරයි, MADLAD-400 වෙත ආපසු වැටේ |
"huggingface" |
බලය HuggingFace / MarianMT (වේගවත්ම, 50+ භාෂා) |
"madlad" |
බලය MADLAD-400 (400+ භාෂා) |
දෝෂ හැසිරවීම
මෙම API සාර්ථකත්වය හෝ අසාර්ථකත්වය පෙන්නුම් කිරීමට සම්මත HTTP තත්ව කේත භාවිතා කරයි.
| කේතය | විස්තරය |
|---|---|
| 200 | සාර්ථකත්වය |
| 202 | පිළිගත් — කණ්ඩායම් වැඩ පෝලිමේ සාර්ථකව තැබිණි |
| 400 | නරක ඉල්ලීම - වලංගු නොවන පරාමිතීන් (අතුරුදහන් පෙළ, සහාය නොදක්වන භාෂාව, ආදිය) |
| 401 | අවසර නොමැති - වලංගු හෝ නොමැති API යතුර |
| 402 | ගෙවීම අවශ්ය — චරිත ණය ඉවරයි. ඔබේ සැලැස්ම උසස් හෝ මිලදී ගැනීමක් top-up. |
| 403 | තහනම් - සුදු ලැයිස්තුවේ නොමැති අවශ්ය විෂය පථය හෝ IP API යතුර නොමැති |
| 503 | සේවාව නොමැත - පරිවර්තන එන්ජිම තාවකාලිකව පහත |
දෝෂ ප්රතිචාර සංයුතිය
{
"error": "insufficient_credits",
"credits_remaining": 0
}
භාවිත සීමා
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:
| සැලැස්ම | අකුරු/මාසය | කණ්ඩායම් API | ලේඛන | මිල | |
|---|---|---|---|---|---|
| නිදහස් | 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 ඊළඟ මාසයේ හෝ ඔබ යාවත්කාලීන වන තෙක් ප්රතිචාර.
ස්වයංක්රීය පරිමාණ වලාකුළු යටිතල පහසුකම්
TranslateAPI ස්වයංක්රීය තිරස් පරිමාණය සමග කැප NVIDIA A100 GPU අවස්ථා මත ධාවනය. ඉල්ලුම වැඩි වන විට, වේගවත් ප්රතිචාර කාලය පවත්වා ගැනීමට විනාඩි තුළ අතිරේක GPU අවස්ථා දියත් කර ඇත. සියලු ඉල්ලීම් පෝලිමේ හා සකස් කර ඇත - එකවර ඉල්ලීම් සිය ගණනක් යැවීමට ඔවුන් සියල්ලම හැසිරවිය යුතු ය. සැබෑ කාලය පරිවර්තන ප්රමුඛතාව ලබා, පසුබිම තුල කණ්ඩායම් රැකියා ක්රියාවලිය.
තවත් ණය අවශ්යද?
මාසයේ මැද භාගයේ අක්ෂර ඉවත් ධාවනය? ඔබේ සැලැස්ම වෙනස් නොකර එකවර ණය top-up මිලදී ගන්න. Top-up පැකේජ බලන්න