Arendajad
API dokumentatsioon
Kõik, mida vajate Baduno tõlke API integreerimiseks: autentimine, lõpp-punktid, näited, veakoodid ja piirangud. Kõigi päringute baas-URL on https://www.baduno.com/api/v1 – ainult HTTPS-i kaudu.
Baas-URLhttps://www.baduno.com/api/v1
Sissejuhatus
Tõlke API tõlgib teksti, HTML-i ja struktureeritud JSON-i kuni 24 EL-i ametlikku keelde. Päringud ja vastused on JSON (UTF-8). Iga päring valib kvaliteeditaseme: basic (AI), pro (AI terminite järgimisega) või review (lisaks emakeele valimi kontroll, asünkroonne).
Proovimiseks kasutage klienditsooni avalikku liivakastivõtit – see käitub nagu tootmine, kuid on piiratud testkvoodiga. Tootmisvõtme saate pärast lühikest aktiveerimist oma kliendikonto kaudu.
Avalik liivakasti võtibd_test_sandbox_2026
Autentimine
Iga päring kannab teie API võtit Authorization-päises Bearer-tokenina. Võtmed algavad bd_test_ (liivakast) või bd_live_ (tootmine). Käsitlege võtmeid nagu paroole: mitte kunagi frontend-koodis, mitte kunagi hoidlas – kahtluse korral tühistage klienditsoonis ja looge uus.
Ilma kehtiva võtmeta päringutele vastab API olekuga 401. Võtit saab igal ajal varustada igakuise sõnalimiidiga; selle saavutamisel vastab API olekuga 402, kuni te limiiti suurendate.
Authorization: Bearer bd_live_ihr_schluesselTeksti tõlkimine
POST/api/v1/translate
Keskne lõpp-punkt tõlgib ühe või mitu teksti sihtkeelde. Väli format juhib töötlemist: text (vaikimisi), html (markup säilib) või json (tõlgitakse ainult stringväärtused, võtmed ja struktuur jäävad muutmata).
Vastus sisaldab tõlkeid sisendjärjekorras, loendatud lähtesõnu ja arvutatud kulusid sentides. Valikulise päise Idempotency-Key abil väldite topelttöötlust võrgukordustel: identsed võtmed annavad salvestatud esimese vastuse.
curl https://www.baduno.com/api/v1/translate \
-H "Authorization: Bearer bd_test_sandbox_2026" \
-H "Content-Type: application/json" \
-d '{
"target": "fr",
"texts": ["Kostenloser Versand ab 50 Euro."],
"format": "text",
"tier": "basic"
}'{
"ok": true,
"target": "fr",
"tier": "basic",
"translations": ["Livraison gratuite à partir de 50 euros."],
"words": 6,
"cost_cents": 12,
"detected_source": "de"
}Parameeter
target | Sihtkeel (ISO 639-1), nt fr, it, pl. Kohustuslik väli. |
texts[] | Tõlkimist vajavate tekstide loend (1–50 päringu kohta, kokku max 30 000 tähemärki). |
source | Lähtekeel (ISO 639-1). Valikuline – määramata jätmisel tuvastatakse automaatselt. |
format | text, html või json. Vaikeväärtus: text. |
tier | Kvaliteeditase basic, pro või review. Vaikeväärtus: basic. |
glossary | Salvestatud sõnastiku ID, mille terminoloogiat rakendatakse (tase pro ja review). |
const res = await fetch("https://www.baduno.com/api/v1/translate", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.BADUNO_API_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify({ target: "it", texts: [title, description], format: "html" })
});
const { translations } = await res.json();import os, requests
r = requests.post(
"https://www.baduno.com/api/v1/translate",
headers={"Authorization": f"Bearer {os.environ['BADUNO_API_KEY']}"},
json={"target": "pl", "texts": ["Zurück zur Startseite"], "tier": "pro"},
timeout=30,
)
r.raise_for_status()
print(r.json()["translations"][0])$ch = curl_init("https://www.baduno.com/api/v1/translate");
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer " . getenv("BADUNO_API_KEY"),
"Content-Type: application/json"
],
CURLOPT_POSTFIELDS => json_encode(["target" => "es", "texts" => [$text]])
]);
$out = json_decode(curl_exec($ch), true);Batch ja veebihaagid
POST/api/v1/batches
Suurte koguste või ülevaatusetapi puhul töötage asünkroonselt: Batch-lõpp-punkt võtab vastu kuni 1000 teksti ja vastab kohe töö ID-ga. Kui töö on lõpetatud – ülevaatuse korral pärast emakeelse valimi kontrolli – kutsub API teie salvestatud veebihaagi URL-i koos tulemusega.
Veebihaagi kutsed on allkirjastatud HMAC-SHA-256 päisega, mida saate kontrollida oma veebihaagi salasõnaga. Kui teie server ei vasta olekuga 2xx, korratakse edastust kuni viis korda kasvava intervalliga; tööd jäävad lisaks 30 päevaks GET-päringuga kättesaadavaks.
POST /api/v1/batches → { "ok": true, "job": "job_8f2…", "status": "processing" }
GET /api/v1/batches/job_8f2… → { "ok": true, "status": "done", "results": [ … ] }Gloossaariumid
POST/api/v1/glossaries
Sõnastikud tagavad teie terminoloogia: iga kanne sisaldab lähteterminit ja selle siduvat tõlget igas sihtkeeles. Laaditakse üles CSV-failina kliendiportaalis või API kaudu; tase 'pro' ja 'review' rakendavad tabamusi siduvalt, 'basic' kasutab neid soovitusena.
Ühe konto kohta on võimalik kuni 20 sõnastikku, millest igaühes kuni 5000 kannet. Muudatused jõustuvad kohe kõigil järgnevatel päringutel – versioonihaldage sõnastikke seega nagu koodi ja testige muudatusi esmalt sandbox-võtmega.
Keeled
GET/api/v1/languages
Keelte lõpp-punkt tagastab hetkel saadaolevad siht- ja lähtekeeled koos ISO-koodi ja omanimetusega. Kasutage seda fikseeritud loendi asemel – uued keeled ilmuvad sinna automaatselt.
Tarbimine
GET/api/v1/usage
Tarbimise lõpp-punkt kuvab iga võtme kohta tõlgitud sõnad, tekkinud kulud jooksval kuul ning seatud kuulimiidi. Samu arve näete graafiliselt klienditsoonis jaotise „API ja tarbimine“ all.
Veakoodid
Vead esitatakse JSON-ina väljadega error (masinloetav kood) ja message (kirjeldus). Käsitlege vähemalt järgmisi juhtumeid:
| 401 | invalid_key | Puuduv või kehtetu API-võti. |
| 402 | quota_exceeded | Kuulimiit või saldo ammendatud – tõstke limiiti kliendialal. |
| 413 | payload_too_large | Päring liiga suur – jagage tekstid osadeks (maks. 30 000 tähemärki päringu kohta). |
| 422 | unsupported_language | Sihtkeel pole saadaval või parameeter on kehtetu – üksikasjad sõnumi väljal. |
| 429 | rate_limited | Päringulimiit saavutatud – korrake eksponentsiaalse vahega; päis Retry-After näitab ooteaega. |
| 500 | internal | Ootamatu viga meie poolel – oodake hetk ja korrake; sagedase esinemise korral võtke ühendust toega. |
Limiidid ja õiglus
Vaikimisi kehtivad 60 päringut minutis ja võtme kohta ning 30 000 tähemärki päringu kohta; liivakastivõti on lisaks piiratud testkontingendiga. Kõrgemad limiidid aktiveerime pärast lühikest kontrolli – võtke ühendust oma kasutusjuhtumiga.
Sõnade loendamine: loendatakse lähteteksti sõnad (Unicode'i sõnapiirid), iga sihtkeele kohta üks kord. HTML-i ja JSON-i vormingu puhul loendatakse ainult tõlgitavad tekstisõlmed või stringiväärtused – märgistus, võtmed ja muutujad ei maksa.
Andmekaitse
Töötlemine toimub ainult teenuse osutamiseks EL-i serverites; sisu ei kasutata mudelite koolitamiseks ja kustutatakse töötlemislogidest 30 päeva pärast. Tootmiskasutuseks sõlmime volitatud töötleja lepingu vastavalt isikuandmete kaitse üldmääruse (IKÜM) artiklile 28 – üksikasjad Trust Centeris.
Ärge saatke liivakasti kaudu tegelikke isikuandmeid. Pseudonümiseerige testisisu või kasutage sünteetilisi näiteid.
Muudatuste logi
- Juuli 2026
- Avaliku sandbox'i käivitamine: tõlkimise, partiide, sõnastike, keelte ja tarbimise lõpp-punkt.
- Planeeritud
- Tootmisvõtmete isehaldus, stiiliprofiilid kaubamärgi kohta, tõlkemälu konto kohta.
API on versioneeritud /v1 all; tagasiühilduvad laiendused (uued valikulised väljad, uued keeled) toimuvad ilma versioonivahetuseta. Murrangulised muudatused ilmuvad uue versioonina, millega kaasneb vähemalt kaksteist kuud paralleelset töötamist.