API ja MCP-server
Loo ja halda lühilinke otse oma koodist — REST API kaudu või MCP-serveriga oma AI-assistendis.
cutty-l on avalik API ja MCP-server. Esimene laseb sul luua ja muuta linke koodist; teine töötab otse AI-assistendist, mis räägib MCP-protokolli. Mõlemad kasutavad sama API-võtit.
API-võti
Autendi iga päring päisega:
Authorization: Bearer ck_your_key
Kust võti võtta: logi sisse, ava oma töölaud → API-võtmed → Loo võti. Täielik võti (algab ck_-ga) kuvatakse ainult korra, loomise hetkel — salvesta see kohe turvalisse kohta. Piirang on 120 päringut minutis võtme kohta.
Baas-URL
Kõik REST-i lõpp-punktid asuvad aadressil https://cutty.dev/api/v1. Päringud ja vastused on JSON-vormingus.
Lingi loomine
POST /api/v1/links — JSON-keha vajab vähemalt välja url. Ülejäänu on valikuline:
url— sihtaadress (kohustuslik)slug— kohandatud lõpp, 3–40 tähemärki; juhusliku jaoks jäta väljaexpiresAt— aegumiskuupäev ISO 8601 vormingusmaxHits— klikkide piirang (1–1 000 000)password— linki kaitsev parooltags— komaga eraldatud sildid töölaual korrastamiseksfolder— kausta nimi, kuhu link lähebutmSource,utmMedium,utmCampaign— ümbersuunamisel lisatavad UTM-parameetrid
Vastus annab sulle slug, shortUrl ja 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"}'
Loendamine ja üksik link
GET /api/v1/links tagastab kõik su lingid. GET /api/v1/links/{slug} — ühe lingi üksikasjad.
curl https://cutty.dev/api/v1/links/offer \
-H "Authorization: Bearer ck_your_key"
Muutmine ja kustutamine
PATCH /api/v1/links/{slug} uuendab edastatud välju, DELETE /api/v1/links/{slug} eemaldab lingi.
curl -X PATCH https://cutty.dev/api/v1/links/offer \
-H "Authorization: Bearer ck_your_key" \
-H "Content-Type: application/json" \
-d '{"maxHits":500}'
PATCH kaudu saad muu hulgas määrata: targetUrl, expiresAt, maxHits, status, password, tags, folder, lisaks allpool olevad täpsemad väljad. Väli, mille väärtuseks on null (või tühi sõne), tühjendab selle omaduse.
Targetimine, A/B ja täpsemad väljad
Sama, mida saad lingiredaktoris, on saadaval ka API kaudu:
rules— ümbersuunamisreeglite massiiv riigi või seadme järgi, nt[{"kind":"country","match":"PL","url":"https://shop.pl"},{"kind":"device","match":"ios","url":"https://apps.apple.com/..."}]abUrls— A/B-rotatsioon: massiiv[{"url":"https://a.com","weight":1},{"url":"https://b.com","weight":1}]; kasutatakse, kui ükski reegel ei sobistartsAt— kuupäev (ISO 8601), millal link aktiveerub; enne seda tagastab link 425webhookUrl— aadress, mis saab iga kliki korralPOST-teavituse (fire-and-forget)serveOgkoos väljadegaogTitle,ogDescription,ogImageUrl— kohandatud eelvaatekaart sotsiaalmeedia robotitele (inimesed suunatakse ikkagi edasi)
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"}]}'
Hulgitoimingud
POST /api/v1/bulk loob ühe päringuga palju linke. Edasta links massiiv (iga element nagu tavalisel loomisel), kuni 500 korraga. Vastus tagastab tulemuse iga rea kohta.
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"}]}'
Lingi statistika
GET /api/v1/links/{slug}/stats tagastab klikkide kokkuvõtte: kogusumma, jaotuse seadme ja brauseri järgi ning jaotuse viimase 24 tunni lõikes.
curl https://cutty.dev/api/v1/links/offer/stats \
-H "Authorization: Bearer ck_your_key"
MCP-server
Kui kasutad AI-assistenti, saad ühendada cutty üle MCP (Model Context Protocol) ja paluda tal linke otse vestluses lühendada ja korrastada. Server töötab aadressil https://mcp.cutty.dev/mcp üle Streamable HTTP ja autendid sama API-võtmega — päisega Authorization: Bearer ck_....
Täielik tööriistade loend, valmis ühendusnäited ja näited on eraldi lehel: cutty MCP-server.
Midagi ei tööta?
Kirjuta aadressile [email protected] — vastan samal päeval.