API и MCP сървър
Създавай и управлявай кратки линкове направо от своя код — през REST API или през MCP сървър в твоя AI асистент.
cutty има публично API и MCP сървър. Първото ви позволява да създавате и променяте връзки от код; второто работи направо от AI асистент, който говори протокола MCP. И двете използват един и същ API ключ.
API ключ
Удостоверявайте всяка заявка със заглавка:
Authorization: Bearer ck_your_key
Откъде да вземете ключ: влезте, отворете таблото → API keys → Create key. Пълният ключ (започва с ck_) се показва само веднъж, при създаването — запазете го веднага на сигурно място. Лимитът е 120 заявки в минута на ключ.
Base URL
Всички REST endpoint-и са под https://cutty.dev/api/v1. Заявките и отговорите са в JSON.
Създаване на връзка
POST /api/v1/links — JSON тялото изисква поне url. Останалото е по избор:
url— адрес на дестинацията (задължително)slug— собствен край, 3–40 знака; пропуснете го за случаенexpiresAt— дата на изтичане във формат ISO 8601maxHits— лимит на кликовете (1–1 000 000)password— парола, защитаваща връзкатаtags— етикети, разделени със запетая, за подредба в таблотоfolder— име на папката, в която влиза връзкатаutmSource,utmMedium,utmCampaign— UTM параметри, добавяни при пренасочване
Отговорът ви връща slug, shortUrl и 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"}'
Списък и единична връзка
GET /api/v1/links връща всичките ви връзки. GET /api/v1/links/{slug} — детайли за една.
curl https://cutty.dev/api/v1/links/offer \
-H "Authorization: Bearer ck_your_key"
Обновяване и изтриване
PATCH /api/v1/links/{slug} обновява полетата, които подадете, DELETE /api/v1/links/{slug} премахва връзката.
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 можете да зададете, наред с другото: targetUrl, expiresAt, maxHits, status, password, tags, folder, плюс разширените полета по-долу. Поле, зададено на null (или празен низ), изчиства това свойство.
Насочване, A/B и разширени полета
Същите неща, които имате в редактора на връзки, са достъпни през API:
rules— масив от правила за пренасочване по държава или устройство, напр.[{"kind":"country","match":"PL","url":"https://shop.pl"},{"kind":"device","match":"ios","url":"https://apps.apple.com/..."}]abUrls— A/B ротация: масив[{"url":"https://a.com","weight":1},{"url":"https://b.com","weight":1}]; използва се, когато нито едно правило не съвпадаstartsAt— дата (ISO 8601), на която връзката става активна; преди нея връзката връща 425webhookUrl— адрес, който получаваPOSTизвестие при всеки клик (fire-and-forget)serveOgсogTitle,ogDescription,ogImageUrl— собствена карта за визуализация за ботовете на социалните мрежи (хората пак получават пренасочването)
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"}]}'
Групови операции
POST /api/v1/bulk създава много връзки в една заявка. Подайте масив links (всеки елемент като обикновено създаване), до 500 наведнъж. Отговорът връща резултат за всеки ред.
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"}]}'
Статистики за връзка
GET /api/v1/links/{slug}/stats връща обобщение на кликовете: общия брой, разбивка по устройство и браузър, и разпределението за последните 24 часа.
curl https://cutty.dev/api/v1/links/offer/stats \
-H "Authorization: Bearer ck_your_key"
MCP сървър
Ако работите с AI асистент, можете да свържете cutty през MCP (Model Context Protocol) и да го помолите да съкращава и подрежда връзки направо в разговора. Сървърът работи на https://mcp.cutty.dev/mcp през Streamable HTTP, а удостоверяването е със същия API ключ — заглавката Authorization: Bearer ck_....
Пълният списък с инструменти, готовите фрагменти за свързване и примерите са на отделна страница: MCP сървърът на cutty.
Нещо не работи?
Пишете на [email protected] — отговарям същия ден.