Τεκμηρίωση API

Ενσωμάτωση ισχυρή μετάφραση στις εφαρμογές σας με μας απλή REST API.

Ξεκίνησις

Το TranslateAPI παρέχει μια απλή διεπαφή REST για τη μετάφραση κειμένου μεταξύ 180+ γλωσσών.

1. Πάρτε το κλειδί API σας

Δημιουργήστε ένα δωρεάν λογαριασμό και δημιουργήστε το πλήκτρο API σας από το ταμπλό:

  1. Εγγραφείτε στο translateapi.ai/signup
  2. Πήγαινε στο... Ταχυδρόμος → Κλειδιά API
  3. Κάντε κλικ στο "Δημιουργήστε το κλειδί API" και αντιγράψτε το κλειδί σας

Τα πλήκτρα API ξεκινούν με ta_ Ακολούθησαν 56 ηδονοβλεψίαι χαρακτήρες.

Βάση URL: https://api.translateapi.ai/api/v1/
2. Κάντε το πρώτο σας αίτημα

Αντικαταστήστε το _API_KEY με το κλειδί από το ταμπλό σας:

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
}

Ταυτοποίηση

Επιβεβαιώστε τα αιτήματά σας χρησιμοποιώντας ένα πλήκτρο API. Μπορείτε να δημιουργήσετε τα πλήκτρα API από σας ταμπλό.

Ταυτοποίηση κεφαλίδας (Προτεινόμενη)
Authorization: Bearer ta_your_api_key_here
ApiKey Header
Authorization: ApiKey ta_your_api_key_here
Παράμετρος ερωτήσεων
https://api.translateapi.ai/api/v1/translate/?api_key=ta_your_api_key_here
Κρατήστε τα κλειδιά API ασφαλή! Μην τα εκθέτετε σε κωδικό πελάτη ή σε δημόσια αρχεία.

Μετάφραση κειμένου

Μεταφράστε το κείμενο σε μία μόνο γλώσσα-στόχο.

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 Όχι. Κινητήρας μετάφρασης: "auto" (προκαθορισμένο), "αγκάλιασμα προσώπου" ή "madlad." Μοντέλα μετάφρασης.

* Χρήση target_language (string) για μία μόνο γλώσσα ή target_languages (συναγερμός) για πολλαπλάσια. Multi-Target Μετάφραση.

Απάντηση
{
    "translated_text": "Hola, mundo!",
    "source_language": "en",
    "target_language": "es",
    "translations": {
        "es": "Hola, mundo!"
    },
    "character_count": 13,
    "translation_time": 0.45
}
Auto- Detection: ΌμιτCity name (optional, probably does not need a translation) source_language ή να το ρυθμίσετε σε "auto" να ανιχνεύσει αυτόματα τη γλώσσα προέλευσης. Η γλώσσα που ανιχνεύθηκε επιστρέφεται στην source_language πεδίο απόκρισης.

Multi-Target Μετάφραση

Μεταφράστε το κείμενο σε πολλές γλώσσες σε ένα μόνο αίτημα. Χρησιμοποιεί το ίδιο τελικό σημείο με την ενιαία μετάφραση.

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 γλώσσες σε ένα μόνο αίτημα.

Μετάφραση παρτίδας

Μεταφράστε πολλαπλά κείμενα ταυτόχρονα με την επεξεργασία async. Υποβάλετε μια παρτίδα και δημοσκόπηση για τα αποτελέσματα.

Όρια: Κατ' ανώτατο όριο 100 κείμενα ανά παρτίδα, κατ' ανώτατο όριο 300 συνολικά αντικείμενα (κείμενα × γλώσσες-στόχους).
Ταχύτητα: Οι κοινές γλώσσες (ES, FR, DE) χρησιμοποιούν γρήγορα μοντέλα (~0.1s/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"
}'
Ανταπόκριση (HTTP 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}/
Παράδειγμα γύρης (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"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 (καταργήθηκε, περιμένει για έναν εργαζόμενο GPU), processing (ενεργώς μεταφράζοντας), completed, failed
processed_texts Ο αριθμός των μεμονωμένων μεταφράσεων ολοκληρώθηκε μέχρι στιγμής. Ενημερώσεις σε πραγματικό χρόνο όπως κάθε κείμενο μεταφράζεται.
progress_percentage Ποσοστό ολοκλήρωσης (0-10). Υπολογίζεται από επεξεργαστές_κείμενα / συνολικά_κείμενα.
queue_position Η θέση σας στην ουρά όταν η κατάσταση είναι "έξοδος" (1 = επόμενο up). Καθυστέρηση κατά την επεξεργασία ή ολοκλήρωση. Χρησιμοποιήστε αυτό για την εκτίμηση του χρόνου αναμονής και την εμφάνιση της κατάστασης της ουράς στους χρήστες σας.
processing_time Συνολικός χρόνος επεξεργασίας σε δευτερόλεπτα (διατίθεται όταν συμπληρώνεται).
Multi-Language Batch

Μετάφρασε πολλαπλά κείμενα σε πολλές γλώσσες ταυτόχρονα:

{
    "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 κείμενα. Μικρότερες παρτίδες ολοκληρώνουν γρηγορότερα και σας δίνουν πιο συχνές ενημερώσεις προόδου.
  • Υποβάλετε όσες δουλειές παρτίδα όπως χρειάζεστε μας GPU cluster auto-scales για να χειριστεί τη ζήτηση.
  • Με το τάιμ-άουτ, επανατοποθετήστε την ίδια εργασία_id αντί να υποβάλετε μια νέα παρτίδα. Η αρχική εργασία μπορεί να εξακολουθεί να επεξεργάζεται στην GPU.
  • Πιο συχνές δημοσκοπήσεις δεν επιταχύνουν την επεξεργασία.

Μετάφραση εγγράφου

Μεταφράστε ολόκληρα έγγραφα κατά τη διατήρηση της μορφοποίησης. Υποστηρίζει πολλαπλές μορφές αρχείων.

POST https://api.translateapi.ai/api/v1/translate/document/
Αίτηση (πολυμερές/μορφικά δεδομένα)
Παράμετρος Τύπος Απαιτείται Περιγραφή εμπορευμάτων
file file Ναι. Το έγγραφο που θα μεταφράσει (max 10MB)
target_language string Ναι. Target language code (e.g., "es", "fr", "de")
source_language string Όχι. Source language code. Default: "auto" (auto-detect)
Υποστηριγμένοι τύποι αρχείων
Έγγραφα
  • .txt - Απλά αρχεία κειμένου
  • .docx - Έγγραφα λέξεων
  • .pdf - Έγγραφα PDF (συμπεριλαμβανομένων των σαρωμένων)
Εντοπισμός δεδομένων
  • .json - Αρχεία JSON (μεταφράζει τις τιμές συμβολοσειράς)
  • .xml - Αρχεία XML
  • .srt - Αρχείο υπότιτλου
  • .po / .pot - Gettext translation files
Εικόνες (OCR)
  • .jpg / .jpeg - Εικόνες JPEG (OCR)
  • .png - PNG εικόνες (OCR)
  • .tiff / .tif - Εικόνες TIFF (OCR)
  • .bmp - Εικόνες BMP (OCR)
  • .webp - Εικόνες WebP (OCR)
Παράδειγμα (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"
Απάντηση
{
    "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"
}
Υποστήριξη OCR: Τα αρχεία εικόνας και τα σαρωμένα PDF υποβάλλονται σε επεξεργασία με αναγνώριση οπτικού χαρακτήρα (OCR) για την εξαγωγή κειμένου πριν από τη μετάφραση. Για καλύτερα αποτελέσματα, χρησιμοποιήστε σαφείς εικόνες υψηλής ανάλυσης.
GET https://api.translateapi.ai/api/v1/translate/document/{id}/

Ελέγξτε την κατάσταση μιας μετάφρασης εγγράφου ή ανακτήστε το URL λήψης.

Τιμές κατάστασης
pending Ανεβάστε το αρχείο, περιμένοντας να υποβληθεί σε επεξεργασία
processing Μετάφραση σε εξέλιξη
completed Μετάφραση πλήρης, λήψη διαθέσιμη
failed Αποτυχία μετάφρασης (check error_message)

Υποστηριζόμενες γλώσσες

Πάρτε τη λίστα όλων των υποστηριζόμενων γλωσσών.

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 γλωσσών

Μοντέλα μετάφρασης

Χρησιμοποιούμε σύγχρονα μοντέλα μετάφρασης ανοικτού κώδικα που λειτουργούν με δική μας υποδομή GPU. Όλα τα μοντέλα είναι εμπορικά αδειοδοτημένα (Apache 2.0).

Υπόδειγμα Γλώσσες Το καλύτερο για
Helsinki-NLP/opus-mt 50+ ζεύγη γλωσσών Κοινές γλώσσες (EN, ES, FR, DE, IT, PT, RU, ZH, JA κ.λπ.)
Google MADLAD-400 400+ γλώσσες Σπάνιες γλώσσες, πλήρης κάλυψη

Το API επιλέγει αυτόματα το καλύτερο μοντέλο για το ζεύγος γλώσσας σας. engine παράμετρος:

Κινητήρας Περιγραφή εμπορευμάτων
"auto" Προκαθορισμένο. Δοκιμάζει HuggingFace πρώτα, πέφτει πίσω στο MDLAD-400
"huggingface" Δύναμη HuggingFace/MarianMT (γρήγορη, 50+ γλώσσες)
"madlad" Δύναμη MADLAD-400 (400+ γλώσσες)

Χειρισμός λάθους

Το API χρησιμοποιεί τυποποιημένους κωδικούς κατάστασης HTTP για να δείξει επιτυχία ή αποτυχία.

Κωδικός Περιγραφή εμπορευμάτων
200 Επιτυχία
202 Αποδεκτή δουλειά παρτίδα quailed με επιτυχία
400 Άκυρες παράμετροι (λείπει κείμενο, μη υποστηριζόμενη γλώσσα κ.λπ.)
401 Μη εξουσιοδοτημένη - Μη έγκυρη ή λείπει το πλήκτρο API
402 Πληρωμή Απαιτούμενα Πίστωση Χαρακτήρας εξαντλημένος. Αναβαθμίστε το σχέδιό σας ή αγοράστε ένα top-up.
403 Απαγορευμένο □ Το κλειδί API στερείται απαιτούμενου πεδίου εφαρμογής ή IP που δεν είναι στη λευκή λίστα
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:

Σχέδιο Χαρακτήρες/Μήνας Παρτίδα API Έγγραφα Τιμή
Ατελώς 250,000 $0 Εγγραφή δωρεάν
Εκκίνηση 2,500,000 $9/ου Εγγραφή
Pro 10,000,000 $29/ου Εγγραφή
Επιχειρήσεις 40,000,000 $79/ου Εγγραφή
Κλίμακα 125,000,000 $199/ου Εγγραφή
Enterprise Unlimited $499/ου Contact Sales

Όταν υπερβείς το όριό σου, θα λάβεις ένα 402 Payment Required ανταπόκριση μέχρι τον επόμενο μήνα ή αναβαθμιστείτε.

Auto-Scaling Cloud Infrastructure

ΜετάφρασηAPI τρέχει σε ειδικές περιπτώσεις NVIDIA A100 GPU με αυτόματη οριζόντια κλιμάκωση. Όταν αυξάνεται η ζήτηση, επιπλέον περιπτώσεις GPU ξεκινήσει μέσα σε λίγα λεπτά για να διατηρήσει τους χρόνους γρήγορης απόκρισης. Όλα τα αιτήματα είναι σε σειρά αναμονής και επεξεργασία

Χρειάζεσαι κι άλλες πιστώσεις;

Αγόρασε ένα top-up εφάπαξ πίστωσης χωρίς να αλλάξεις το σχέδιό σου. Προβολή πακέτων από πάνω προς τα πάνω

Βαθμολογήστε αυτή τη σελίδα
Σας ευχαριστώ για την βαθμολογία σας!
/5 με βάση αξιολογήσεις