API Documentation

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

Getting Started

Bidh an TranslateAPI a' toirt eadar-aghaidh REST sìmplidh dhut airson teacsa eadar 180+ cànan a thionndadh. Bidh freagairtean JSON air ais aig gach ceann-phuing API.

Bun-URL: https://api.translateapi.ai/api/v1/
Quick Start

Dèan do chiad iarrtas eadar-theangachaidh:

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

Dearbhadh

Dearbhaich na h-iarrtasan agad le iuchair API. 'S urrainn dhut iuchraichean API a chruthachadh bhon choimpiutair agad dashboard.

Header Authentication (recommended)
Authorization: Bearer ta_your_api_key_here
Query Parameter
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Cùm d' iuchraichean API sàbhailte! Na nochd iad ann an còd taobh-chliant no stòrasan poblach.

Atharraich teacsa

Atharraich teacsa gu cànan targaid a-mhàin.

POST https://api.translateapi.ai/api/v1/translate/
Request Body
Paramadair Seòrsa Riatanas Cur-seachad
text string Tha Teacsa ri eadar-theangachadh (suas ri 50,000 caractar)
target_language string Tha* Target language code (e.g., "es", "fr", "de")
source_language string Chan eil Source language code. Default: "auto" (auto-detect)

* Cleachd target_language (string) airson aon chànan no target_languages (array) airson iomadach. Seall Multi-Target Translation.

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

Multi-Target Translation

Atharraich teacsa gu diofar chànanan ann an iarrtas a-mhàin. Cleachdas seo an aon cheann-uidhe ri eadar-theangachadh a-mhàin.

Tiodhlac: 'S urrainn dhut eadar-theangachadh gu suas ri 50 cànan ann an aon iarrtas.
POST https://api.translateapi.ai/api/v1/translate/
Request Body
{
    "text": "Hello, world!",
    "target_languages": ["es", "fr", "de", "ja"],
    "source_language": "en"
}

Cleachd target_languages (array) an àite target_language (string) airson iomadh amas.

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

Batch Translation

Translation multiple texts at once with async processing. Submit a batch and poll for results.

Teirmean: suas ri 500 teacsa sa bhòt, suas ri 750 nithean gu lèir (teacsaichean × cànanan-targaid). Thèid na dleastanasan air falbh 30 mionaid às dèidh a' phròiseas a thòiseachadh (chan tèid ùine feitheamh na ciùil a chunntadh).
Tha an ùine làimhseachaidh eadar-dhealaichte a rèir na cànain: bidh cànanan cumanta (Spàinntis, Fraingis, Gearmailtis, msaa.) a' cleachdadh modalan luath (~0.1s gach teacsa), agus bidh cànanan nach eil cho cumanta a' cleachdadh ar modalan mòra ioma-chànanach (~1-3s gach teacsa). Mar as trice thèid batch de 100 teacsa a chrìochnachadh ann an 10-30 diogan airson cànanan cumanta, no 2-5 mionaidean airson cànanan nach eil cho cumanta. Gus na toraidhean as fheàrr fhaighinn, cuir 1 cànan-uidhe gach iarrtas batch is cùm meud nan batchs fo 50 teacsa.
POST https://api.translateapi.ai/api/v1/translate/batch/
Step 1: Submit Batch
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"
}'
Freagairt (HTTP 202 Accepted)
{
    "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/"
}
Ceum 2: Poll for Results
GET https://api.translateapi.ai/api/v1/jobs/{job_id}/
Polling Example (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)
Freagairt (a' feitheamh — sa chiùil, a' feitheamh ri GPU)
{
    "job_id": "67535b2b-...",
    "status": "pending",
    "processed_texts": 0,
    "total_texts": 3,
    "progress_percentage": 0.0,
    "queue_position": 3
}
Freagairt (leis a' phròiseasadh)
{
    "job_id": "67535b2b-...",
    "status": "processing",
    "processed_texts": 1,
    "total_texts": 3,
    "progress_percentage": 33.33,
    "queue_position": null
}
Freagairt (crìochnaichte)
{
    "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

Tha raointean adhartais fìor-ùine aig gach freagairt poileis gus am faod thu sùil a chumail air dè a tha a' tachairt leis a' bhòt agad:

Field Cur-seachad
status Staid an dleastanais làithreach: pending (sa chiù, a' feitheamh ri GPU worker), processing (actively translating), completed, failed
processed_texts An àireamh de dh'eadar-theangachaidhean a chaidh a chrìochnachadh gu ruige seo. Ath-nuadhachadh ann an àm fìor nuair a thèid gach teacsa a thionndadh.
total_texts Àireamh iomlan nan eadar-theangachaidhean sa bhòt seo (teacsaichean × cànanan-targaid).
progress_percentage Ceud sa cheud de chrìochnachadh (0-100). Air a ríomh bho processed_texts / total_texts.
queue_position An t-ionad agad sa chiùil nuair a tha an staid "air feitheamh" (1 = an ath rud). Null nuair a thèid a phròiseasadh no a chrìochnachadh. Cleachd seo gus ùine feitheamh a mheasadh agus staid na ciùil a shealltainn dha na cleachdaichean agad.
processing_time An ùine phròiseasaidh gu lèir ann an diogan (ri fhaighinn nuair a chrìochnaicheas e).
Tiodhlac: Cuin status is "pending", tha luchd-obrach a' GPU trang le bataichean eile. Check queue_position gus faicinn cia mheud obair a tha romhainn (1 = thu an ath fhear). Tòisichidh an obair agad gu fèin-obrachail — chan eil feum air gnìomh sam bith, dìreach lean air a' phostachadh.
Best Practices for Large Workloads
  • Seol 1 cànan targaid gach iarrtas batch. Bidh seo a' cumail gach batch luath's a' dèanamh sgrùdadh air an adhartas furasta.
  • Cùm bataichean aig 50-100 teacsa. Bidh bataichean nas lugha a' crìochnachadh nas luaithe agus a' toirt dhut ùrachaidhean air adhartas nas trice.
  • Ruith 2 bhòt-obrach aig an aon àm air a' mhòr-chuid. Pròiseasaichidh an GPU 2 bhòt-obrach aig an aon àm - bidh obraichean a bharrachd sa chiùil agus cha tòisich iad nas luaithe.
  • Nuair a thèid an ùine seachad, ath-pholl an aon job_id's a bh' ann an àite batch ùr a chur a-steach. Dh'fhaoidte gu bheil an obair thùsail fhathast a' pròiseasadh air an GPU.
  • Poll gach 3-5 diogan. Chan urrainn dhut am pròiseas a bhrosnachadh le polls nas trice.
Multi-Language Batch

Atharraich iomadh teacsa gu iomadh cànan aig an aon àm:

{
    "texts": ["Hello", "Goodbye"],
    "target_languages": ["es", "fr"],
    "source_language": "en"
}
Crìochnaich an toradh_dàta
{
    "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
}
Paramadairean iarrtais
Paramadair Seòrsa Riatanas Cur-seachad
texts array Tha Sreath de shreathan ri eadar-theangachadh
target_language string Tha* Còd na cànain-targaid airson cànan singilte
target_languages array Tha* Array of target language codes for multiple languages
source_language string Chan eil Source language code. Default: "auto"

* Cuir an dàrna cuid target_language no target_languages, chan e an dà chuid.

Pròiseasadh asynchronous: Thèid iarrtas batch air ais le job_id. Toll GET /api/v1/jobs/{job_id}/ gus an status is "completed", an uairsin leugh result_data for translations. Use progress_percentage to track progress.

Document Translation

Translation entire documents while preserving formatting. Supports multiple file formats.

POST https://api.translateapi.ai/api/v1/translate/document/
Iarrtas (multipart/form-data)
Paramadair Seòrsa Riatanas Cur-seachad
file file Tha An sgrìobhainn ri eadar-theangachadh (suas ri 10MB)
target_language string Tha Target language code (e.g., "es", "fr", "de")
source_language string Chan eil Source language code. Default: "auto" (auto-detect)
Seòrsan faidhle a tha air an taic
  • .txt - Plain text files
  • .docx - Sgrìoban Word
  • .pdf - Sgrìobhainnean PDF (a' gabhail a-steach scanned)
  • .json - Files JSON (translates string values)
  • .xml - XML files
  • .srt - Faidhlichean fo-thiotalan
  • .po / .pot - Gettext translation files
  • .jpg / .jpeg - Dealbhan JPEG (OCR)
  • .png - Dealbhan PNG (OCR)
  • .tiff / .tif - Dealbhan TIFF (OCR)
  • .bmp - Dealbhan BMP (OCR)
  • .webp - Dealbhan WebP (OCR)
Taic OCR: Thèid faidhlichean dhealbhan is PDFan scante a phròiseasadh le OCR (Optical Character Recognition) gus teacsa a thoirt a-mach mus tèid an eadar-theangachadh. Gus na toraidhean as fheàrr fhaighinn, cleachd dealbhan soilleir le rùn àrd.
Samhla (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"
Thèid faidhlichean dhealbhan a phròiseasadh le OCR gus teacsa a thoirt a-mach mus tèid an eadar-theangachadh. Thèid an as-chur eadar-theangachaidh a thoirt air ais mar .txt faidhle
Freagairt
{
    "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"
}
Luachan staid
pending Chaidh am faidhle a luchdadh suas, a' feitheamh ri a phròiseasadh
processing Translation in progress
completed Translation complete, download available
failed Dh'fhàillig an eadar-theangachadh (check error_message)
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Sgrùd staid eadar-theangachadh sgrìobhainn no faigh URL an luchdaidh a-nuas.

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

Language Detection

Tha lorg na cànain air a thogail a-steach do gach iarrtas eadar-theangachaidh. Set source_language to "auto" (no fàg e air falbh) agus thèid an cànan a lorgar a thoirt air ais san fhreagairt.

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

An source_language Seall an raon san fhreagairt an cànan a chaidh a lorg nuair a thèid an lorg fèin-obrachail a chleachdadh.

Languages supported

Faigh liosta de na cànanan uile a gheibh taic.

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

Translation Models

Bidh sinn a' cleachdadh modalan eadar-theangachaidh le còd fosgailte a tha a' ruith air ar bun-structar GPU fhèin. Tha cead-siubhail coimhearsnachd aig a h-uile modal (Apache 2.0).

Mòdail Teangachan As fheàrr airson
Helsinki-NLP/opus-mt 50+ language pairs Teangachan coitcheann (EN, ES, FR, DE, IT, PT, RU, ZH, JA, msaa.)
Google MADLAD-400 400+ languages Languages rare, comprehensive coverage

Bidh an API a' taghadh gu fèin-obrachail a' mhodail as fheàrr airson a' phàrtaidh chànain agad. 'S urrainn dhut roghainn a shònrachadh engine paramadair:

Inneal Cur-seachad
"auto" A' bhun-loidhne. Feuch ri HuggingFace a chleachdadh an toiseach, an uair sin thèid air ais gu MADLAD-400
"huggingface" Force HuggingFace/MarianMT (fastest, 50+ languages)
"madlad" Force MADLAD-400 (400+ languages)

Cùram nam mearachd

Bidh an API a' cleachdadh còdan stàite HTTP caochlaideach gus soirbheachas no mearachd a shealltainn.

Còd Cur-seachad
200 Shoirbhich leis
400 Iarrtas mì-dhligheach - Paramadairean mì-dhligheach
401 Gun chead - Iuchair API mì-dhligheach no air chall
402 Tha pàigheadh a dhìth - Chaidh an cuota charactaran làitheil seachad
429 Iarrtasan ro mhòr - Chaidh an teannachadh a ruighinn
503 Service Unavailable - Translation engine temporarily down
Fòrmat freagairt na mearachd
{
    "error": "daily_limit_exceeded",
    "credits_remaining": 0,
    "daily_limit": 100000
}

Rate Limits

Tha na teirmean eadar-dhealaichte a rèir a’ phlana. pricing for full details:

Plana Characters/Month Praghas
Saor 250,000 $0 Clàraich an-asgaidh
Starter 2,500,000 $9/mìosan Subscribe
Pro 10,000,000 $29/mìosan Subscribe
Gnìomhachas 40,000,000 $79/mìosan Subscribe
Sgèilich 125,000,000 $199/mìosan Subscribe

Nuair a thèid thu thairis air an teannachadh agad, gheibh thu 429 Too Many Requests chan eil freagairt ann gus an ath mhìos no gus an ùraich thu.

Auto-Scaling Cloud Infrastructure

Bidh TranslateAPI a' ruith air ionnstramaidean GPU NVIDIA A100 air an cur an sàs le sgaoileadh cothromach fèin-obrachail. Nuair a bhios feum air barrachd, thèid ionnstramaidean GPU a chur air bhog taobh a-staigh mionaidean gus ùine freagairt luath a chumail suas. Tha seo a' ciallachadh gum faod an API againn làimhseachadh gu h-àraidh iarrtasan co-cheangailte gun teagamh gun a bhith a' dol à bith — bho iarrtas a-mhàin gu mìltean sa mhionaid.

Rangaich an duilleag seo
Tapadh leat airson do mheasaidh!
/5 stèidhichte air rangachadh