Dọkumenti

Integrate powerful translation into your applications with our simple REST API.

Bido

TranslateAPI na-enye REST interface dị mfe maka ịsụgharị ngwe n'etiti 180+ asụsụ. All API endpoints return JSON responses.

Base URL: https://api.translateapi.ai/api/v1/
Bido n'ụzọ nkịtị

Kewapụta ajụjụ mbipụta mbụ gị:

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!"
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

class Program
{
    static async Task Main()
    {
        var client = new HttpClient();
        client.DefaultRequestHeaders.Add(
            "Authorization", "Bearer YOUR_API_KEY"
        );

        var content = new StringContent(
            JsonConvert.SerializeObject(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 = await response.Content.ReadAsStringAsync();
        var data = JsonConvert.DeserializeObject<dynamic>(result);
        Console.WriteLine(data.translated_text);  // "Hola, mundo!"
    }
}

Nkwenye

Wepụta nkwenye maka arịrịọ gị site n'iji kii API. I nwere ike ịmepụta kii API site na gị Dashboard.

Ndesịta ozi ndị ahụ
Authorization: Bearer ta_your_api_key_here
Paramita
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Chekwaa kììị̀ API gị n'ụzọ kwesịrị ekwesị! Enweghị ike igosipụta ha n'ime kọ́ọ̀dị̀ n'akụkụ onye ọrụ mọọbụ ebe nchekwa ndị mmadụ.

Gbanwee ngwe

Bagharịa ngwe ahụ n'asụsụ ọfụụ.

POST https://api.translateapi.ai/api/v1/translate/
Nhazi ahụ
Paramita Ụdị Achọrọ Ndesịta nkọwa
text string Ee ngwe a ga-atụgharị (maximum 50,000 characters)
target_language string Ya* Target language code (e.g., "es", "fr", "de")
source_language string Ọ dịghị Source language code. Default: "auto" (auto-detect)

* Jiri target_language ( string) maka asụsụ ọbụla mọọbụ target_languages (arịị) maka ọtụtụ. Gụọ Nsụgharị dị iche iche.

Ndesịta ozi ahụ
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}

Nsụgharị dị iche iche

Gbanwee ngwe n'asụsụ ndị dị iche iche n'ime ajụjụ ọfụụ. Na-eji ngwụcha nke ọfụụ dịka ntụgharị ọfụụ.

Ndụmọdụ: I nwere ike ịsụgharị ruo asụsụ 50 n'ime ajụjụ otu.
POST https://api.translateapi.ai/api/v1/translate/
Nhazi ahụ
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Jiri target_languages (arịị) ebe ọ bụ nke target_language (ọnụọgụgụ) maka ihenhọrọ ndị dị iche iche.

Ndesịta ozi ahụ
{
    "source_language": "en",
    "translations": {
        "es": "Hola, mundo!",
        "fr": "Bonjour, monde!",
        "de": "Hallo, Welt!",
        "ja": "こんにちは、世界!"
    },
    "character_count": 52,
    "translation_time": 2.31
}

Báà

Gbanwee ngwe ndị dị iche iche n'otu oge na usoroiheomume async. Tinye batch na pọọlụ maka nsonaazụ.

Ogo: max 500 ngwe kwa batch, max 750 ọnụọgụgụ ihenhọrọ (ngwe × asụsụ n'ihe nlereanya). Ọrụ oge eruola 30 nkeji mgbe usoro iheomume na-amalite (oge ịtụle n'ọnụọgụgụ).
Oge usoroiheomume na-adabere na asụsụ: asụsụ ndị a na-ejikarị (Spanish, French, German, wdg) na-eji móòdù ngwa ngwa (~0.1s n'otu ngwe), ebe asụsụ ndị na-ejighị ya na-eji mòdù anyị na-eji ọtụtụ asụsụ (~1-3s n'otu ngwe). A 100-okwu batch na-agwụ n'ime 10-30 sekọnd maka asụsụ ndị a na-ejikarị, mọọbụ 2-5 minit maka ndị na-ejighị ya na-ejikarị. Maka nsonaazụ kacha mma, zigara asụsụ 1 n'otu arịrịọ batch ma na-echekwa batch n'okpuru 50 ngwe.
POST https://api.translateapi.ai/api/v1/translate/batch/
Nzọụkwụ 1: Tinye Báà
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"
}'
Ndesịta nzaghachi (HTTP 202 Ekwenyere)
{
    "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/"
}
Nzọụkwụ 2: Kpọọ maka nsonaazụ
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Egwuregwu Polling (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"Completed: {processed}/{total} texts in {result.get('processing_time', 0):.1f}s")
        translations = result["result_data"]["translations"]
        break
    elif status == "failed":
        print(f"Failed at {processed}/{total}: {result.get('error_message', 'unknown')}")
        raise Exception(result.get("error_message", "Translation failed"))
    elif status == "pending":
        queue_pos = result.get("queue_position", "?")
        print(f"Queued (position {queue_pos}) — waiting for GPU worker...")
    else:
        print(f"[{status}] {processed}/{total} ({progress:.0f}%)")

    time.sleep(3)
Ndesịta nzaghachi (na-echere - n'ogbe, na-echere maka GPU)
{
    "job_id": "67535b2b-...",
    "status": "pending",
    "processed_texts": 0,
    "total_texts": 3,
    "progress_percentage": 0.0,
    "queue_position": 3
}
Ndesịta ozi ndị ahụ
{
    "job_id": "67535b2b-...",
    "status": "processing",
    "processed_texts": 1,
    "total_texts": 3,
    "progress_percentage": 33.33,
    "queue_position": null
}
Ndesịta ozi ahụ
{
    "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

Ndesịta nzaghachi ọbụla na-agụnye real-time progress fields ka ị nwee ike inyocha ihe na-eme na batch gị:

Ụlọọrụ Ndesịta nkọwa
status Nhazi ọrụ ọfụụ: pending (n'ọ̀tụ̀tụ̀, na-atụ anya maka GPU ọrụ), processing (na-asụgharị n'ụzọ nkịtị), completed, failed
processed_texts Ọnụọgụgụ nke ntụgharị asụsụ nkeonwe mechara ruo ugbua. Nhazigharị n'oge ọfụụ dịka ngwe ọbụla a na-asụgharị.
total_texts Ọnụọgụgụ zuru ezu nke nsụgharị na batch a (nsụgharị ngwe × asụsụ ihenhọrọ).
progress_percentage Percentile nke ngwụcha (0-100). E jiri ya tụnyere processed_texts / total_texts.
queue_position Nhazi gị n'ime wọ́kspéèsì mgbe ọnọdụ ahụ bụ "na-echere" (1 = na-esonụ). Null mgbe a na-ejikwa ya mọọbụ mechara ya. Jiri nke a maka ịtụle oge ịtụle ma gosi ọnọdụ wọ́kspéèsì n'ime ndị ọrụ gị.
processing_time Oge usoroiheomume zuru ezu n'ime sekọnd (n'efu mgbe e mechara).
Ndụmọdụ: Mgbe status bụ "pending", ndị ọrụ GPU na-arụsi ọrụ ike na ndị ọzọ batchs. Chekwaa queue_position iji hụ na ọrụ ole na ole na-aga n'ihu gị (1 = ị bụ nke ọzọ). Ọrụ gị ga-amalite n'onwe ya — ọ dịghị ihe omume achọrọ, na-echekwa polling.
Best Practices maka nnukwu Workloads
  • Ziga 1 target asụsụ kwa batch arịrịọ. Nke a na-echekwa batch ọbụla n'ụzọ nkịtị nakwa na-eme ka mmepe dị mfe ịtụle.
  • Kwụsị batchs na 50-100 ngwe. Batchs nke obere ga-agwụ n'ụzọ nkịtị ma nye gị mmelite mmepe nke na-emekarị.
  • Bido n'ihe karịrị ọrụ batch 2 n'otu oge. GPU na-arụ ọrụ batch 2 n'otu oge - ọrụ ndị ọzọ nọ n'ọnụọgụgụ na-amaliteghị n'ụzọ nkịtị.
  • N'ụbọchị oge eruola, pụọgharịa ọrụ_id nke ọbụla n'ebe ọbụla n'ihi na ịnabata batch ọfụụ. Ọrụ mbụ ahụ nwere ike ka na-arụ ọrụ na GPU.
  • Pọòlụ̀ mgbe ọbụla 3-5 sekọnd. Pọòlụ̀ na-aga n'ihu na-emeghị ka usoroiheomume na-aga n'ihu.
Multi-Language Batch

Gbanwee ngwe ndị dị iche iche na asụsụ ndị dị iche iche n'otu oge:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Ndesịta ihenhọrọ_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
}
Paramita ndị ahụ
Paramita Ụdị Achọrọ Ndesịta nkọwa
texts array Ee Arịị nke ụda ndị a ga-atụgharị
target_language string Ya* Target language code for single language
target_languages array Ya* Arịị nke kóòdù njirimara asụsụ maka asụsụ ndị ọzọ
source_language string Ọ dịghị Source language code. Default: "auto"

* Wepụta ma ọ bụ target_language ma ọ bụ target_languages, abụghị ha abụọ.

Asynchronous Processing Ndesịta arịrịọ ndị ahụ na-abịa n'oge na-adịghị anya na job_id. Ụlọọrụ GET /api/v1/jobs/{job_id}/ ruo mgbe status bụ "completed", mgbe ahụ gụọ result_data Maka nsụgharị. progress_percentage iji hụ n'ihu.

Dọkumenti ọfụụ

Gbanwee dọkumenti niile mgbe ị na-echekwa nhazi. Na-akwado faịlụ ụkpụrụedemede dị iche iche.

POST https://api.translateapi.ai/api/v1/translate/document/
Ndesịta arịrịọ (multipart/form-data)
Paramita Ụdị Achọrọ Ndesịta nkọwa
file file Ee Dọkumenti nke a ga-asụgharị (max 10MB)
target_language string Ee Target language code (e.g., "es", "fr", "de")
source_language string Ọ dịghị Source language code. Default: "auto" (auto-detect)
Ụdị faịlụ ndị ahụ e nyere nkwado ha
  • .txt - Faịlụ ngwe nkeonwe
  • .docx - Dọkumenti Word
  • .pdf - Dọkumenti PDF (na-agụnye emeredịkachọrọ)
  • .json - Faịlụ JSON (na-atụgharị valiu string)
  • .xml - Faịlụ XML
  • .srt - Faịlụ isiokwu ndị ahụ
  • .po / .pot - Faịlụ nsụgharị Gettext
  • .jpg / .jpeg - Inyogo JPEG (OCR)
  • .png - Inyogo PNG (OCR)
  • .tiff / .tif - Inyogo TIFF (OCR)
  • .bmp - Inyogo BMP (OCR)
  • .webp - Inyogo WebP (OCR)
Nnyemaka OCR: Faịlụ inyogo nakwa PDFs emeredịkachọrọ na-arụ ọrụ na optical character recognition (OCR) iji wepụta ngwe tupú ịsụgharị. Maka nsonaazụ kasị mma, jiri inyogo dị ọcha, nke nwere ogo dị elu.
Egwuregwu (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"
Faịlụ inyogo a na-ahazi ya na OCR iji wepụta ngwe tupú ịsụgharị. A na-eweghachi ọbjektị a sụgharịrị dịka a .txt Faịlụ.
Ndesịta ozi ahụ
{
    "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"
}
Valụàị̀ ndị ahụ
pending Faịlụ ahụ ebudatara, na-echere ka a hazie ya
processing Ntụgharị
completed Ntụgharị zuru ezu, mbubata dị
failed Ndehie ntụgharị (chekwaa ozi_ezighị ezi)
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Chọọ ọnọdụ nke nsụgharị dọkumenti mọọbụ weghachi mbubata URL.

Ndesịta ozi ahụ
{
    "id": 123,
    "original_filename": "document.docx",
    "status": "completed",
    "translated_file_url": "/media/translated/document_es.docx",
    "character_count": 5420
}

Nchọpụta Asụsụ

Ndesịta asụsụ a na-edebata n'ime arịrịọ ntụgharị asụsụ ọbụla. Hazie source_language to "auto" (mọọbụ hapụ ya) na asụsụ ahụ a na-achọpụtara a na-eweghachi ya na nzaghachi ahụ.

POST https://api.translateapi.ai/api/v1/translate/
Nhazi ahụ
{
    "text": "Bonjour, comment allez-vous?",
    "target_language": "en"
}
Ndesịta ozi ahụ
{
    "translated_text": "Hello, how are you?",
    "source_language": "fr",
    "target_language": "en",
    "translations": {
        "en": "Hello, how are you?"
    },
    "character_count": 28,
    "translation_time": 0.52
}

The source_language Field na nzaghachi na-egosi asụsụ achọpụtara mgbe a na-eji ọfụụ-achọpụtara.

Asụsụ ndị e nyere nkwado

Wepụta ndesịta nke asụsụ ndị e nyere nkwado ha niile.

GET https://api.translateapi.ai/api/v1/translate/languages/
Ndesịta ozi ahụ
{
    "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"},
        ...
    ]
}

Ụdị ntụgharị

Anyị na-eji state-of-the-art open source translation models na-arụ ọrụ na anyị GPU infrastructure. All models are commercially licensed (Apache 2.0).

Móòdù Asụsụ Nke kacha mma maka
Helsinki-NLP/opus-mt 50+ asụsụ abụọ Asụsụ ndị a ma ama (EN, ES, FR, DE, IT, PT, RU, ZH, JA, wdg.)
Google MADLAD-400 400+ asụsụ Asụsụ dị iche iche, nkpuchi zuru ezu

API na-ahọrọ n'onwe ya móòdù kacha mma maka asụsụ abụọ gị. I nwere ike ịkọwapụta n'ụzọ nkịtị engine Paramita:

Ènjini Ndesịta nkọwa
"auto" Dìfọ́ọ̀ltụ̀. Na-achọ HuggingFace mbụ, na-alaghachi na MADLAD-400
"huggingface" Bubata HuggingFace/MarianMT (n'ụzọ nkịtị, 50+ asụsụ)
"madlad" Force MADLAD-400 (400+ asụsụ)

Nhazi ndehie

API ahụ na-eji ụkpụrụ nke ọnọdụ HTTP iji gosi mmeri mọọbụ mmehie.

Ọdịdị Ndesịta nkọwa
200 Ọrụ
400 Ajụjụ na-adịghị mma - paramita ndị na-enweghị isi
401 Enweghị ikike - kii API na-enweghị isi mọọbụ nke ewepụtụla
402 Nkwụghachi chọrọ - kwa ụbọchị akara квота gafere
429 Ndesịta arịrịọ ndị dị n'ebe ahụ - ngwụcha ọnụọgụgụ agafeela
503 Ọrụ Agaghị enwe ike - ntụgharị engine n'oge ụfọdụ akwụsịla
Nhazi nzaghachi ndehie
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

Òtù ótù

Ogo gbanwere site na usoroiheomume. Họrọ pricing maka nkọwa zuru ezu:

Nhazi Ụdị/Ụbọchị Nri
Ọfụụ 250,000 $0 Akaụntụ
Òtù 2,500,000 $9/ọnwa Bipụta
Pro 10,000,000 $29/ọnwa Bipụta
Ụlọọrụ 40,000,000 $79/ọnwa Bipụta
Sịlọn 125,000,000 $199/ọnwa Bipụta

Mgbe ị na-agafe ngwụcha gị, ị ga-enweta a 429 Too Many Requests nwughachi ruo mgbe ọnwa na-esonụ ma ọ bụ ịzụlite.

Auto-Scaling Cloud Infrastructure

TranslateAPI na-arụ ọrụ na NVIDIA A100 GPU dị iche iche na-enweghị ntụgharị ntụgharị. Mgbe mkpa na-arịwanye elu, ihe ndị ọzọ GPU na-amalite n'ime nkeji iji hụ na oge nzaghachi dị ngwa. Nke a pụtara na API anyị nwere ike ịnabata ajụjụ ndị na-enweghị atụ na-enweghị nkwụsị - site na ajụjụ ọ bụla ruo ọtụtụ puku kwa nkeji.

Wepụta ihuakwụkwọ a
Daalụ maka ịtụle gị!
/5 site na Ọnụọgụgụ