June 30, 2026

Integrate the Traduck API in 5 minutes

This is the fastest path from zero to a working Traduck translation request.

1. Create a free account

Sign up — no credit card required. The Free plan includes API access with a real monthly quota.

2. Generate an API key

Go to Account → API Keys, give it a label (e.g. "my-project"), and click Generate. Copy the key immediately — it's shown once and only a hash is stored afterward, so if you lose it you'll need to generate a new one.

3. Make your first request

curl
curl -X POST https://traduck.com/api/v1/translate \
  -H "Authorization: Bearer tk_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello, world!","source_lang":"en","target_lang":"fr"}'

You should get back:

{"translation":"Bonjour le monde !","detected_language":null,"requests_remaining":199999}

In Python

import requests

resp = requests.post(
    "https://traduck.com/api/v1/translate",
    headers={"Authorization": "Bearer tk_live_your_key_here"},
    json={"text": "Hello, world!", "source_lang": "en", "target_lang": "fr"},
)
print(resp.json()["translation"])

In JavaScript

const res = await fetch("https://traduck.com/api/v1/translate", {
  method: "POST",
  headers: { "Authorization": "Bearer tk_live_your_key_here", "Content-Type": "application/json" },
  body: JSON.stringify({ text: "Hello, world!", source_lang: "en", target_lang: "fr" }),
});
console.log((await res.json()).translation);

Handling errors

Errors come back as {"error": {"code": "...", "message": "..."}} with a matching HTTP status: 401 for a missing/invalid/revoked key, 429 when your monthly quota is exhausted, 400 for a malformed request. See the full API reference for the complete status code table and language list.

Set source_lang to auto

Don't know the input language ahead of time? Set "source_lang": "auto" and Traduck detects it for you — the response's detected_language field tells you what it found.