Dokumentácia
REST API
Posledná aktualizácia: 15. januára 2026
REST API platformy je verzionované cez URL prefix /api/v1/. Všetky endpoints odpovedajú v JSON formáte (Content-Type: application/json) a vyžadujú API kľúč v Authorization Bearer header-i.
1. Autentifikácia
API kľúče si vygenerujete v /account/api-keys (vyžaduje aspoň Business plán). Každý kľúč má priradený scope (obligations:read,obligations:write, webhooks:manage).
Authorization: Bearer clg_live_a1b2c3d4e5f6...Kľúč zobrazujeme iba raz pri vytvorení. Strata kľúča → musíte vytvoriť nový a zrušiť starý. Kľúče môžu mať expiráciu (max 365 dní) a môžu byť kedykoľvek revoked z UI.
2. Rate limity
| Plán | Limit | Sliding window |
|---|---|---|
| Anonymous (web) | 100 req | / IP / hodina |
| Business | 10 000 req | / kľúč / mesiac |
| Enterprise | custom | SLA-driven |
Response headers pri každom volaní:
X-RateLimit-Limit: 10000
X-RateLimit-Remaining: 9847
X-RateLimit-Reset: 1719859200Pri prekročení limitu API odpovie 429 Too Many Requests s Retry-After header-om.
3. Endpoints
GET /api/v1/obligations
Query parameters: q, type, commodities, activities, authorities, regions, page (default 1), pageSize (20–100, default 50).
curl -H "Authorization: Bearer YOUR_KEY" \
"https://compliance.capitol-legal.com/api/v1/obligations?q=elektrina&pageSize=50"GET /api/v1/obligations/:origId
Detail jednej povinnosti vrátane M:N relácií (statutes, authorities, commodities).
curl -H "Authorization: Bearer YOUR_KEY" \
"https://compliance.capitol-legal.com/api/v1/obligations/247"POST /api/v1/assistant/chat
Streaming SSE chat endpoint. Body: { messages: [{ role, content }] }. Response: text/event-stream s data: {"chunk":"..."} chunks ukončené data: [DONE].
curl -N -H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"messages":[{"role":"user","content":"Aké povinnosti má výrobca elektriny?"}]}' \
"https://compliance.capitol-legal.com/api/v1/assistant/chat"GET /api/v1/calendar/feed.ics
Personalizovaný iCalendar feed (RFC 5545) s povinnosťami z watchlistu používateľa.
4. Error model
Štandardná error response (statusy 4xx/5xx):
{
"error": {
"code": "VALIDATION",
"message": "Invalid request shape.",
"requestId": "req_2sFkP9aQ"
}
}Error codes: AUTH, FORBIDDEN, VALIDATION, NOT_FOUND, RATE_LIMITED, AI_UNAVAILABLE, UPSTREAM_ERROR.
5. Versioning policy
API verzia je v URL prefixe (/api/v1/*). Breaking changes vždy bumpujú major (v2) a stará verzia ostáva k dispozícii minimálne 6 mesiacov so Sunset header-om informujúcim o termíne ukončenia.