АПИ документација

Интегриши моћни превод у ваше апликације са нашим једноставним РЕСТ АПИ.

Започињем

Превод АПИ пружа једноставно РЕСТ сучеље за превођење текста између 180+ језика. Сви АПИ исходни тачки враћају ЈСОН одговоре.

1. Узми свој АПИ кључ

Направите бесплатни налог и направите АПИ кључ са табле:

  1. Пријави се на translateapi.ai/signup
  2. Иди на Табло → АПИ тастери
  3. Кликните на „ Направи АПИ кључ “ и копирајте кључ

АПИ тастери почињу са ta_ Затим 56 хекс знакова.

Основни УРЛ: https://api.translateapi.ai/api/v1/
2. Направите свој први захтев

Зам› ијени кључем из табле:

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
}

Аутентификација

Аутентификујте захтеве помоћу АПИ кључа. Можете направити АПИ кључеве из вашег табла.

Аутентификација заглавља (препоручена)
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 Не. Мотор превођења: „ ауто “ (подразум› ијевано), „ прилогно лице “ или „ мадлад “. Погледајте моделе превођења. модели превођења.

* Користи 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
}
Сав› јет: Можете превести до 50 језика у једном захтеву.

Пакетни превод

Преведите више текста одједном помоћу синхронизације. Пошаљите серију и анкету за резултате.

Ограничења: Највише 100 текста по серији, максимум 300 укупних ставки (текст × циљни језици). Време рада је истекло 45 минута након почетка обраде.
Брзина: Заједнички језици (ES, FR, DE) користе брзе моделе (~ 0, 1s/ text). Мање уобичајени језици користе наш језички модел (~ 1-3s/text).
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"
}'
Одговор (ХТТП 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}/
Пример анкетирања (Питон)
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 (Куеуед, чекајући за ГПУ радник), processing (активно превођење), completed, failed
processed_texts Број до сада завршених појединачних превода. Ажурирања у реалном времену док се сваки текст преводи.
progress_percentage Проценат допуне (0- 100). Израчунато из обрађених_ текста / укупног_ текста.
queue_position Положај у реду када је стање „ пендеринг “ (1 = следећи). Нул при обрађивању или довршавању. Користите ово да процените време чекања и приказује стање реда корисницима.
processing_time Укупно време обраде у секунди (доступно по завршетку).
пакет вишејезичког

Преведи више текста на више језика одједном:

{
    "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, не обоје.

Најбоље праксе за велике радне оптерећења
  • Пошаљи 1 циљни језик по пакетном захт› јеву. Ово држи сваку партију брзо и олакшава праћење.
  • Држите пакете на 50-100 текста. Мањи пакети довршавају брже и дају вам чешће ажурирање напретка.
  • Пошаљите колико год вам је потребно пакетних послова — наше ГПУ кластера аутоматске скале за руковање потражњом. Посао се обрађује паралелно у више случајева.
  • При прекиду рада, поновите исти идентификатор уместо подношења нове серије. Оригинални посао може и даље да се обрађује на ГПУ‐ у.
  • Прати сваких 3-5 секунди, чешће анкете не убрзавају обраду.

Превођење документа

Преводи целе документе при сачувању форматирања. Подржава вишеструке формате фајлова.

POST https://api.translateapi.ai/api/v1/translate/document/
Захт› јев (мултипартални/формални подаци)
Параметар тип неопходно Опис
file file Да. Документ који се преводи (максимум 10МБ)
target_language string Да. Target language code (e.g., "es", "fr", "de")
source_language string Не. Source language code. Default: "auto" (auto-detect)
подржани типови фајлова
Документи
  • .txt - Обични текстуални фајлови
  • .docx - Речни документи
  • .pdf - ПДФ документи (укључујући и скениране)
& Локализација података
  • .json - ~@ ¦ЈСОН¦JSON¦ фајлови (вредности ниске преводи)
  • .xml - ~@ ¦ИксМЛ¦XML¦ фајлови
  • .srt - Фајлови поднаслова
  • .po / .pot - Добављање текстуалних преводилачких фајлова
Слике (ОЦР)
  • .jpg / .jpeg - ЈПЕГ слике (ОЦР)
  • .png - ПСИП слике (ОЦР)
  • .tiff / .tif - ТИФФ слике (ОЦР)
  • .bmp - БМП слике (ОЦР)
  • .webp - ~@ ¦ВебП¦WebP¦ слике (OCR)
Пример (цУРЛ)
# 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"},
        ...
    ]
}

Приказ свих 186 језика

модели превођења

Користимо најмодерније моделе превођења отвореног извора који раде на нашој ГПУ инфраструктури. Сви модели су комерцијално овлашћени (Апаче 2.0).

Модел језици Најбоље за
Helsinki-NLP/opus-mt 50+ парова језика Заједнички језици (EN, ES, FR, DE, IT, PT, RU, ZH, JA, итд.)
Google MADLAD-400 400+ језика Ретки језици, свеобухватна покривеност

АПИ аутоматски бира најбољи модел за ваш пар језика. Опционо можете задати један engine параметар:

мотор Опис
"auto" Подразум› ијевано. Покушава прво ХуггингФаце, пада назад на МАДЛАД-400
"huggingface" Притисни лице/МаријанМТ (најбрже, 50+ језика)
"madlad" Приморај МАДЛАД-400 (400+ језика)

Рашчлањивање грешака

АПИ користи стандардне ХТТП кодове стања за указивање успеха или неуспеха.

Кôд Опис
200 Усп› јех
202 Усп› јешно прихваћено — пакетни посао у реду
400 Лош захт› јев — неисправни параметри (недостаје текст, неподржан језик итд.)
401 Неовлашћен — неисправан или недостаје АПИ кључ
402 Неопходно је плаћање — знаковни кредити исцрпљени. Надоградите план или купите врхунски.
403 Забрањено — АПИ кључу недостаје неопходни опсег или ИП није у белој листи
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:

План Знакови/м› јесец Пакетно АПИ Документи цена
слободни 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 Одговор до следећег месеца или надоградите.

Инфраструктура облака за аутоматско скалирање

Преводи АПИ ради на посвећеним примерцима ~@ ¦НВИДИА А100¦GPU¦ са аутоматским хоризонталним скалирањем. Када се захт› јев повећава, додатни примерци ГПУ‐ а се покрећу у року од минута за одржавање времена брзог одговора. Сви захт› јеви су у реду и обрађени — пошаљи стотине истовремених захт› јева и сви ће бити обрађени. Преводи у реално време добију приоритет, пакетни процес рада у позадини.

Потребно више кредита?

Понестало нам је знакова у месецу? Приказ врхунски пакети

Оц› јени ову страницу
Хвала на оцењивању!
/5 базирано на рејтинг