Päť endpointov
Bezplatný sken jednej stránky
POST https://inkluso.eu/api/scan/free
Zadarmo · limit 5 volaní za hodinu na IP · len domovská stránka
Skontroluje zadanú adresu podľa WCAG 2.1 AA a namapuje zistenia na zákon, ktorý určuje pole lang. Najzávažnejšie porušenie dostanete celé aj s právnym odkazom; ostatné sa vrátia len ako závažnosť a počet výskytov v poli locked_violations.
- Volanie trvá zhruba 30 sekúnd: server spustí skutočný prehliadač a stránku vykreslí. Nastavte si klientský timeout aspoň 60 sekúnd.
- Adresa musí smerovať na verejný host. Chýbajúca schéma sa doplní na https://, interné a lokálne adresy sa odmietnu s kódom 422.
- Pole scan_status je vlastná diagnostika skenu. Hodnota "bot_challenge" znamená, že sken zablokoval WAF cieľového webu, taký výsledok nie je dobré hodnotenie, ale žiadne hodnotenie.
- Chyby: 422 (neplatná adresa alebo nebolo čo skenovať), 429 (limit), 503 (skener je zaneprázdnený), 504 (sken prekročil časový strop 300 sekúnd).
curl -sS -X POST https://inkluso.eu/api/scan/free \
-H 'Content-Type: application/json' \
--max-time 90 \
-d '{"url": "https://example.sk", "lang": "sk"}'
Návrh vyhlásenia o prístupnosti
POST https://inkluso.eu/api/statement/draft
Zadarmo · limit 20 volaní za minútu na IP · nič sa neukladá
Zostaví návrh vyhlásenia o prístupnosti z údajov, ktoré pošlete. Nebeží pri tom žiadny sken, nič sa neukladá, neodosiela sa e-mail a nevzniká účet. Odpoveď má dve polia: statement (štruktúrovaný objekt) a text (ten istý dokument ako čistý text na vloženie do CMS).
- conformance_status smie byť len "partial", "none" alebo "not_assessed". Hodnota "full" je zámerne neprípustná: úplnú zhodu nemožno vyhlásiť o sebe, len zmerať.
- known_issues berie najviac 20 položiek, každú najviac 300 znakov; dlhší vstup sa skráti, nie odmietne.
- Vyhlásenie je vlastné vyhlásenie objednávateľa. Inkluso žiadny z uvedených údajov neoveruje a text to výslovne hovorí.
- Chyby: 422 (neplatná adresa, prázdny názov subjektu, nepovolený conformance_status, chybný e-mail), 429 (limit).
curl -sS -X POST https://inkluso.eu/api/statement/draft \
-H 'Content-Type: application/json' \
-d '{"organisation": "Vzor s.r.o.",
"url": "https://example.sk",
"lang": "sk",
"conformance_status": "partial",
"known_issues": ["Two PDFs published before 2024 are not tagged."]}'
Stav objednávky
GET https://inkluso.eu/api/orders/{ref}
Zadarmo · limit 30 volaní za hodinu na IP · každá odpoveď nesie X-Robots-Tag: noindex
Prevedie referenciu objednávky na stav plnenia a po dokončení na adresu reportu. Referencia vzniká pri vytvorení objednávky a nie je totožná s tokenom reportu, ten do dokončenia plnenia neexistuje.
- 404 {"detail": "Order not found"}: taká referencia neexistuje; prestaňte sa pýtať.
- 202 {"status": "pending"}: objednávka existuje, plnenie ešte neskončilo.
- 200 {"status": "fulfilled", "report_url": "/api/reports/{token}"}: hotovo.
- Plnenie zahŕňa sken celého webu a vygenerovanie PDF, počítajte s minútami. Pri limite 30 volaní za hodinu je praktický strop jeden dopyt za dve minúty; jeden dopyt za päť minút je bezpečný vzorec.
curl -sS -i https://inkluso.eu/api/orders/9f2c1d7a8b6e4f0c
HTTP/2 202
x-robots-tag: noindex
{"status": "pending"}
Kúpiť audit alebo spustiť monitoring
POST https://inkluso.eu/api/billing/checkout
Platené · limit 10 volaní za minútu na IP
Vytvorí platobnú reláciu Stripe Checkout a vráti jej adresu. Samotná platba prebehne na Stripe, nie tu: údaje o karte sa na tento endpoint nikdy neposielajú. Pole tier vyberá produkt: scan_report je jednorazový audit (od 149 EUR alebo ekvivalentu v inej mene); monitor / monitor_annual je opakované monitorovacie predplatné, mesačne alebo ročne; agency sa rieši obchodne (cena za touto hodnotou je len záchytný bod, nie ponúkaná cena, agentúry by mali použiť obchodný kanál); shoptet_audit je jednorazový audit e-shopu na Shoptete (99 EUR / 2 490 Kč / 449 zł; mena sa riadi poľom lang).
- consent musí byť true. Ide o právnu požiadavku, nie formalitu: zakúpený tarif je digitálny obsah/služba dodaná okamžite, takže kupujúci musí výslovne súhlasiť s okamžitým plnením a tým sa vzdať 14-dňovej lehoty na odstúpenie. Hodnota false alebo chýbajúce pole vráti 422 a objednávka nevznikne. Neposielajte true v mene človeka bez jeho skutočného súhlasu.
- Mena sa riadi poľom lang: cs sa účtuje v CZK, pl v PLN, ostatné jazyky (de, en, sk) v EUR. Nejde o prepočet jednej sumy, každá mena má vlastný cenník. Jediným zdrojom pravdy je funkcia price_for_tier() v backend.billing.stripe.
- Voliteľná hlavička Idempotency-Key: vygenerujte si sami čerstvú jedinečnú hodnotu pre KAŽDÝ nákupný zámer (napr. UUID v4). Kľúč je zviazaný s vaším presným požiadavkom (e-mail, url, tarif, jazyk): opakovanie s ROVNAKÝM požiadavkom do 24 hodín vráti ROVNAKÉ order_ref, checkout_url, amount a currency; rovnaký kľúč s INÝMI údajmi vráti 422. Kľúč použitý počas spracovania vráti 503, skúste to o chvíľu znova. Kľúč nikdy nekopírujte z dokumentácie ani z iného požiadavku.
- Chyby: 422 (consent nie je true, neplatná adresa alebo chýbajúce/chybné pole), 429 (limit), 503 (Idempotency-Key sa práve spracúva, alebo je platobný poskytovateľ dočasne zle nakonfigurovaný), 500 (platobný systém nedostupný).
curl -sS -X POST https://inkluso.eu/api/billing/checkout \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: ' \
-d '{"email": "buyer@example.sk", "tier": "scan_report",
"url": "https://example.sk", "lang": "sk", "consent": true}'
Potom opakovane volajte GET /api/orders/{order_ref} vyššie, kým sa stav nezmení na "fulfilled".