RESTful API: Geliştiriciler için tam dokümantasyon
Bearer token authentication, JSON yanıtlar, 500 req/dk rate limit. cURL, JavaScript ve PHP örnekleriyle her endpoint ayrıntılı açıklandı.
Base URL ve Authentication
Tüm API çağrıları aşağıdaki temel URL üzerinden HTTPS ile yapılır. HTTP istekleri 301 yönlendirmesiyle HTTPS'e aktarılır.
Base URL
https://erisilebilircerez.com/api/v1
Authentication: Bearer Token
API key'inizi Authorization header'ında Bearer prefix'i ile gönderin. API key'inizi admin panel > Kurulum sayfasından alabilirsiniz.
curl https://erisilebilircerez.com/api/v1/banner/YOUR_API_KEY \ -H "Authorization: Bearer YOUR_SECRET_KEY" \ -H "Content-Type: application/json"
/api/v1/banner/{api_key}
Domain için aktif banner konfigürasyonunu döner. SDK her sayfa yüklenmesinde bu endpoint'i çağırır; yanıt sunucu tarafında 5 dakika önbelleğe alınır.
Path Parametresi
Query Parametreleri (opsiyonel)
Örnek İstek
curl https://erisilebilircerez.com/api/v1/banner/pk_live_abc123 \ -H "Authorization: Bearer sk_live_xyz789"
Başarılı Yanıt 200 OK
{ "success": true, "data": { "domain": "example.com", "position": "bottom", "theme": "modern", "language": "tr", "texts": { "title": "Çerez Tercihleriniz", "description": "Sitemiz deneyiminizi iyileştirmek için çerez kullanır...", "accept_all": "Tümünü Kabul Et", "reject_all": "Tümünü Reddet" }, "categories": [ { "id": "necessary", "required": true }, { "id": "analytics", "required": false }, { "id": "marketing", "required": false } ], "consent_expiry_days": 180, "products": { "cookie": true, "accessibility": false } } }
/api/v1/consent/log
Kullanıcının onay kararını sunucuya kaydeder. KVKK ve GDPR ispat yükümlülüğü için kayıt 90 gün saklanır.
Body Parametreleri (JSON)
Örnek İstek
curl -X POST https://erisilebilircerez.com/api/v1/consent/log \ -H "Authorization: Bearer sk_live_xyz789" \ -H "Content-Type: application/json" \ -d '{ "api_key": "pk_live_abc123", "session_id": "sess_a1b2c3d4", "categories": { "necessary": true, "analytics": true, "marketing": false }, "action": "custom", "page_url": "https://example.com/products/123" }'
Yanıt 201 Created
{ "success": true, "consent_id": "<string consent ID>", "timestamp": "2026-05-31T14:23:11+03:00", "expires_at": "2026-11-27T14:23:11+03:00" }
/api/v1/heartbeat
Pageview sayacını artırır ve domain'in etkin olduğunu işaretler. SDK her sayfa açılışında bu endpoint'i bir kez çağırır.
Body Parametreleri
Yanıt
{ "success": true, "pageview_count_month": 42183, "plan_limit": 100000, "usage_percent": 42.18 }
İstek Sınırları
Her IP adresi için uygulanır. Sınır aşımında yanıt, bekleme süresini gösteren bir header ile birlikte döner.
Retry-After header'ı saniye cinsinden bekleme süresini belirtir. Burst protection için exponential backoff (1s, 2s, 4s, 8s...) önerilir. Enterprise planında özel rate limit artışı için satış ekibiyle görüşün.
HTTP Durum Kodları
Hata Yanıt Formatı
{ "success": false, "error": { "code": "INVALID_API_KEY", "message": "API key bulunamadı veya devre dışı", "details": { "field": "api_key" } } }
Olay Bildirimleri Q4 2026
Webhook desteği Q4 2026 yol haritasındadır; şu an mevcut değildir. Aşağıdaki event'ler planlanmaktadır. Duyurular için iletişime geçin.
consent.given
Kullanıcı onay verdiğinde tetiklenir
consent.rejected
Kullanıcı reddettiğinde tetiklenir
consent.updated
Tercihler değiştirildiğinde tetiklenir
scan.completed
Cookie taraması tamamlandığında tetiklenir
scan.failed
Tarama başarısız olduğunda tetiklenir
subscription.expired
Abonelik sona erdiğinde tetiklenir
pageview.limit_warning
Pageview kullanımı yüzde 80 eşiğini geçtiğinde tetiklenir
a11y.profile_used
Erişilebilirlik profili kullanıldığında tetiklenir
Aklınızdaki sorular
SDK ile API arasındaki fark nedir?
Batch endpoint var mı?
IP whitelist nasıl çalışır?
Webhook ne zaman gelecek?
Rate limit aşılırsa ne olur?
Retry-After header'ı kaç saniye beklemeniz gerektiğini belirtir. Burst protection için exponential backoff (1s, 2s, 4s, 8s...) önerilir. Enterprise planında özel rate limit yükseltilebilir.API'yi test etmek ister misiniz?
14 gün ücretsiz Pro deneme ile API key'inizi alın, kodu kopyalayın ve hemen entegrasyona başlayın.