API a MCP server
Všetko, čo vie formulár, vie aj API. Bez kľúča s limitom na IP adresu, s kľúčom z účtu naplno a odkazy sa ukladajú do účtu.
Rýchly štart
Jeden POST s JSON telom. Odpoveď je objekt odkazu; pri anonymnom odkaze obsahuje aj edit_token, ktorý si ulož, ak chceš odkaz neskôr upraviť alebo zmazať.
curl -X POST https://skrat.im/api/v1/links \
-H "Content-Type: application/json" \
-H "Authorization: Bearer skrat_…" \
-d '{"url": "https://example.com/dlha/adresa", "alias": "moja-akcia", "domain": "krat.im"}' {
"id": "5d1c…",
"domain": "krat.im",
"slug": "moja-akcia",
"short_url": "https://krat.im/moja-akcia",
"url": "https://example.com/dlha/adresa",
"status": "active",
"clicks": 0,
"preview_url": "https://krat.im/moja-akcia+",
"qr_png_url": "https://krat.im/moja-akcia.png",
"stats_url": "https://skrat.im/api/v1/links/5d1c…/stats"
} curl -X PATCH https://skrat.im/api/v1/links/5d1c… \
-H "Content-Type: application/json" -H "X-Edit-Token: …" \
-d '{"url": "https://example.com/nova/adresa"}' Autentifikácia a limity
Bez kľúča: 60 odkazov za hodinu a 300 za deň na IP adresu. S API kľúčom (hlavička Authorization: Bearer skrat_…): 1000 za hodinu, odkazy patria účtu. Kľúč vytvoríš v nastaveniach účtu. Pri prekročení limitu príde 429 s hlavičkou Retry-After.
Endpointy
| Metóda | Cesta | Popis |
|---|---|---|
POST | /api/v1/links | Vytvorí odkaz. Telo: url, alias?, domain?, title?, expires_in_days?, expires_at?, max_clicks?, password?, public_stats?, utm_* |
GET | /api/v1/links | Odkazy účtu (vyžaduje kľúč). |
GET | /api/v1/links/{id} | Detail odkazu (kľúč vlastníka alebo X-Edit-Token). |
PATCH | /api/v1/links/{id} | Úprava: url, title, expires_at | expires_in_days, max_clicks, password ("" zruší), public_stats. |
DELETE | /api/v1/links/{id} | Zmazanie odkazu. |
GET | /api/v1/links/{id}/stats | Štatistiky (verejné, kým ich vlastník neskryje). |
GET | /api/v1/check?slug=&domain= | Dostupnosť aliasu, vrátane druhej domény. |
POST | /api/v1/bulk | Hromadne: urls (pole alebo text po riadkoch), max. 20 bez kľúča, 200 s kľúčom. |
GET | /api/shorten?url= | Textový endpoint: vráti len krátky odkaz. |
GET | /{alias}+ | Náhľad odkazu (HTML). |
GET | /{alias}.json | Verejné info o odkaze (JSON). |
GET | /{alias}.png | .svg | QR kód (size, fg, bg, margin). |
Chyby
Chyba má vždy tvar { "error": { "code", "message" } }. Správa je v jazyku podľa ?lang= alebo Accept-Language. Kódy: invalid_url, unsupported_scheme, private_host, self_reference, unsafe_url, slug_invalid, slug_reserved, slug_taken, domain_invalid, rate_limited, not_found, unauthorized, forbidden, too_many.
MCP server pre AI agentov
Endpoint /mcp hovorí Model Context Protocol cez Streamable HTTP (JSON-RPC 2.0, bezstavovo). Nástroje: shorten_url, check_alias, get_link_info, qr_code. Bez kľúča platí limit na IP; s kľúčom v hlavičke Authorization sa odkazy ukladajú do účtu.
Claude Code:
claude mcp add --transport http skrat https://skrat.im/mcp Konfigurácia (Claude Desktop, Cursor a podobné):
{
"mcpServers": {
"skrat": {
"type": "http",
"url": "https://skrat.im/mcp",
"headers": { "Authorization": "Bearer skrat_…" }
}
}
} Bookmarklet
Potiahni odkaz do lišty záložiek. Na ľubovoľnej stránke ho klikni a otvorí sa skrat.im s predvyplnenou adresou.