API REST pour la traduction automatique · facturée au caractère

Traduction via un point de terminaison HTTP

Envoyez vos chaînes de caractères et recevez-les dans l'une des 36 langues. Facturée au caractère, exploitée depuis Francfort, et conçue pour s'intégrer à côté du reste de votre backend plutôt que par-dessus.

Obtenez une clé gratuite $ curl -X POST https://api.langapi.xyz/v1/translate

36
langues que vous pouvez envoyer
15,00 €
pour un million de caractères
38
variantes cibles

Collez, choisissez une langue, lisez

$ curl -X POST https://api.langapi.xyz/v1/translate \
  -H "Authorization: Bearer la_live_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"text":["Thanks for your order"],"target_lang":"FR"}'

{
  "translations": [
    { "detected_source_language": "EN",
      "text": "Merci pour votre commande" }
  ],
  "request_id": "01J8ZC4M9XK3P7QW2NRT5V6YAB",
  "characters": 21
}
0 / 300 caractères

Votre traduction s'affichera ici.

Fonctionne sans compte

01

Facturation comme la bande passante

Des caractères entrants, une facture sortante. Pas de licences par siège, pas de contrat annuel, pas de minimum. Rechargez un solde prépayé ou optez pour un forfait mensuel avec volume inclus, et changez d'avis quand vous le souhaitez.

02

Conçu là où le RGPD est chez lui

L'application, la base de données et la file d'attente sont exécutées à Francfort. Les enregistrements d'utilisation contiennent des compteurs, jamais de contenu. Le cache de sortie est facultatif par équipe, et chaque sous-traitant est nommé dans l'accord de traitement des données.

03

Parle le format de requête que vous utilisez déjà

La requête et la réponse suivent la convention de traduction v2 largement utilisée. Pour la plupart des codes clients existants, cela signifie une nouvelle URL de base, une nouvelle clé, et rien d'autre.

Votre première requête, dans la langue que vous écrivez

Transmettez jusqu'à 50 chaînes de caractères et un code de langue cible. La détection de la source, le niveau de formalité et les glossaires sont des paramètres facultatifs, et non des points d'accès supplémentaires.

curl

curl -X POST https://api.langapi.xyz/v1/translate \
  -H "Authorization: Bearer la_live_xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{"text":["Thanks for your order"],"target_lang":"DE"}'

PHP

$ch = curl_init('https://api.langapi.xyz/v1/translate');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ['Authorization: Bearer la_live_xxxxxxxx', 'Content-Type: application/json'],
    CURLOPT_POSTFIELDS => json_encode(['text' => ['Thanks for your order'], 'target_lang' => 'DE']),
]);
$response = json_decode(curl_exec($ch), true);
echo $response['translations'][0]['text'];

JavaScript

const response = await fetch('https://api.langapi.xyz/v1/translate', {
  method: 'POST',
  headers: { Authorization: 'Bearer la_live_xxxxxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({ text: ['Thanks for your order'], target_lang: 'DE' }),
});
const { translations } = await response.json();
console.log(translations[0].text);

Python

import requests

response = requests.post(
    "https://api.langapi.xyz/v1/translate",
    headers={"Authorization": "Bearer la_live_xxxxxxxx"},
    json={"text": ["Thanks for your order"], "target_lang": "DE"},
    timeout=30,
)
print(response.json()["translations"][0]["text"])

Go

body, _ := json.Marshal(map[string]any{
    "text":        []string{"Thanks for your order"},
    "target_lang": "DE",
})
req, _ := http.NewRequest("POST", "https://api.langapi.xyz/v1/translate", bytes.NewReader(body))
req.Header.Set("Authorization", "Bearer la_live_xxxxxxxx")
req.Header.Set("Content-Type", "application/json")
res, err := http.DefaultClient.Do(req)

Des prix affichés sur la page, pas lors d'un appel commercial

L'utilisation prépayée est de 15,00 € par million de caractères. Le plan Starter est à 19,00 € par mois et inclut 2 000 000 caractères ; le plan Business est à 99,00 € par mois.

Comparer les plans

faq

Les questions que l'on nous pose avant la première clé

À quoi ressemble la qualité de la traduction ?

Un grand modèle de langage effectue la traduction, guidé par une invite conçue pour la traduction, vos termes de glossaire et le niveau de formalité demandé. Sur les paires de langues européennes, il tient la comparaison avec les moteurs établis. Le moyen le plus rapide de l'évaluer est la zone ci-dessus : collez votre propre texte, sans créer de compte.

Où vont mes textes ?

D'abord à Francfort : l'application, la base de données et la file d'attente sont exécutées en Allemagne. Le moteur sous-jacent peut traiter le texte dans l'UE ou aux États-Unis, selon la configuration mentionnée dans l'accord sur le traitement des données, et tout transfert est couvert par les clauses contractuelles types de l'UE.

Le balisage survit-il à l'aller-retour ?

Oui. Avec tag_handling défini sur html ou xml, les balises et attributs restent intacts et seul le texte entre eux est traduit. Des documents entiers tels que DOCX ou PDF sont prévus mais ne font pas partie de la version actuelle.

Que implique le changement de fournisseur ?

En général, une nouvelle URL de base, https://api.langapi.xyz/v1, et une nouvelle clé. Le format des requêtes suit la convention courante v2 et l'en-tête DeepL-Auth-Key est également accepté, de sorte que la plupart des bibliothèques clientes existantes continuent de fonctionner telles quelles.

Combien puis-je envoyer à la fois ?

Cinquante chaînes par requête, entre 50 000 et 200 000 caractères par requête selon le plan, et 10 à 100 requêtes par seconde. Les en-têtes de limite de débit sur chaque réponse vous indiquent où vous en êtes.