İçeriğe git
cutty.dev
Geliştiriciler için

API ve MCP sunucusu

Kısa bağlantıları kendi kodunuzdan oluşturup yönetin — REST API üzerinden ya da yapay zeka asistanınızdaki bir MCP sunucusu aracılığıyla.

cutty'nin herkese açık bir API'si ve bir MCP sunucusu var. Birincisi koddan bağlantı oluşturup değiştirmenizi sağlar; ikincisi MCP protokolünü konuşan bir yapay zeka asistanından doğrudan çalışır. İkisi de aynı API anahtarını kullanır.

API anahtarı

Her çağrıyı bir başlıkla kimliklendirin:

Authorization: Bearer ck_your_key

Anahtarı nereden alacaksınız: oturum açın, panelinizi açın → API keysCreate key. Tam anahtar (ck_ ile başlar) yalnızca bir kez, oluşturma anında gösterilir — hemen güvenli bir yere kaydedin. Sınır, anahtar başına dakikada 120 istektir.

Temel URL

Tüm REST uç noktaları https://cutty.dev/api/v1 altında bulunur. İstekler ve yanıtlar JSON formatındadır.

Bağlantı oluşturma

POST /api/v1/links — JSON gövdesinde en az bir url gerekir. Geri kalanı isteğe bağlıdır:

  • url — hedef adres (zorunlu)
  • slug — özel son ek, 3–40 karakter; rastgele bir tane için boş bırakın
  • expiresAt — ISO 8601 formatında son kullanma tarihi
  • maxHits — tıklama sınırı (1–1.000.000)
  • password — bağlantıyı koruyan parola
  • tags — panelde düzenleme için virgülle ayrılmış etiketler
  • folder — bağlantının ekleneceği klasörün adı
  • utmSource, utmMedium, utmCampaign — yönlendirmede eklenen UTM parametreleri

Yanıt size slug, shortUrl ve target değerlerini verir.

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"}'

Listeleme ve tek bağlantı

GET /api/v1/links tüm bağlantılarınızı döndürür. GET /api/v1/links/{slug} — birinin ayrıntıları.

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

Güncelleme ve silme

PATCH /api/v1/links/{slug} ilettiğiniz alanları günceller, DELETE /api/v1/links/{slug} bağlantıyı kaldırır.

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 ile diğerlerinin yanı sıra şunları ayarlayabilirsiniz: targetUrl, expiresAt, maxHits, status, password, tags, folder, ayrıca aşağıdaki gelişmiş alanlar. null (veya boş dizge) olarak ayarlanan bir alan, o özelliği temizler.

Hedefleme, A/B ve gelişmiş alanlar

Bağlantı düzenleyicisinde bulduğunuz özelliklerin aynısı API üzerinden de mevcut:

  • rules — ülkeye veya cihaza göre yönlendirme kurallarından oluşan bir dizi, örn. [{"kind":"country","match":"PL","url":"https://shop.pl"},{"kind":"device","match":"ios","url":"https://apps.apple.com/..."}]
  • abUrls — A/B rotasyonu: bir dizi [{"url":"https://a.com","weight":1},{"url":"https://b.com","weight":1}]; hiçbir kural eşleşmediğinde kullanılır
  • startsAt — bağlantının yayına gireceği tarih (ISO 8601); öncesinde bağlantı 425 döndürür
  • webhookUrl — her tıklamada bir POST bildirimi alan adres (gönder-ve-unut)
  • serveOg ile ogTitle, ogDescription, ogImageUrl — sosyal tarayıcılar için özel bir önizleme kartı (insanlar yine de yönlendirilir)
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"}]}'

Toplu işlemler

POST /api/v1/bulk tek bir istekte birçok bağlantı oluşturur. Bir links dizisi iletin (her öğe normal bir oluşturma gibi), tek seferde en fazla 500. Yanıt, her satır için bir sonuç döndürür.

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"}]}'

Bağlantı istatistikleri

GET /api/v1/links/{slug}/stats bir tıklama özeti döndürür: toplam, cihaz ve tarayıcıya göre dağılım ve son 24 saatteki dağılım.

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

MCP sunucusu

Bir yapay zeka asistanıyla çalışıyorsanız, cutty'yi MCP (Model Context Protocol) üzerinden bağlayabilir ve bağlantıları doğrudan sohbetin içinde kısaltıp düzenlemesini isteyebilirsiniz. Sunucu https://mcp.cutty.dev/mcp adresinde Streamable HTTP üzerinden çalışır ve aynı API anahtarıyla kimliklenirsiniz — Authorization: Bearer ck_... başlığı.

Araçların tam listesi, hazır bağlantı parçacıkları ve örnekler ayrı bir sayfada: cutty MCP sunucusu.

Bir şey çalışmıyor mu?

[email protected] adresine yazın — aynı gün yanıtlıyorum.