Prejsť k obsahu
cutty.dev
Pre vývojárov

API a MCP server

Vytvárajte a spravujte krátke odkazy priamo z vlastného kódu — cez REST API alebo cez MCP server vo vašom AI asistentovi.

cutty má verejné API a MCP server. Prvé ti umožní vytvárať a meniť odkazy z kódu, druhé funguje priamo z AI asistenta, ktorý ovláda protokol MCP. Oba používajú ten istý API kľúč.

API kľúč

Každé volanie autentifikuj hlavičkou:

Authorization: Bearer ck_your_key

Kde získať kľúč: prihlás sa, otvor svoj panelAPI kľúčeVytvoriť kľúč. Celý kľúč (začína na ck_) sa zobrazí len raz, pri vytvorení — hneď si ho ulož na bezpečné miesto. Limit je 120 požiadaviek za minútu na kľúč.

Základná URL

Všetky REST endpointy žijú pod https://cutty.dev/api/v1. Požiadavky aj odpovede sú vo formáte JSON.

Vytvorenie odkazu

POST /api/v1/links — telo JSON potrebuje aspoň url. Zvyšok je voliteľný:

  • url — cieľová adresa (povinné)
  • slug — vlastná koncovka, 3 – 40 znakov; vynechaj pre náhodnú
  • expiresAt — dátum vypršania vo formáte ISO 8601
  • maxHits — limit klikov (1 – 1 000 000)
  • password — heslo chrániace odkaz
  • tags — štítky oddelené čiarkou na organizovanie v paneli
  • folder — názov priečinka, do ktorého odkaz patrí
  • utmSource, utmMedium, utmCampaign — UTM parametre pridané pri presmerovaní

Odpoveď ti vráti slug, shortUrl a target.

curl -X POST https://cutty.dev/api/v1/links \
  -H "Authorization: Bearer ck_your_key" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/a/very/long/address","slug":"offer","tags":"campaign,summer"}'

Výpis a jeden odkaz

GET /api/v1/links vráti všetky tvoje odkazy. GET /api/v1/links/{slug} — detail jedného.

curl https://cutty.dev/api/v1/links/offer \
  -H "Authorization: Bearer ck_your_key"

Úprava a mazanie

PATCH /api/v1/links/{slug} aktualizuje polia, ktoré odovzdáš, DELETE /api/v1/links/{slug} odkaz odstráni.

curl -X PATCH https://cutty.dev/api/v1/links/offer \
  -H "Authorization: Bearer ck_your_key" \
  -H "Content-Type: application/json" \
  -d '{"maxHits":500}'

Cez PATCH môžeš nastaviť okrem iného: targetUrl, expiresAt, maxHits, status, password, tags, folder a pokročilé polia nižšie. Pole nastavené na null (alebo prázdny reťazec) danú vlastnosť vymaže.

Targetovanie, A/B a pokročilé polia

To isté, čo máš v editore odkazov, je dostupné aj cez API:

  • rules — pole pravidiel presmerovania podľa krajiny alebo zariadenia, napr. [{"kind":"country","match":"PL","url":"https://shop.pl"},{"kind":"device","match":"ios","url":"https://apps.apple.com/..."}]
  • abUrls — A/B rotácia: pole [{"url":"https://a.com","weight":1},{"url":"https://b.com","weight":1}]; použije sa, keď nesedí žiadne pravidlo
  • startsAt — dátum (ISO 8601), kedy sa odkaz spustí; predtým odkaz vráti 425
  • webhookUrl — adresa, ktorá pri každom kliknutí dostane oznámenie cez POST (fire-and-forget)
  • serveOg s ogTitle, ogDescription, ogImageUrl — vlastná náhľadová karta pre crawlerov sociálnych sietí (ľudia stále dostanú presmerovanie)
curl -X PATCH https://cutty.dev/api/v1/links/offer \
  -H "Authorization: Bearer ck_your_key" \
  -H "Content-Type: application/json" \
  -d '{"rules":[{"kind":"country","match":"DE","url":"https://example.de"}]}'

Hromadné operácie

POST /api/v1/bulk vytvorí veľa odkazov v jednej požiadavke. Odovzdaj pole links (každá položka ako bežné vytvorenie), naraz až 500. Odpoveď vráti výsledok pre každý riadok.

curl -X POST https://cutty.dev/api/v1/bulk \
  -H "Authorization: Bearer ck_your_key" \
  -H "Content-Type: application/json" \
  -d '{"links":[{"url":"https://a.com"},{"url":"https://b.com","slug":"b"}]}'

Štatistiky odkazu

GET /api/v1/links/{slug}/stats vráti súhrn klikov: celkový počet, rozdelenie podľa zariadenia a prehliadača a rozloženie za posledných 24 hodín.

curl https://cutty.dev/api/v1/links/offer/stats \
  -H "Authorization: Bearer ck_your_key"

MCP server

Ak pracuješ s AI asistentom, môžeš cutty pripojiť cez MCP (Model Context Protocol) a požiadať ho, aby skracoval a organizoval odkazy priamo v konverzácii. Server beží na https://mcp.cutty.dev/mcp cez Streamable HTTP a autentifikuješ sa rovnakým API kľúčom — hlavičkou Authorization: Bearer ck_....

Úplný zoznam nástrojov, hotové ukážky pripojenia a príklady nájdeš na samostatnej stránke: MCP server cutty.

Niečo nefunguje?

Napíš na [email protected] — odpovedám v ten istý deň.