Preformulovanie, kontrola gramatiky, zhrnutia, preklad a kontrola plagiátorstva v 56 jazykoch pre vašu aplikáciu. Jednoduché REST API z okraja siete Cloudflare.
Same-origin
API momentálne obsluhuje len požiadavky z webu adeptwrite.com (bez hlavičiek CORS). Externý prístup s API kľúčmi je plánovaný spolu s plánom Pro. Dokumentáciu zverejňujeme vopred, aby bol kontrakt otvorený a mohli ste sa naň pripraviť.
Zhrnutie
API AdeptWrite v1 má tri aktívne endpointy. POST /api/v1/run prijme JSON s poľami task, mode, lang a text (najviac 6 000 znakov) a vráti čistý text z modelu Cloudflare Workers AI, vybraného podľa jazyka; POST /api/v1/plagiarism porovná text s otvorenými zdrojmi a vypíše každý prehľadaný zdroj; GET /api/v1/health vráti stav služby. Text sa nikdy neukladá ani nezapisuje do logov a požiadavky na AI sú obmedzené na 30 za minútu na jednu IP adresu.
Základy
Základná URL:https://adeptwrite.com/api/v1
Formát: požiadavky aj odpovede sú JSON (Content-Type: application/json, UTF-8).
Autentifikácia: zatiaľ žiadna; požiadavka musí prísť zo stránky adeptwrite.com (same-origin). API kľúče pribudnú spolu s plánom Pro.
Súkromie: obsah poľa text sa neukladá ani nezapisuje do logov; odpoveď nesie hlavičku Cache-Control: no-store.
Verzia: cesta /v1/ sa nebude meniť nekompatibilne; väčšie zmeny prídu pod cestou /v2/.
POST/api/v1/run
Spustí jednu úlohu AI nad textom a vráti výsledok ako čistý text (bez úvodu a bez blokov Markdownu).
Požiadavka
Field
Type
Required
Notes
task
string
✓
Názov úlohy; pozrite zoznam úloh nižšie.
text
string
✓
Vstupný text, 1 až 6 000 znakov.
lang
string
✓
Jazyk výsledku: jeden z 56 kódov jazykových verzií webu (sk, en, cs, pt-pt, zh-hant a ďalšie; značky BCP 47 ako pt-BR sa tiež priradia) alebo auto pre „rovnaký ako jazyk vstupu“.
mode
string
—
Režim dostupný pre daný nástroj, napríklad Formal, Akademik, Ringkas, Poin-poin (názvy režimov sú kľúče registra nástrojov). Úlohy bez režimov ho ignorujú.
options
object
—
Doplnkové voľby podľa úlohy: from / to pre translate (z ktoréhokoľvek podporovaného jazyka do iného; from môže byť auto; sr-Cyrl žiada srbčinu v cyrilike), platform (instagram / tiktok / linkedin) pre caption a voliteľné označené fields pre bio, coverletter a meta. Ostatné kľúče sa ignorujú.
POST /api/v1/run HTTP/1.1
Content-Type: application/json
{
"task": "paraphrase",
"mode": "Formal",
"lang": "sk",
"text": "Kvalita písania je pre vysokoškolských študentov veľmi dôležitá.",
"options": {}
}
Odpoveď
Stav 200 s ok: true, výsledkom v output, modelom, ktorý skutočne odpovedal, v model (líši sa, ak prevzal záložný model) a trvaním spracovania v milisekundách. Ak bola odpoveď useknutá pre dosiahnutý limit dĺžky alebo času, pribudne truncated: true.
{
"ok": true,
"output": "Kvalita textu je pre vysokoškolákov mimoriadne dôležitá.",
"model": "@cf/qwen/qwen3-30b-a3b-fp8",
"ms": 812
}
Príklad: curl
curl -X POST https://adeptwrite.com/api/v1/run \
-H "Content-Type: application/json" \
-d '{"task":"grammar","lang":"sk","text":"Zajtra sa stretneme zo mnou v škole."}'
Príklad: JavaScript (fetch)
const res = await fetch('/api/v1/run', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ task: 'summarize', mode: 'Poin-poin', lang: 'sk', text }),
});
const data = await res.json();
if (!data.ok) throw new Error(data.error.code + ': ' + data.error.message);
console.log(data.output);
POST/api/v1/plagiarism
Vyberie 4 až 8 charakteristických fráz z textu, vyhľadá ich v otvorených zdrojoch podľa jazyka textu (Wikipédia, Wikisource, plné texty Internet Archive, Europe PMC, DOAJ, arXiv; poskytovateľ webového vyhľadávania len ak je nakonfigurovaný a vyžiadaný) a vypočíta mieru zhody. Zo servera odchádzajú iba tieto krátke frázy.
Požiadavka
Field
Type
Required
Notes
text
string
✓
Najmenej 30 slov, najviac 6 000 znakov.
lang
string
✓
Kód jazykovej verzie webu alebo auto.
options
object
—
web: true zapojí aj poskytovateľa webového vyhľadávania, ak ho prevádzkovateľ nakonfiguroval; webSearched v odpovedi uvádza, či poskytovateľ naozaj odpovedal.
Stav 200 s score (zhodujúce sa slová ÷ počet slov, 0 až 1), matches podľa zdrojov so zvýraznenými passages (pozície znakov vo vašom texte), sourcesSearched (presne tie zdroje, ktorých odpoveď je vo výsledku), sourcesSkipped s dôvodmi a webSearched.
Hlási, ktoré služby bežia. Nevyžaduje telo požiadavky a nezapočítava sa do kvót.
Odpoveď
Stav 200. ai je false, kým je zapnutý núdzový vypínač AI; plagiarism uvádza zdroje, ktoré kontrola vie prehľadávať; aidetect opisuje hĺbkovú analýzu AI detektora na serveri, ktorá zatiaľ nie je nasadená (POST /api/v1/aidetect odpovie 503 disabled; detektor na webe beží vo vašom prehliadači).
Oprava gramatiky a pravopisu (pri slovenčine podľa Pravidiel slovenského pravopisu).
tone
Zmena tónu; režimy: Formal, Kantor (pracovný), Santai (neformálny).
rewrite
Oprava ťažkopádnych alebo nejasných viet; režimy: Standar, Formal.
resize
Skrátenie alebo rozšírenie viet; režimy: Ringkas, Panjangkan.
essay
Súvislé odseky alebo esej z hesiel; režimy: Akademik, Kreatif, Panjangkan.
summarize
Zhrnutie; režimy: Poin-poin (odrážky), Paragraf (odsek), Satu kalimat (jedna veta).
translate
Preklad medzi dvoma podporovanými jazykmi; options.from (alebo auto) a options.to; režimy: Alami (prirodzený, predvolený), Formal, Santai (neformálny).
thesis
Nápady na témy záverečných prác a osnova kapitol.
abstract
Štruktúrovaný abstrakt zo zhrnutia výskumu.
caption
Popisky na sociálne siete; options.platform: instagram, tiktok, linkedin.
email
E-maily a listy; režimy: Lamaran kerja (žiadosť o prácu), Surat resmi (úradný list), Follow-up (pripomenutie).
headline
Nadpisy a titulky článkov; režimy: Kreatif, Ringkas.
Krátke básne; režimy: Bebas (voľný verš), Berima (rýmovaný), Akrostik (akrostich), Haiku.
Limity
Dĺžka textu
Najviac 6 000 znakov na požiadavku (viac vráti 413 too_long).
Na IP adresu
30 požiadaviek za minútu.
Globálne
100 požiadaviek za minútu pre celú službu a denný strop pre funkcie s AI.
Kontrola plagiátorstva
5 kontrol za minútu na IP adresu a 60 za minútu pre celú službu; najmenej 30 slov.
Výstup
Rozpočet dĺžky podľa úlohy, nikdy viac ako 2 048 tokenov; useknutá odpoveď nesie truncated: true.
Model
Vyberá sa podľa jazyka: angličtina a indonézčina používajú @cf/aisingapore/gemma-sea-lion-v4-27b-it, každý iný jazyk @cf/qwen/qwen3-30b-a3b-fp8. Keď je model vyťažený, narazí na limit, je pomalý alebo zlyhá, požiadavka prejde na ďalší model záložného reťazca (Qwen3-30B, potom @cf/google/gemma-4-26b-a4b-it, potom @cf/meta/llama-3.3-70b-instruct-fp8-fast). Pole model vždy uvádza model, ktorý odpovedal.
Chybové kódy
Stav
Kód
Kedy nastane
400
invalid_request
Neplatný JSON, chýbajúce povinné pole alebo neznáme task či lang.
413
too_long
text má viac ako 6 000 znakov.
403
forbidden
Požiadavka neprišla zo stránky adeptwrite.com.
429
rate_limited
Prekročený minútový limit na IP adresu alebo globálny limit. Počkajte počet sekúnd z hlavičky Retry-After.
429
quota_exceeded
Denný limit funkcií s AI je vyčerpaný. Skúste to znova nasledujúci deň (UTC).
502
upstream
Žiadny model v reťazci neodpovedal včas.
502
empty_output
Model odpovedal, ale výsledok je prázdny.
503
disabled
Prevádzkovateľ službu dočasne vypol alebo (pri /api/v1/aidetect) ešte nie je nasadená.
Formát chýb
Každá chyba sa vracia ako JSON s príslušným stavovým kódom HTTP a rovnakým tvarom:
{ "ok": false, "error": { "code": "rate_limited", "message": "Príliš veľa požiadaviek. Skúste to o chvíľu." } }
Najprv skontrolujte ok, potom čítajte error.code na programové spracovanie; error.message je bezpečné zobraziť používateľovi.
Odporúčaný postup
Posielajte text po častiach (napríklad po odsekoch), nie ako jeden dlhý dokument; výsledok príde rýchlejšie a ľahšie sa kontroluje.
Na 429 reagujte exponenciálnym čakaním, nie okamžitým opakovaním.
Neposielajte osobné ani dôverné údaje, ktoré nepotrebujete – hoci ich neukladáme, platí zásada minimalizácie údajov.
Výstup AI môže byť nesprávny; ukážte ho ako návrh na kontrolu, nie ako konečnú pravdu.
Najčastejšie otázky
Môžem API volať z vlastnej aplikácie alebo domény?
Zatiaľ nie. Worker momentálne neposiela hlavičky CORS a obsluhuje len stránky adeptwrite.com. Externý prístup s API kľúčmi je plánovaný spolu s plánom Pro; dokumentáciu aktualizujeme, keď bude dostupný.
Ukladá sa text odoslaný do API?
Nie. Text sa odovzdá modelu na vytvorenie odpovede a potom sa zahodí. Logy obsahujú iba metaúdaje, ako stavový kód, názov úlohy a trvanie, a vôbec nie obsah textu. Všetky podrobnosti nájdete v zásadách ochrany osobných údajov.
Prečo je výstup čistý text a nie štruktúrovaný JSON?
Každá úloha vytvára jeden hotový text bez úvodu a blokov Markdownu, aby sa dal priamo zobraziť v editore. Ďalšiu štruktúru (napríklad zoznam zmien) plánujeme v neskoršej verzii bez zmeny v1.
Koľko stojí používanie API?
Z webu adeptwrite.com je zadarmo s limitom 30 požiadaviek na AI za minútu na jednu IP adresu. Ceny externého prístupu oznámime spolu s plánom Pro; dovtedy sa nič neúčtuje.
Ktorý model odpovedá na moju požiadavku?
Závisí od jazyka: angličtinu a indonézčinu obsluhuje SEA-LION, ostatné jazyky Qwen3-30B. Ak je tento model vyťažený alebo zlyhá, odpovie ďalší model záložného reťazca a pole model v odpovedi uvádza ten, ktorý skutočne odpovedal.