Litokomane tsa API

Integrate ho fetolela matla ho likopo tsa hao le rona bonolo REST API.

Ho qala

TranslateAPI e fana ka interface e bonolo ea REST bakeng sa ho fetolela mongolo lipakeng tsa lipuo tse fetang 180. Liphetho tsohle tsa API li khutlisa likarabo tsa JSON.

Base URL: https://api.translateapi.ai/api/v1/
Qala ka potlako

Etsa kopo ea hau ea pele ea ho fetolela:

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!"
    }
}

Botšepehi

Ntlafatsa lipotso tsa hau ka ho sebelisa konopo ea API. U ka etsa konopo ea API ho tsoa ho eona dashboard.

Bopaki ba sehlooho (bo khothalletsoang)
Authorization: Bearer ta_your_api_key_here
Parameter ea potso
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Sebelisa li-key tsa hau tsa API ka mokhoa o sireletsehileng! Ha ua lokela ho li bonts'a ka kotloloho ho li-client-side code kapa li-repositories tsa sechaba.

Ho fetolela mongolo

Ho fetolela mongolo ka puo e le 'ngoe.

POST https://api.translateapi.ai/api/v1/translate/
Bophelo ba kopo
Parameter Mofuta E hlokahalang Tlhaloso
text string Ha ho joalo Text to translate (max 50,000 characters)
target_language string Yeah* Target language code (e.g., "es", "fr", "de")
source_language string Ha ho joalo Source language code. Default: "auto" (auto-detect)

* Ho sebelisa target_language (string) bakeng sa puo e le 'ngoe kapa target_languages (array) bakeng sa ho feta. Bona Ho fetolela lihlooho tse ngata.

Likarabo
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}

Ho fetolela lihlooho tse ngata

Ho fetolela mongolo ka lipuo tse ngata ka kopo e le 'ngoe. E sebelisa sebaka sa ho qetela se tšoanang le ho fetolela ho le' ngoe.

Mefuta: U ka fetolela ho fihlela ho lipuo tse 50 ka kopo e le 'ngoe.
POST https://api.translateapi.ai/api/v1/translate/
Bophelo ba kopo
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Ho sebelisa target_languages (array) eseng target_language (string) bakeng sa liphetho tse ngata.

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

Ho fetolela

Ho fetolela litokomane tse ngata ka nako e le 'ngoe ka ho sebetsana le async. Tlosa batch' me u hlahlobe liphetho.

Meeli: max 500 lingoloa ka batch, max 750 lintho ka kakaretso (lingoloa × target languages). Jobs time out 30 metsotsoana ka mor'a ho sebetsana qala (queue nako ea ho etsoa ha e behiloe).
Nako ea ho sebetsana e fapana ho latela puo: lipuo tse tloaelehileng (Spanish, French, German, jj.) li sebelisa li-models tse potlakileng (~ 0.1s ka poso), ha lipuo tse sa tloaelehang li sebelisa li-models tsa rona tse kholo tsa lipuo tse ngata (~ 1-3s ka poso). Batch ea 100-text e ka etsoa ka metsotsoana e 10-30 bakeng sa lipuo tse tloaelehileng, kapa metsotsoana e 2-5 bakeng sa tse sa tloaelehang. Bakeng sa liphetho tse ntlehali, romella 1 target language ka kopo ea batch le ho boloka boholo ba batch ka tlase ho li-texts tse 50.
POST https://api.translateapi.ai/api/v1/translate/batch/
Phapang 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"
}'
Likarabo (HTTP 202 e amoheloa)
{
    "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/"
}
Phapang 2: Poll bakeng sa Liphetho
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Mohlala oa 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)
Likarabo (ho e-na le — ho e-na le, ho e-na le GPU)
{
    "job_id": "67535b2b-...",
    "status": "pending",
    "processed_texts": 0,
    "total_texts": 3,
    "progress_percentage": 0.0,
    "queue_position": 3
}
Likarabo (ha li ntse li sebetsa)
{
    "job_id": "67535b2b-...",
    "status": "processing",
    "processed_texts": 1,
    "total_texts": 3,
    "progress_percentage": 33.33,
    "queue_position": null
}
Likarabo (li felile)
{
    "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
    }
}
Ho latela nts'etsopele ka nako ea 'nete

Likarabo tsohle tsa lipotso li kenyelletsa libaka tsa nts'etsopele ea nako ea 'nete e le hore u ka hlahloba hore na ho etsahala'ng ka batch ea hau:

Setereke: Tlhaloso
status Mofuta oa mosebetsi oa hona joale: pending (e phuthetsoe, e emetse mosebelisi oa GPU), processing (ho fetolela ka potlako), completed, failed
processed_texts The number of individual translations completed so far. Updates in real time as each text is translated.
total_texts The total number of translations in this batch (texts × target languages).
progress_percentage Liperesente tsa ho phetheloa (0-100). Li tlalehiloe ho tloha ho processed_texts / total_texts.
queue_position Sebaka sa hau ka litlhophiso ha boemo bo le "bo sa feleng" (1 = bo latelang). Null ha bo phekoloa kapa bo felile. Sebelisa sena ho nahana nako ea ho khutla le ho bonts'a boemo ba litlhophiso ho basebelisi ba hau.
processing_time Nako e felletseng ea ho sebetsana ka metsotsoana (e fumaneha ha e felile).
Mefuta: Ha status ke "pending", basebetsi ba GPU ba sebetsana le liphutheloana tse ling. Check queue_position ho bona hore na ho na le mesebetsi e kae e ka pele ho ea hau (1 = u latelang). Jobo ea hau e tla qala ka boiketsetso — ha ho hlokahale ho etsa eng kapa eng, u ka tsoelapele feela ka polling.
Best Practices bakeng Workloads Large
  • Tlosa lentsoe la sepheo le le leng ka kopo ea batch. Sena se boloka batch e ngoe le e ngoe e potlakile'me se etsa hore ho be bonolo ho latela nts'etsopele.
  • Ho boloka batches ho 50-100 lingoloa. Batches tse nyane ho fihlela ka potlako le ho u fa ho feta ka ho fetesisa ntshetsopele updates.
  • E phethela mesebetsi ea batch e fetang 2 ka nako e le ngoe. GPU e sebetsana le mesebetsi ea batch e 2 ka nako e le 'ngoe — mesebetsi e eketsehileng e qala ka potlako.
  • Ka mor'a nako e khuts'oane, etsa qeto ka job_id e ts'oanang e le hore u romelle batch e ncha. Jobo ea mantlha e ka ntse e sebetsa ka GPU.
  • Poll ka metsotsoana e 3-5. Poll e potlakileng e ke ke ea potlakisa ts'ebetso.
Multi-Language Batch

Ho fetolela litokomane tse ngata ho lipuo tse ngata ka nako e le 'ngoe:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Result_data e felile
{
    "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
}
Liparametara tsa kopo
Parameter Mofuta E hlokahalang Tlhaloso
texts array Ha ho joalo Array ea lihlooho tsa ho fetolela
target_language string Yeah* Kode ea puo ea sepheo bakeng sa puo e le 'ngoe
target_languages array Yeah* Array ea li-codes tsa puo ea sepheo bakeng sa lipuo tse ngata
source_language string Ha ho joalo Source language code. Default: "auto"

* Fetola e le efe target_language kapa target_languages, eseng ka bobeli.

Ho sebetsana le Async: Lipotso tsa batch li khutlela kapele le job_id. Moqomo GET /api/v1/jobs/{job_id}/ ho fihlela status ke "completed", ebe u bala result_data bakeng sa ho fetoleloa. progress_percentage ho latela nts'etsopele.

Ho fetolela litokomane

Ho fetolela litokomane ka ho feletseng ka ho boloka ho hlophisoa. E tšehetsa litokomane tse ngata.

POST https://api.translateapi.ai/api/v1/translate/document/
Lipotso (li-multipart/form-data)
Parameter Mofuta E hlokahalang Tlhaloso
file file Ha ho joalo Tlaleho eo u batlang ho e fetolela (max 10MB)
target_language string Ha ho joalo Target language code (e.g., "es", "fr", "de")
source_language string Ha ho joalo Source language code. Default: "auto" (auto-detect)
Likarolo tsa lifaele tse tšehelitsoeng
  • .txt - Lifaele tsa mongolo o tloaelehileng
  • .docx - Litokomane tsa Word
  • .pdf - Litokomane tsa PDF (ho akarelletsa le tse scanned)
  • .json - Lifaele tsa JSON (li fetolela li-string values)
  • .xml - Lifaele tsa XML
  • .srt - Lifaele tsa li-subtitle
  • .po / .pot - Lifaele tsa ho fetolela Gettext
  • .jpg / .jpeg - Litšoantšo tsa JPEG (OCR)
  • .png - Litšoantšo PNG (OCR)
  • .tiff / .tif - Litšoantšo tsa TIFF (OCR)
  • .bmp - Litšoantšo tsa BMP (OCR)
  • .webp - Litšoantšo tsa WebP (OCR)
Tšehetso ea OCR: Lifaele tsa litšoantšo le li-PDF tse scanned li sebetsana le ho tsebahala ha li-optical character (OCR) ho tlosa mongolo pele o fetoloa. Bakeng sa liphetho tse ntle, sebelisa litšoantšo tse hlakileng, tse nang le botsitso bo phahameng.
Mohlala (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"
Lifaele tsa litšoantšo li sebetsana le OCR ho tlosa mongolo pele ho fetoleloa. Phetoho e fetoletsoeng e romelloa e le .txt % 1:% 2,% 3,% 4,% 5,% 6
Likarabo
{
    "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"
}
Matšoao a boemo
pending Faele e lokollotsoe, e emetse ho sebetsanoa
processing Ho fetolela ho ntse ho etsoa
completed Ho fetolela ho phethetsoe, ho na le ho kenya
failed Ho fetolela ho sa atlehe (check error_message)
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Check the status of a document translation or get the download URL.

Likarabo
{
    "id": 123,
    "original_filename": "document.docx",
    "status": "completed",
    "translated_file_url": "/media/translated/document_es.docx",
    "character_count": 5420
}

Boithuto ba puo

Ho fumanoa ha puo ho thehiloe ho kopo efe kapa efe ea ho fetolela. Set source_language to "auto" (kapa u se ke ua e etsa)'me puo e fumanehang e tla khutlisoa karabo.

POST https://api.translateapi.ai/api/v1/translate/
Bophelo ba kopo
{
    "text": "Bonjour, comment allez-vous?",
    "target_language": "en"
}
Likarabo
{
    "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 sebaka sa karabo se bonts'a puo e fumanoeng ha ho sebelisoa ho fumanoa ka ho toba.

Li-languages tse tšehelitsoeng

Fumana lethathamo la lipuo tsohle tse tšehelitsoeng.

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

Litšoantšo tsa ho fetolela

Re sebelisa li-models tsa ho fetolela li-open source tse sebetsang ka li-infrastructure tsa GPU tsa rona. Li-models tsohle li na le laesense ea khoebo (Apache 2.0).

Mofuta Li-languages E loketseng
Helsinki-NLP/opus-mt Lihlopha tsa lipuo tse fetang 50 Li-language tse tloaelehileng (EN, ES, FR, DE, IT, PT, RU, ZH, JA, jj.)
Google MADLAD-400 400+ lipuo Li-languages tse sa tloaelehang, li-coverage tse felletseng

API e khetha ka boiketsetso mofuta o motle ka ho fetisisa oa puo ea hau. U ka khetha ho bonts'a engine Parameter:

Enjene Tlhaloso
"auto" Bofela. E leka HuggingFace pele, e khutlela ho MADLAD-400
"huggingface" Force HuggingFace/MarianMT (e potlakileng ka ho fetisisa, lipuo tse fetang 50)
"madlad" Force MADLAD-400 (400+ lipuo)

Ho sebetsana le liphoso

Li-API li sebelisa li-standard HTTP status codes ho bonts'a katleho kapa ho hloleha.

Kopa Tlhaloso
200 Bophelo bo botle
400 Lipotso tse mpe - Liparameter tse sa nepahalang
401 Ha e amoheloe - konopo ea API e fosahetse kapa e sa nepahale
402 Theko e hlokahalang - Likarolo tsa letsatsi le leng le le leng li feta
429 Lipotso tse ngata haholo - ho feta tekanyetso ea lebelo
503 Service Not Available - Translation engine temporarily down
Bophara ba karabo ea bothata
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

Liphelelo tsa lebelo

Lipheo li fapana ho latela qeto. Bona litheko bakeng sa lintlha tse felletseng:

Likarolo Litšoantšo/khoeli Theko
Free 250,000 $0 Ikopanye le rona
Motsamaisi 2,500,000 $9/mo Ikopanye
Pro 10,000,000 $29/mo Ikopanye
Lichelete 40,000,000 $79/mo Ikopanye
Litlhaku 125,000,000 $199/mo Ikopanye

Ha u feta tekanyetso ea hau, u tla fumana 429 Too Many Requests karabo ho fihlela khoeli e tlang kapa u ntlafatsa.

Auto-Scaling Cloud Infrastructure

TranslateAPI runs on dedicated NVIDIA A100 GPU instances with automatic horizontal scaling. When demand increases, additional GPU instances are launched within minutes to maintain fast response times. This means our API can handle virtually unlimited concurrent requests without degradation — from a single request to thousands per minute.

Lekola leqephe lena
Kea leboha ka litlhaloso tsa hau!
/5 ho latela Litlhahlobo