Dokumentace API

Integrovat výkonný překlad do vašich aplikací s naší jednoduchou REST API.

Začínáme

TranslateAPI poskytuje jednoduché rozhraní REST pro překlad textu mezi 180+ jazyky. Všechny cílové parametry API vrací JSON odpovědi.

1. Získejte svůj API klíč

Vytvořte si volný účet a vygenerujte si API klíč z palubní desky:

  1. Zaregistrujte se na translateapi.ai/signup
  2. Přejít na Přístrojová deska → API klíče
  3. Klikněte na "Vytvořit API klíč" a zkopírujte svůj klíč

API klíče začít s ta_ Následuje 56 hex znaků.

Základní URL: https://api.translateapi.ai/api/v1/
2. Vyžádejte si svou první žádost

Nahradit VAŠE_API_KEY klíčem z palubní desky:

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

Ověření

Ověřit své požadavky pomocí API klíče. Můžete vytvořit API klíče ze svého přístrojová deska.

Autentizace záhlaví (doporučeno)
Authorization: Bearer ta_your_api_key_here
ApiKey Header
Authorization: ApiKey ta_your_api_key_here
Parametr dotazu
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Mějte své API klíče zabezpečené! Nevystavujte je v kódu na straně klienta nebo ve veřejných úložištích.

Přeložit text

Přeložte text do jednoho cílového jazyka.

POST https://api.translateapi.ai/api/v1/translate/
Požadovaný subjekt
Parametr Typ Požadované Popis zboží
text string Ano. Text k překladu (maximálně 50 000 znaků)
target_language string Ano * Target language code (e.g., "es", "fr", "de")
source_language string Ne. Source language code. Default: "auto" (auto-detect)
engine string Ne. Translation engine: "auto" (přednastaveno), "objímání" nebo "madlad." Viz Translation Models. Překladatelské modely.

* Použití target_language (řetězec) pro jeden jazyk nebo target_languages (array) pro vícenásobný. Viz Multi-Target Translation.

Odpověď
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}
Automatická detekce: Omit source_language nebo ji nastavit na "auto" automaticky detekovat zdrojový jazyk. Detekovaný jazyk je vrácen v source_language Odpovědní pole.

Multi-Target Translation

Přeložit text do více jazyků v jedné žádosti. Používá stejný cíl jako jeden překlad.

POST https://api.translateapi.ai/api/v1/translate/
Požadovaný subjekt
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Použití target_languages (array) místo target_language (řetězec) pro více cílů.

Odpověď
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}
Tip: Můžete přeložit až do 50 jazyků na jednu žádost.

Překlad č. š.:

Přeložit více textů najednou s async zpracování. Odešlete dávku a anketu o výsledky.

Mezní hodnoty: Max. 100 textů v dávce, max. 300 celkem položek (texty × cílové jazyky). Pracovní doba 45 minut po zahájení zpracování.
Rychlost: Běžné jazyky (ES, FR, DE) používají rychlé modely (~0,1s/text). Méně běžné jazyky používají náš vícejazyčný model (~1-3s/text).
POST https://api.translateapi.ai/api/v1/translate/batch/
Krok 1: Odevzdat č. š.:
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"
}'
Odpověď (HTTP 202 přijata)
{
    "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/"
}
Krok 2: Poll pro výsledky
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Příklad aplikace (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)
Odpověď (dokončena)
{
    "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
    }
}
Sledování pokroku v reálném čase
Pole Popis zboží
status pending (odkázaná, čekající na pracovníka GPU), processing (aktivní překlad), completed, failed
processed_texts Dosud dokončen počet jednotlivých překladů. Aktualizace v reálném čase jako každý text je přeložen.
progress_percentage Procento dokončení (-100). Vypočteno ze zpracovávaných_textů / celkem_textů.
queue_position Vaše pozice ve frontě, kdy je stav "trápení" (1 = další nahoru). Při zpracování nebo dokončení null. Použijte toto k odhadu čekací doby a zobrazit stav fronty pro své uživatele.
processing_time Celková doba zpracování v sekundách (k dispozici po dokončení).
Vícejazyčná č. š.:

Přeložit více textů do více jazyků najednou:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Ukončené výsledky_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
}
Požadovat parametry
Parametr Typ Požadované Popis zboží
texts array Ano. Array řetězců k překladu
target_language string Ano * Kód cílového jazyka pro jeden jazyk
target_languages array Ano * Pole cílových jazykových kódů pro více jazyků
source_language string Ne. Source language code. Default: "auto"

* Uveďte buď target_language nebo target_languagesNe obojí.

Nejlepší praxe pro velké pracovní zatížení
  • Poslat 1 cílový jazyk na žádost o dávku. To udržuje každou dávku rychle a dělá pokrok snadno sledovat.
  • Udržujte šarže na 50-100 textech. Menší šarže dokončit rychleji a dát vám častější aktualizace pokroku.
  • Odevzdejte tolik dávkových pracovních míst, kolik budete potřebovat, naše GPU klastrové automatické stupnice zvládnout poptávku. Práce jsou zpracovávány paralelně v několika případech.
  • Při timeoutu přepollujte stejnou práci_id místo odevzdání nové dávky. Původní práce může být stále zpracovávána na GPU.
  • Vyhledejte každých 3-5 sekund. Častější průzkumy nezrychlují zpracování.

Překlad dokumentu

Přeložit celé dokumenty při zachování formátování. Podporuje více formátů souborů.

POST https://api.translateapi.ai/api/v1/translate/document/
Žádost (multipart/form-data)
Parametr Typ Požadované Popis zboží
file file Ano. Dokument k překladu (max. 10MB)
target_language string Ano. Target language code (e.g., "es", "fr", "de")
source_language string Ne. Source language code. Default: "auto" (auto-detect)
Podporované typy souborů
Dokumenty
  • .txt - Jednoduché textové soubory
  • .docx - Slovní dokumenty
  • .pdf - PDF dokumenty (včetně naskenovaných)
Data a lokalizace
  • .json - JSON soubory (překládá hodnoty řetězce)
  • .xml - XML soubory
  • .srt - Soubory titulků
  • .po / .pot - Soubory pro překlad Gettextu
Obrázky (OCR)
  • .jpg / .jpeg - JPEG obrázky (OCR)
  • .png - PNG obrázky (OCR)
  • .tiff / .tif - TIFF obrázky (OCR)
  • .bmp - BMP obrázky (OCR)
  • .webp - WebP obrázky (OCR)
Příklad (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"
Odpověď
{
    "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"
}
Podpora OCR: Soubory obrázků a naskenované PDF jsou zpracovány s optickým rozpoznáváním znaků (OCR) pro extrahování textu před překladem. Pro nejlepší výsledky použijte jasné, snímky s vysokým rozlišením.
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Zkontrolujte stav překladu dokumentu nebo najděte adresu URL ke stažení.

Hodnoty stavu
pending Soubor nahraný, čekající na zpracování
processing Probíhá překlad
completed Překlad kompletní, ke stažení k dispozici
failed Překlad selhal (kontrola chyb_zpráva)

Podporované jazyky

Získejte seznam všech podporovaných jazyků.

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

Zobrazit všech 186 jazyků

Překladatelské modely

Používáme nejmodernější open source překlady modely běžící na naší vlastní GPU infrastruktury. Všechny modely jsou komerčně licencovány (Apache 2.0).

Vzor Jazyky Nejlepší pro
Helsinki-NLP/opus-mt 50+ párů jazyků Společné jazyky (EN, ES, FR, DE, IT, PT, RU, ZH, JA atd.)
Google MADLAD-400 400+ jazyků Vzácné jazyky, komplexní pokrytí

API automaticky vybere nejlepší model vašeho jazykového páru. engine parametr:

Motor Popis zboží
"auto" Default. Try HuggingFace první, padá zpět na MADLAD-400
"huggingface" Force HuggingFace/MarianMT (nejrychlejší, 50+ jazyky)
"madlad" Síla MADLAD-400 (400+ jazyků)

Chyba při manipulaci

API používá standardní HTTP stavové kódy k označení úspěchu nebo selhání.

Kód Popis zboží
200 Úspěch
202 Akceptováno: Batch pracovních míst úspěšně ve frontě
400 Špatná žádost Neplatné parametry (chybí text, nepodporovaný jazyk, atd.)
401 Nepovolený - Neplatný nebo chybějící API klíč
402 Platba Požadované Charakterové kredity vyčerpány. Upgrade svůj plán nebo koupit nahoru.
403 Zakázané API klíč postrádá požadovaný rozsah nebo IP není ve whitelistu
503 Servis Nedostupný - Translation engine dočasně dolů
Formát odpovědi na chybu
{
    "error": "insufficient_credits",
    "credits_remaining": 0
}

Omezení použití

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:

Plán Znaky/Měsíc Č. šarže API Dokumenty Cena
Volné 250,000 $0 Zaregistrovat se zdarma
Starter 2,500,000 $9/ne Přihlásit
Pro 10,000,000 $29/ne Přihlásit
Obchod 40,000,000 $79/ne Přihlásit
Měřítko 125,000,000 $199/ne Přihlásit
Enterprise Unlimited $499/ne Contact Sales

Když překročíte limit, dostanete 402 Payment Required odpověď do příštího měsíce nebo si upgrade.

Auto-Scaling Cloud Infrastructure

TranslateAPI běží na specializovaných NVIDIA A100 GPU instancí s automatickým horizontálním škálováním. Při zvyšování poptávky jsou do několika minut spuštěny další GPU instance, aby se udržely rychlé časy odezvy. Všechny žádosti jsou ve frontě a zpracovány. Pošlete stovky souběžných požadavků a všechny budou řešeny. V reálném čase překlady mají přednost, dávkové práce proces v pozadí.

Potřebujete více kreditů?

Došly postavy v polovině měsíce? Koupit jednorázový úvěr dolít bez změny plánu. Zobrazit balení pro doplnění

Hodnotit tuto stránku
Děkuji vám za hodnocení!
/5 na základě hodnocení