API Dokumentasie

Dra kragtige vertaling in jou aansoeke met ons eenvoudige REST API.

Hoe om te begin

Die VertaalAPI verskaf 'n eenvoudige REST-koppelvlak om teks tussen 180+ tale te vertaal. Al 'nPI-puntpunte gee terug JSON antwoord.

1. Kry jou API-sleutel

Skep 'n gratis rekening en genereer jou API sleutel van die paneelbord:

  1. Teken op na: translateapi.ai/signup
  2. Gaan na Kasbord → API-sleutelsComment
  3. Kliek "Skep API Sleutel" en kopieer jou sleutel

API sleutels begin met ta_ gevolg deur 56 heks karakters.

Basis URL: https://api.translateapi.ai/api/v1/
2. Doen jou eerste versoek

Vervang JOU_API_KYE met die sleutel van jou paneelbord:

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

Geldigheidsverklaring

Verifiëer jou versoeke deur 'n API-sleutel te gebruik. Jy kan API-sleutels van jou skep K- bord.

Opskrif Geldigheidsverklaring (Aanbeveel)
Authorization: Bearer ta_your_api_key_here
Apileuteltitel
Authorization: ApiKey ta_your_api_key_here
Navraag Parameter
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Hou jou API-sleutels veilig! Moenie hulle in kliënt-side-kode of openbare regstellings blootstel nie.

Vertaal Teks

Vertaal teks na 'n enkel doel taal.

POST https://api.translateapi.ai/api/v1/translate/
Versoek Liggaam
Parameter Tipe Benodig Beskrywing
text string Ja Teks om te vertaal (max 50 000 karakters)
target_language string Ja* Target language code (e.g., "es", "fr", "de")
source_language string Nee Source language code. Default: "auto" (auto-detect)
engine string Nee Vertalingsenjin: "outo" (verstek), "koggingace", of "madlaak". Sien Vertaling Models. Vertaling Modelle.

* Gebruik target_language (string) vir enkeltaal of target_languages (skikking) vir veelvuldige. Sien Multi- Polerge Translation.

Reaksie
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}
Outo- Naspeur: Ommit source_language of stel dit aan "auto" na automaties verklik die bron taal. Die opgespoor taal is teruggestuur in die source_language Antwoord veld.

Multi- Polerge Translation

Vertaal teks na veelvuldige tale in 'n enkel versoek. Gebruik dieselfde punt as enkel vertaling.

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

Gebruik target_languages (skikking) in plaas van target_language (string) vir veelvuldige teikens.

Reaksie
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}
Leidraad: Jy kan in een versoek tot 50 tale vertaal.

Bangt TranslationQuery

Vertaal veelvuldige tekste dadelik met ansync verwerking. Instuur 'n klomp en bestuiwers vir resultate.

Limiet: Maksimale 100 tekste per vrag, tot 300 totale items (tekste × teikentale). Werkstyd uit 45 minute nadat verwerking begin het.
Spoed: Gemeenskaplike tale (ES, FR, DE) gebruik vinnige modelle (~ 1. 080). Minder gemeenskaplike tale gebruik ons veeltalige model (~1-3s/ text).
POST https://api.translateapi.ai/api/v1/translate/batch/
Stap 1: Dien Batch in
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"
}'
Reaksie (HTTP 202 aanvaar)
{
    "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/"
}
Stap 2: Smeer vir resultate
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Hoe om'n voorbeeld te stel (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)
Reaksie (%d%% klaar)
{
    "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
    }
}
Reël-tyd Vordering
Veld Beskrywing
status pending (Gekies, gewag vir 'n GPU-werker), processing (aktief vertaal), completed, failed
processed_texts Aantal individuele vertalings wat tot dusver voltooi is. Dateer op in werklike tyd namate elke teks vertaal word.
progress_percentage Voltooià ̄ng persentasie (0- 100). Geformateerde van verwerkte_tekste / totaal_tekste.
queue_position Jou posisie in die wagtou wanneer status is "hang" (1 = volgende begin). Null wanneer verwerking of voltooi. Gebruik hierdie na skat wag tyd en vertoon wagtou status aan jou gebruikers.
processing_time Totaal verwerking tyd in sekondes (beskikbaar wanneer voltooi).
Multi-Language Bangch

Vertaal veelvuldige tekste na veelvuldige tale op 'n slag:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Voltooide resultaat
{
    "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
}
Versoek Parameters
Parameter Tipe Benodig Beskrywing
texts array Ja Verbranding van stringe om te vertaal
target_language string Ja* Teiken taal kode vir enkel taal
target_languages array Ja* Array van teikentaalkodes vir veelvuldige tale
source_language string Nee Source language code. Default: "auto"

* Voorsien ook target_language of target_languages, nie albei nie.

Beste gebruike vir groot werklaste
  • Stuur 1 teiken taal per bord versoek. Dit hou elke klomp vinnig en maak vordering maklik om te volg.
  • Hou hope by 50-100 tekste, Kleiner klomps voltooi vinniger en gee jou meer gereelde vordering bywerkings.
  • @ info/ rich crash situation example
  • Op tydverstreke, re-poll dieselfde werk_id in plaas van instuur 'n nuwe klomp. die oorspronklike werk dalk mag wees verwerking op die GPU.
  • Tel elke 3- 5 sekondes. Meer gereelde meningspeilings bespoedig nie verwerking nie.

Dokument Vertaling

Vertaal hele dokumente terwyl besig is om formatering te bewaar. Ondersteun veelvuldige lêer formate.

POST https://api.translateapi.ai/api/v1/translate/document/
Versoek (ultipart/form- data)
Parameter Tipe Benodig Beskrywing
file file Ja Die dokument om te vertaal (max 10mb)
target_language string Ja Target language code (e.g., "es", "fr", "de")
source_language string Nee Source language code. Default: "auto" (auto-detect)
Ondersteunde Lêer Tipes
Dokumente
  • .txt - Skoontekslêers
  • .docx - Woorddokumente
  • .pdf - PDF-dokumente (insluitende ingevoer)
Data Lokalisering
  • .json - JSON lêers (vertaal string waardes)
  • .xml - XML-lêers
  • .srt - Subtitel lÃaers
  • .po / .pot - Krytext - vertalinglêers
Beelde (OCR) Name
  • .jpg / .jpeg - JPEG-beelde (OCR)
  • .png - PNG-beelde (OCR)
  • .tiff / .tif - TIFF-beelde (OCR)
  • .bmp - BMP-beelde (OCR)
  • .webp - WebP-beelde (OCR)
Voorbeeld (c URL)
# 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"
Reaksie
{
    "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"
}
Optiese karakter herkenning ondersteuning: Beeldlêers en geskandeerde PDF's word verwerk met optiese karaktererkenning (OCR) om teks voor vertaling uit te pak. Vir die beste resultate, gebruik helder, hoë-opsolusie beelde.
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Bevestig die status van 'n dokument vertaling of onttrek die aflaai Url.

Status waardes
pending Lêer opgelaai, wag om verwerk te word
processing Vertaling in vordering
completed Vertaling voltooi, aflaai beskikbaar
failed Vertaling gevaal (toets fout_boodskap)

Ondersteunde tale

Kry die lys van alle ondersteunde tale.

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

Kyk na al 186 tale

Vertaling Modelle

Ons gebruik staat-van-die-kuns oop bron vertaal modelle wat op ons eie GPU-U infrastruktuur loop. Alle modelle is kommersieel gelisensieer (Apache 2,0).

Model Tale Beste vir
Helsinki-NLP/opus-mt 50+ taalpare Gemeenskaplike tale (EN, ES, FR, DE, DIT, PT, RUT, ZH, JA, etc.)
Google MADLAD-400 400+ tale Rare tale, omvattende dekking

Die API kies outomaties die beste model vir jou taal paar. Jy kan 'n opsie spesifiseer. engine parameter:

Masjien Beskrywing
"auto" Verstek. Trys Hugging Face first, terug na MADLAD-400
"huggingface" Forseer Hugging Face/MaricMT (vinnigste, 50+ tale)
"madlad" Forseer MADLAD-400 (400+ tale)

Fout met hantering van lêer: %s

Die API gebruik standaard HTTP status kodes om sukses of mislukking aan te dui.

Kommentaar Beskrywing
200 Sukses
202 Aanvaar dji Batch werk wagtou suksesvol
400 Slegte Versoek parameters Ongeldige parameters (vermisde teks, nie ondersteunde taal, ens.)
401 ongemagtigde - Ongeldig of afwesig 'nPI-sleutel
402 Betaal benodig Karakter krediete uitgeput. Gradeer jou plan op of koop 'n bo-op.
403 Voorgelate Š API sleutel ontbreek benodigde omvang of ip nie in witlys nie
503 Diens nie beskikbaar nie - Vertaalenjin tydelik af
Fout Reaksie Formaat
{
    "error": "insufficient_credits",
    "credits_remaining": 0
}

Gebruik Limiet

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:

Plan Karakter/Maand Bang API Dokumente Prys
Beskikbaar 250,000 $0 Meld aan om vry te wees
Beginer 2,500,000 $9/mo Teken in
Pro 10,000,000 $29/mo Teken in
Besigheid 40,000,000 $79/mo Teken in
Skaal 125,000,000 $199/mo Teken in
Enterprise Unlimited $499/mo Contact Sales

As jy jou grens oorskry, sal jy 'n 402 Payment Required reaksie tot die volgende maand of op opgradering.

Outo- caling Wolk Infrastruktuur

Vertaalfoto's loop op toegewyde NVIDIA A100 GPU gevalle met outomatiese horisontaleskalering. Wanneer die aanvraag toeneem, word addisionele GPU gevalle binne minute gelanseer om vinnige reaksietye te handhaaf. Alle versoeke word getoue en verwerk ooit ter harte geneem, en dit sal alles hanteer word. Real-time vertalings kry prioriteit, vragwerk proses in die agtergrond.

Het jy nog krediete nodig?

Hardloop uit van karakters mid-month? Purchase 'n eentyd krediet top-up sonder om jou plan te verander. Besigtig bo-up pakkies

Tempo hierdie bladsy
Dankie vir jou ouderdom!
/5 gebaseer op Graderings