Dokumentazzjoni tal-API

Integra traduzzjoni qawwija fl-applikazzjonijiet tiegħek mal-REST API sempliċi tagħna.

Biex tibda

Il-TranslateAPI tipprovdi interfaċċa REST sempliċi għat-traduzzjoni tat-test bejn 180+ lingwa.L-endpoints kollha tal-API jirritornaw tweġibiet JSON.

1. Ikseb il-Klawsola API Tiegħek

Oħloq kont b'xejn u iġġenera ċ-ċavetta API tiegħek mid-dashboard:

  1. Irreġistra fuq translateapi.ai/signup
  2. Mur fil- Dashboard → Ċwievet API
  3. Ikklikkja "Oħloq API Key" u kopja ċ-ċavetta tiegħek

Iċ-ċwievet API jibdew b' ta_ segwit minn 56 karattru hex.

URL bażiku: https://api.translateapi.ai/api/v1/
2. Agħmel l-ewwel talba tiegħek

Ibdel YOUR_API_KEY bl-muftieħ mid-dashboard tiegħek:

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!"
Rispons
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}

Awtentikazzjoni

Awtentika t-talbiet tiegħek billi tuża ċavetta API. Tista' toħloq ċwievet API mill- pannell tal-kontroll.

Awtentikazzjoni Header (Rakkomandat)
Authorization: Bearer ta_your_api_key_here
Intestatura ApiKey
Authorization: ApiKey ta_your_api_key_here
Parametru tal-mistoqsija
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Żomm iċ-ċwievet API tiegħek siguri! Ma jesponuhom fil-kodiċi client-side jew repożitorji pubbliċi.

Ittraduċi t-Test

Ittraduċi test għal lingwa waħda fil-mira.

POST https://api.translateapi.ai/api/v1/translate/
Korp tat-talba
Parametru Tip Meħtieġa Deskrizzjoni
text string Iva Test li għandu jiġi tradott (massimu ta' 50,000 karattru)
target_language string Iva* Target language code (e.g., "es", "fr", "de")
source_language string L-ebda Source language code. Default: "auto" (auto-detect)
engine string L-ebda Traduzzjoni magna: "awtomatiku" (default), "huggingface", jew "madlad". Ara Mudelli Traduzzjoni. Mudelli tat-Traduzzjoni.

* Użu target_language (string) għal lingwa waħda jew target_languages (array) għal multipli. Ara Traduzzjoni b'ħafna miri.

Rispons
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}
Awto-Selezzjoni: Tħallix barra source_language jew issettjaha għal "auto" Il-lingwa misjuba tiġi rritornata fil-kaxxa tal-formola tal-formola. source_language qasam ta’ rispons.

Traduzzjoni b'ħafna miri

Ittraduċi test għal lingwi multipli f'talba waħda.Uża l-istess punt aħħari bħala traduzzjoni waħda.

POST https://api.translateapi.ai/api/v1/translate/
Korp tat-talba
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Użu target_languages (array) minflok target_language (string) għal miri multipli.

Rispons
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}
Tip: Tista' tittraduċi sa 50 lingwa f'talba waħda.

Traduzzjoni tal-lott

Ittraduċi testi multipli f'daqqa bl-ipproċessar async. jissottometti lott u l-istħarriġ għar-riżultati.

Limiti: Massimu ta’ 100 test għal kull lott, massimu ta’ 300 oġġett totali (testi × lingwi fil-mira) Ix-xogħlijiet jiskadu 45 minuta wara li jibda l-ipproċessar.
Veloċità: Lingwi komuni (ES, FR, DE) jużaw mudelli veloċi (~0.1s/test) Il-lingwi inqas komuni jużaw il-mudell multilingwi tagħna (~1-3s/test).
POST https://api.translateapi.ai/api/v1/translate/batch/
Pass 1: Ibgħat il-Lott
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"
}'
Rispons (HTTP 202 Aċċettat)
{
    "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/"
}
Pass 2: Poll għall-Riżultati
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Polling Eżempju (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)
Tweġiba (ikkompletata)
{
    "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
Qasam Deskrizzjoni
status pending (fil-kju, stennija għal ħaddiem GPU), processing (jittraduċi b’mod attiv), completed, failed
processed_texts Numru ta' traduzzjonijiet individwali kompluti s'issa.Aġġornamenti f'ħin reali hekk kif kull test jiġi tradott.
progress_percentage Perċentwal ta’ tlestija (0-100). Ikkalkulat minn processed_texts / total_texts.
queue_position Il-pożizzjoni tiegħek fil-kju meta l-istatus ikun "pendenti" (1 = li jmiss). Null meta jkun qed jiġi pproċessat jew lest. Uża dan biex tikkalkula l-ħin ta' stennija u turi l-istatus tal-kju lill-utenti tiegħek.
processing_time Ħin totali tal-ipproċessar f'sekondi (disponibbli meta jitlesta).
Lott b'ħafna lingwi

Ittraduċi testi multipli għal lingwi multipli f'daqqa:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Tlesta result_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
}
Parametri tat-talba
Parametru Tip Meħtieġa Deskrizzjoni
texts array Iva Array ta' kordi li għandhom jiġu tradotti
target_language string Iva* Kodiċi tal-lingwa fil-mira għal lingwa waħda
target_languages array Iva* Array tal-kodiċijiet tal-lingwa fil-mira għal lingwi multipli
source_language string L-ebda Source language code. Default: "auto"

* Ipprovdi jew target_language jew target_languages, mhux it- tnejn.

L-Aħjar Prattiki għal Tagħbijiet tax-Xogħol Kbar
  • Ibgħat 1 lingwa fil-mira għal kull talba tal-lott.Dan iżomm kull lott veloċi u jagħmel il-progress faċli biex jiġi segwit.
  • Żomm lottijiet ta’ 50-100 test, lottijiet iżgħar jitlestew aktar malajr u jagħtuk aġġornamenti aktar frekwenti dwar il-progress.
  • Jippreżentaw bħala ħafna xogħlijiet lott kif għandek bżonn - tagħna GPU cluster auto-skali biex jimmaniġġjaw id-domanda.Xogħlijiet huma pproċessati b'mod parallel fuq istanzi multipli.
  • Fuq timeout, re-poll l-istess job_id minflok tissottometti lott ġdid. Ix-xogħol oriġinali jista 'jkun għadu qed jiġi pproċessat fuq il-GPU.
  • Poll kull 3-5 sekondi. Polls aktar frekwenti ma jħaffux l-ipproċessar.

Traduzzjoni tad-dokument

Ittraduċi dokumenti sħaħ filwaqt li jippreservaw ifformattjar. Jappoġġja formati tal-fajl multipli.

POST https://api.translateapi.ai/api/v1/translate/document/
Talba (multipart/form-data)
Parametru Tip Meħtieġa Deskrizzjoni
file file Iva Id-dokument li għandu jiġi tradott (massimu ta' 10MB)
target_language string Iva Target language code (e.g., "es", "fr", "de")
source_language string L-ebda Source language code. Default: "auto" (auto-detect)
Tipi tal-fajl appoġġjati
Dokumenti
  • .txt - Fajls ta' test sempliċi
  • .docx - Dokumenti Word
  • .pdf - Dokumenti PDF (inklużi dawk skenjati)
Data & Lokalizzazzjoni
  • .json - JSON fajls (jittraduċi valuri string)
  • .xml - Fajls XML
  • .srt - Fajls tas-sottotitoli
  • .po / .pot - Fajls tat-traduzzjoni Gettext
Immaġini (OCR)
  • .jpg / .jpeg - Immaġini JPEG (OCR)
  • .png - Immaġini PNG (OCR)
  • .tiff / .tif - Stampi TIFF (OCR)
  • .bmp - Immaġini BMP (OCR)
  • .webp - Immaġini WebP (OCR)
Eżempju (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"
Rispons
{
    "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"
}
OCR Appoġġ: Il-fajls tal-immaġini u l-PDFs skenjati jiġu pproċessati permezz tar-rikonoxximent ottiku tal-karattri (OCR) biex jiġi estratt it-test qabel it-traduzzjoni.Għall-aħjar riżultati, uża immaġini ċari b'riżoluzzjoni għolja.
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Iċċekkja l-istatus ta' traduzzjoni ta' dokument jew irkupra l-URL tat-tniżżil.

Valuri tal-istatus
pending Fajl imtella', qed jistenna li jiġi pproċessat
processing Traduzzjoni fil-proċess
completed Traduzzjoni kompluta, download disponibbli
failed Traduzzjoni naqset (iċċekkja error_message)

Lingwi appoġġjati

Ikseb il-lista tal-lingwi kollha appoġġjati.

GET https://api.translateapi.ai/api/v1/translate/languages/
Rispons
{
    "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"},
        ...
    ]
}

Ara l-186 lingwa kollha

Mudelli tat-Traduzzjoni

Aħna nużaw mudelli ta’ traduzzjoni open source li jaħdmu fuq l-infrastruttura tal-GPU tagħna stess u l-mudelli kollha huma liċenzjati kummerċjalment (Apache 2.0).

Mudell Lingwi Aħjar Għal
Helsinki-NLP/opus-mt 50+ par ta’ lingwi Lingwi komuni (EN, ES, FR, DE, IT, PT, RU, ZH, JA, eċċ.)
Google MADLAD-400 400 + lingwi Lingwi rari, kopertura komprensiva

L-API awtomatikament tagħżel l-aħjar mudell għall-par tal-lingwa tiegħek. Tista' tispeċifika engine parametru:

Il-magna Deskrizzjoni
"auto" Default. Jipprova HuggingFace ewwel, jaqa lura għall-MADLAD-400
"huggingface" Forza HuggingFace/MarianMT (aktar mgħaġġel, 50+ lingwi)
"madlad" Forza MADLAD-400 (400+ lingwi)

Immaniġġjar tal-iżbalji

L-API tuża kodiċijiet standard tal-istatus HTTP biex tindika s-suċċess jew il-falliment.

Kodiċi Deskrizzjoni
200 Suċċess
202 Aċċettat — Xogħol tal-lott fil-kju b’suċċess
400 Talba ħażina — Parametri invalidi (test nieqes, lingwa mhux appoġġjata, eċċ.)
401 Mhux awtorizzat - Ċavetta API invalida jew nieqsa
402 Ħlas Meħtieġ — Karattru krediti eżawriti. Aġġorna l-pjan tiegħek jew jixtru top-up.
403 Projbit — Il-kodiċi tal-API m'għandux l-ambitu meħtieġ jew l-IP mhuwiex fil-whitelist
503 Servizz Mhux Disponibbli - Traduzzjoni magna temporanjament isfel
Format tar-Rispons ta’ Żball
{
    "error": "insufficient_credits",
    "credits_remaining": 0
}

Limiti ta’ Użu

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:

Pjan Karattri/Xahar API tal-lott Dokumenti Prezz
Liberi 250,000 $0 Irreġistra b'xejn
Starter 2,500,000 $9/6 xhur Abbona
Għaliex 10,000,000 $29/6 xhur Abbona
In-negozju 40,000,000 $79/6 xhur Abbona
Skala 125,000,000 $199/6 xhur Abbona
Enterprise Unlimited $499/6 xhur Contact Sales

Meta taqbeż il-limitu tiegħek, inti ser tirċievi 402 Payment Required rispons sakemm ix-xahar li jmiss jew inti taġġorna.

Infrastruttura tal-Cloud tal-Auto-Skaling

Meta d-domanda tiżdied, jiġu varati istanzi addizzjonali tal-GPU fi żmien ftit minuti biex jinżammu ħinijiet ta' rispons veloċi. It-talbiet kollha jiġu mqiegħda fil-kju u pproċessati — ibgħat mijiet ta' talbiet simultanji u dawn kollha jiġu ttrattati. It-traduzzjonijiet f'ħin reali jingħataw prijorità, il-proċess tax-xogħol tal-lott fl-isfond.

Għandek bżonn aktar Krediti?

Ixtri kreditu ta' darba biex tkompli tkabbar il-baġit tiegħek mingħajr ma tbiddel il-pjan tiegħek. Ara l-pakketti top-up

Ikklassifika din il-paġna
Grazzi għall-klassifikazzjoni tiegħek!
/5 ibbażata fuq klassifikazzjonijiet