Uxwebhu lwe-API

Yongeza uguqulelo olunamandla kwiinkqubo zakho nge-REST API yethu elula.

Ukuqala

I-TranslateAPI ibonelela ngonxibelelwano olulula lwe-REST lokuguqulela umbhalo phakathi kweelwimi ezingaphezu kwe-180. Zonke iziphelo ze-API zibuyisela iimpendulo ze-JSON.

Isiseko se URL: https://api.translateapi.ai/api/v1/
Qala ngokukhawuleza

Yenza isicelo sakho sokuqala soguqulelo:

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

Uqinisekiso

Qinisekisa izicelo zakho usebenzisa iqhosha le-API. Ungenza amaqhosha e-API ukusuka kwi- ibhodi eqhotyoshwayo.

Ububhali Bokubhaliweyo okuphezulu kwephepha (Kucetyiswa)
Authorization: Bearer ta_your_api_key_here
Iparamitha Yombuzo
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Gcina izitshixo zakho ze-API zikhuselekile! Musa ukuzibonisa kwikhowudi yecala lomxhasi okanye kwiindawo zokugcina zabucala.

Guqulela Okubhaliweyo

Uguqulelo lomsebenzi kolunye ulwimi

POST https://api.translateapi.ai/api/v1/translate/
Isiqu Sesicelo
Parameters Udidi Ifunekayo Inkcazelo
text string Hayi Umbhalo oza kuguqulelwa (max 50, 000 characters)
target_language string Ewe* Target language code (e.g., "es", "fr", "de")
source_language string Akukho nanye Source language code. Default: "auto" (auto-detect)

* Sebenzisa target_language (uluhlu lwamagama) ulwimi olunye okanye target_languages (i-array) ye-multiple. Bona Uguqulelo lwe-Multi-Target.

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

Uguqulelo lwe-Multi-Target

Guqulela umbhalo kwiilwimi ezininzi kwisicelo esisodwa. Isebenzisa incopho yesiphelo esifanayo njengoguqulelo olulodwa.

Udidi: Ungaguqulela ukuya kuthi ga kwiilwimi ezili-50 kwisicelo esisodwa.
POST https://api.translateapi.ai/api/v1/translate/
Isiqu Sesicelo
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Sebenzisa target_languages (umqolo) endaweni ye target_language (umtya) kwiinjongo ezininzi.

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

Uguqulelo lwe batch

Uguqulelo lomsebenzi kolunye ulwimi:

Imida: max 500 imibhalo nganye iqela, max 750 izinto ezipheleleyo (imibhalo × iilwimi ezicwangcisiweyo). Imisebenzi iphela kwimizuzu engama- 30 emva kokuba uqhubekeko luqalile (ufolo lwexesha lokulindela alubalowanga).
Ixesha lokuqhubekeka litshintsha ngokweelwimi: iilwimi eziqhelekileyo (isiSpanish, isiFrentshi, isiJamani, njl. njl.) zisebenzisa iimodyuli ezikhawulezayo (~ 0. 1s kumbhalo ngamnye), ngelixa iilwimi ezingaqhelekanga zisebenzisa iimodyuli zethu ezinkulu ezineelwimi ezininzi (~ 1- 3s kumbhalo ngamnye). Iqela le 100- umbhalo ligqiba kwi 10- 30 imizuzwana yeelwimi eziqhelekileyo, okanye 2- 5 imizuzwana yezinto ezingaqhelekanga. Ukufumana iziphumo ezilungileyo, thumela ulwimi olucwangcisiweyo 1 kwisicelo seqela ngalinye kwaye ugcine ubungakanani beqela ngaphantsi kwe 50 yombhalo.
POST https://api.translateapi.ai/api/v1/translate/batch/
Inyathelo 1: Thumela Iqela
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"
}'
Impendulo (HTTP 202 Yamkelwe)
{
    "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/"
}
Inyathelo lesi-2: Ukhetho lweeNkqubo
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Umzekelo wePolling (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)
Impendulo (ilindelwe — ifolokhwe, ilinde i-GPU)
{
    "job_id": "67535b2b-...",
    "status": "pending",
    "processed_texts": 0,
    "total_texts": 3,
    "progress_percentage": 0.0,
    "queue_position": 3
}
Impendulo (ngokuqhubekeka)
{
    "job_id": "67535b2b-...",
    "status": "processing",
    "processed_texts": 1,
    "total_texts": 3,
    "progress_percentage": 33.33,
    "queue_position": null
}
Impendulo (igqityiwe)
{
    "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
    }
}
Ukulandela Inkqubela yexesha eliNyanisiweyo

Iimpendulo ze poll zonke ziquka imihlaba yexesha elipheleleyo lokuqhubekeka ukuze ubone ngokucacileyo into ekwenzekayo kwiqela lakho:

Iindawo Inkcazelo
status Imisebenzi yangoku: pending (ufolo, ulinde umsebenzi we-GPU), processing (ukuguqulela ngokusebenzayo), completed, failed
processed_texts Inani lemiguqulelo yazo zonke ezigqityiwe ngoku. Ihlaziywa ngexesha elibonakalayo njengoko umbhalo ngamnye uguqulelwa.
total_texts Inani elipheleleyo loguqulelo kolu luhlu (iimephu × iilwimi ezilindelweyo).
progress_percentage Ipesenti yokugqitywa (0-100). Ibalo ukusuka kwi processed_texts / total_texts.
queue_position Indawo yakho kufolo xa iimeko zi "zilinde" (1 = ezilandelayo phezulu). Akukho nto xa ziqhubekeka okanye zigqityiwe. Sebenzisa oku ukuqikelela ixesha lokulindela kwaye ubonakalise iimeko zofolo kubasebenzisi bakho.
processing_time Ixesha lokuqhubekeka elipheleleyo ngemizuzwana (elifumaneka xa ligqityiwe).
Udidi: Xa status i- "pending", abasebenzi be GPU baxakekile nezinye iziqendu. Khangela queue_position ubone ukuba kukho imisebenzi eninzi engaphambili kweyo (1 = ulandelayo). Umsebenzi wakho uzakuqala ngokuzenzekelayo — akukho msebenzi ofunekayo, qhubeka ukhetha.
Iinkqubo ezilungileyo zokusebenza okuninzi
  • Thumela 1 iilwimi ezilindelweyo ngesicelo seqela ngalinye. Oku gcina iqela ngalinye likhawuleza kwaye kwenza inkqubela ilula ukulandelela.
  • Gcina iqela kwi 50- 100 imibhalo. Iqela elincinci ligqiba ngokukhawuleza kwaye linika uhlaziyo lwenkqubo oluninzi.
  • Sebenzisa ngaphezu kwemisebenzi emibini ehamba kunye. I-GPU iqhubekeka imisebenzi emibini ehamba kunye — imisebenzi engaphezulu ifolokhwe kwaye ayizukuqala ngokukhawuleza.
  • Kwixesha lokuphuma, phinda ujonge i-job_id efanayo endaweni yokuthumela iqela elitsha. Umsebenzi wokuqala unokuqhubeka nokusebenza kwi-GPU.
  • Iincoko nganye 3- 5 imizuzwana. Iincoko eziphindaphindwayo azikhawulezisi uqhubekeko.
Ulwimi oluninzi

Uguqulelo lomsebenzi kolunye ulwimi:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
I-_data yeziphumo ezigqityiweyo
{
    "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
}
Iparameters Zesicelo
Parameters Udidi Ifunekayo Inkcazelo
texts array Hayi Uluhlu lwamagama okuguqulela
target_language string Ewe* Ikhowudi yoLwimi oluSebenzayo loLwimi olulodwa
target_languages array Ewe* Udweliso lweekhowudi zolwimi lwesiphelo lweelwimi ezininzi
source_language string Akukho nanye Source language code. Default: "auto"

* Sebenzisa target_language okanye target_languages, hayi zombini.

Uqhubekeko lwe Async: Izicelo ze-batch zibuyela ngokuzenzekelayo job_id. Umngxunya GET /api/v1/jobs/{job_id}/ kude kube status yi "completed", ngoko funda result_data Ukusetyenziswa kweenkqubo progress_percentage ukulandela inkqubela phambili.

Uguqulelo loxwebhu

Iguqulela uxwebhu lonke ngelixa igcina ufomati. Ixhasa iifomati ezininzi zefayile.

POST https://api.translateapi.ai/api/v1/translate/document/
Isicelo (inxalenye eninzi/ifomu-data)
Parameters Udidi Ifunekayo Inkcazelo
file file Hayi Uxwebhu lokuguqulela (max 10MB)
target_language string Hayi Target language code (e.g., "es", "fr", "de")
source_language string Akukho nanye Source language code. Default: "auto" (auto-detect)
Udidi lwefayile oluxhaswayo
  • .txt - Iifayili zombhalo oqhelekileyo
  • .docx - Uxwebhu lwe-Word
  • .pdf - Amaxwebhu e-PDF (kuquka ashicilelwe phantsi)
  • .json - Iifayili ze-JSON (ziguqula amaxabiso omtya)
  • .xml - Iifayile ze XML
  • .srt - Iifayili zesicatshulwa esezantsi
  • .po / .pot - Uguqulelo lomsebenzi kolunye ulwimi
  • .jpg / .jpeg - Imifanekiso ye JPEG (OCR)
  • .png - Imifanekiso ye PNG (OCR)
  • .tiff / .tif - Imifanekiso ye-TIFF (OCR)
  • .bmp - Imifanekiso ye-BMP (OCR)
  • .webp - Imifanekiso ye-WebP (OCR)
OCR Inkxaso: Iifayili zomfanekiso kunye nee-PDF ezixhonywe ziqhutywa ngokwaziwa kophawu olubonakalayo (OCR) ukutsala umbhalo phambi kokuguqulela. Ukufumana iziphumo ezilungileyo, sebenzisa imifanekiso ecacileyo, enesigqibo esiphezulu.
Umzekelo (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"
Iifayile zomfanekiso ziqhutywa nge OCR ukutsala umbhalo phambi koguqulelo. Imveliso eguqulelweyo ibuyiselwa njenge .txt ifayile.
Impendulo
{
    "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"
}
Amaxabiso emeko
pending Ifayile ilayishelwe phezulu, ilinde ukuqhubekekiswa
processing Uguqulelo luyaqhubeka
completed Uguqulelo lugqityiwe, ulayisho ezantsi lufumanekayo
failed Uguqulelo aluphumelelanga (khangela umyalezo we-error)
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Khangela ubume boguqulelo loxwebhu okanye ubuyisele ulwaleko lwe URL.

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

Ubhaqo Lolwimi

Ukukhangela ulwimi kufakwe kwisicelo soguqulelo ngasinye. Cwangcisa source_language to "auto" (okanye uyishiye) kwaye ulwimi olufunyenweyo lubuyiselwa kwimpendulo.

POST https://api.translateapi.ai/api/v1/translate/
Isiqu Sesicelo
{
    "text": "Bonjour, comment allez-vous?",
    "target_language": "en"
}
Impendulo
{
    "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
}

I- source_language Indawo kwimpendulo ibonisa ulwimi olufunyenweyo xa ukukhangela okuzenzekelayo kusetyenziswa.

Iilwimi ezixhaswayo

Fumana uluhlu lwazo zonke iilwimi ezixhaswayo.

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

Iimodeli zoguqulelo

Sisebenzisa imodeli yoguqulelo oluvulekileyo lwe-state-of-the-art oluqhuba kwinkqubo yethu ye-GPU. Zonke iimodeli zinikezelwa ngelayisensi yorhwebo (i-Apache 2.0).

Imodeli Iilwimi Elungileyo Ku
Helsinki-NLP/opus-mt 50+ Iiperi zoLwimi Iilwimi eziqhelekileyo (EN, ES, FR, DE, IT, PT, RU, ZH, JA, njl.)
Google MADLAD-400 400+ Iilwimi Iilwimi ezingaqhelekanga, ukugubungela okupheleleyo

I-API ikhetha ngokuzenzekelayo imodeli elungileyo yesibini sakho se-language. Ungakhankanya ngokuzenzekelayo imodeli ye- engine iparamitha:

Injini Inkcazelo
"auto" Okumiselweyo. Izama i-HuggingFace kuqala, ibuyela umva kwi-MADLAD-400
"huggingface" Force HuggingFace/MarianMT (ekhawulezayo, 50+ ulwimi)
"madlad" Force MADLAD-400 (400+ ulwimi)

Uphatho Lwemposiso

I-API isebenzisa ikhowudi yesimo se-HTTP esiqhelekileyo sokubonisa ukuba uphumelele okanye awuphumelelanga.

Ikhowudi Inkcazelo
200 Impumelelo
400 Isicelo Esibi - Iparameters Ezingalunganga
401 Ayigunyaziswanga - Isitshixo se-API esingasebenziyo okanye esilahlekileyo
402 Imali ifuneka - Uphawu lwemihla ngemihla lugqityiwe
429 Isicelo Esininzi Kakhulu - Umda wexabiso ugqityiwe
503 Inkonzo Ayifumaneki - Injini Yokuguqula kolunye ulwimi iyasezantsi
Ifomati Yempendulo Yemposiso
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

Amagqabantshintshi

Imida itshintsha ngokwemimiselo. Bona iindleko inkcukacha ezipheleleyo:

I-Plan Iimpawu/Inyanga Ixabiso
Ekhululekileyo 250,000 $0 Ubhaliso simahla
Isiqalisi 2,500,000 $9/inyanga( ii) Buyisela okubhaliweyo
I-Pro 10,000,000 $29/inyanga( ii) Buyisela okubhaliweyo
Ishishini 40,000,000 $79/inyanga( ii) Buyisela okubhaliweyo
Umlinganiselo 125,000,000 $199/inyanga( ii) Buyisela okubhaliweyo

xa udlula umda wakho, uya kufumana 429 Too Many Requests unyaka olandelayo okanye uphucule.

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.

Linganisa eli phepha
Enkosi ngexabiso lakho!
/5 1999/2000 ii-ratings