API и сервер MCP
Создавайте короткие ссылки и управляйте ими прямо из своего кода — через REST API или через сервер MCP в вашем ИИ-ассистенте.
У cutty есть публичный API и MCP-сервер. Первый позволяет создавать и менять ссылки из кода; второй работает прямо из ИИ-ассистента, который понимает протокол MCP. Оба используют один и тот же API-ключ.
API-ключ
Аутентифицируйте каждый вызов заголовком:
Authorization: Bearer ck_your_key
Где взять ключ: войдите, откройте свою панель → API-ключи → Создать ключ. Полный ключ (он начинается с ck_) показывается только один раз, при создании — сразу сохраните его в надёжном месте. Лимит — 120 запросов в минуту на ключ.
Базовый URL
Все REST-эндпоинты находятся под 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-сервер
Если вы работаете с ИИ-ассистентом, можно подключить cutty по MCP (Model Context Protocol) и попросить его сокращать и упорядочивать ссылки прямо в разговоре. Сервер работает по адресу https://mcp.cutty.dev/mcp через Streamable HTTP, а аутентификация — тем же API-ключом, заголовком Authorization: Bearer ck_....
Полный список инструментов, готовые сниппеты подключения и примеры — на отдельной странице: MCP-сервер cutty.
Что-то не работает?
Напишите на [email protected] — отвечаю в тот же день.