Skip to content

Fraud Prevention Data API ​

Data API, Web SDK'nın sunucu tarafı karşılığıdır. Kararları çekmek, istatistikleri toplamak ve raporlama ve mutabakat için veri dışa aktarmak üzere kullanın — kendi sistemlerinizin üzerinde mutabık kaldığı sayıları çekin.

Temel URL ​

https://apiv1.captcha.la

Kimlik doğrulama ​

Tüm Data API istekleri, başlık olarak gönderilen Fraud Prevention uygulama kimlik bilgilerinizle doğrulanır:

X-App-Key:    YOUR_APP_KEY
X-App-Secret: YOUR_APP_SECRET

WARNING

X-App-Secret yalnızca sunucu tarafıdır. Onu asla tarayıcılara, mobil uygulamalara veya genel depolara açığa çıkarmayın. Sayfa SDK'sı yalnızca herkese açık appKey değerini kullanır.

Uç noktalar ​

Bir karar getir ​

Tek bir ziyaretin kararını getirin (ör. belirli bir ziyareti mutabık kılmak için).

bash
GET /v1/bot/verdict?cid=CID_OF_THE_VISIT
X-App-Key: YOUR_APP_KEY
X-App-Secret: YOUR_APP_SECRET

Yanıttaki data, bir BotVerdict nesnesidir:

json
{
  "code": 0,
  "data": {
    "is_bot": true,
    "score": 87,
    "level": "high",
    "action": "flag",
    "consistency": { "ok": false },
    "degraded": false
  }
}

Toplu istatistikler ​

Bir zaman aralığı boyunca kovalanmış sayımları çekin — toplamlar, bot payı ve action/level bazında dağılım — kontrol panelleri ve kalite raporları için.

bash
GET /v1/bot/stats?from=2026-06-01&to=2026-06-30
X-App-Key: YOUR_APP_KEY
X-App-Secret: YOUR_APP_SECRET
json
{
  "code": 0,
  "data": {
    "from": "2026-06-01",
    "to": "2026-06-30",
    "total": 124500,
    "bots": 18230,
    "bot_rate": 0.146,
    "by_action": { "record_only": 102100, "flag": 19800, "challenge": 2600 },
    "by_level":  { "low": 100300, "medium": 16900, "high": 6200, "critical": 1100 }
  }
}

Dışa aktarma ​

Çevrimdışı mutabakat için bir zaman aralığındaki ziyaret başına karar satırlarını dışa aktarın.

bash
GET /v1/bot/export?from=2026-06-01&to=2026-06-30&format=csv
X-App-Key: YOUR_APP_KEY
X-App-Secret: YOUR_APP_SECRET

Her satır, ziyaretin tanımlayıcısını, zaman damgasını ve karar alanlarını (is_bot, score, level, action) taşır; böylece bunu kendi günlüklerinizle birleştirebilirsiniz.

Tıklama başına mutabakat

Ücretli trafik senaryolarında, tek bir ziyaret belirli bir teslim edilmiş tıklamaya geri bağlanabilir; böylece iki taraf bunun üzerinde mutabık kalabilir. Bu, bir tıklama token'ı kullanır ve Reklam dolandırıcılığı kılavuzunda ele alınır.

Tıklama token'ı referansı (trafik sağlayıcıları için) ​

Bir trafik sağlayıcısı, kendi sunucusunda bir tıklama token'ı imzalar ve bunu hedef URL'ye ekler; böylece elde edilen ziyaretin kararı sağlayıcıya geri atfedilir. İmzalama çevrimdışı yapılır — herhangi bir API çağrısı gerekmez.

İmzalama kimlik bilgilerinizi alın ​

Panelde uygulamanızı açın → Fraud Prevention → İmzalama anahtarı oluştur. Şunları alırsınız:

  • bot_kid — genel anahtar kimliğiniz (token'a pkid olarak girer).
  • bot_hmac_secret — imzalama gizli anahtarınız, yalnızca bir kez gösterilir. Sunucu tarafında saklayın.

Token biçimi ​

ct.<base64url(payload)>.<base64url(HMAC_SHA256(body, bot_hmac_secret))>

body, JSON yükünün base64url biçimidir; imza bu body dizesi üzerinden hesaplanır.

Yük alanları ​

alangerekliaçıklama
pkidevetbot_kid değeriniz; arka uç bunu gizli anahtarınızı bulmak ve imzayı doğrulamak için kullanır
cidevetbu tıklama için benzersiz kimlik; mutabakat anahtarı. Her tıklama için yeni ve benzersiz bir değer üretin
audhayırhedef reklamverenin app_key değeri. Ayarlandığında token yalnızca o reklamverenin sayfasında kabul edilir. Herhangi bir reklamveren sayfasının kabul etmesi için boş bırakın
click_tshayırtıklamanın gerçekleştiği unix saniye cinsinden zaman
exphayırunix saniye cinsinden son kullanma zamanı; süresi dolmuş token'lar reddedilir

Bağlantıya ekleyin ​

Token'ı reklamverenin hedef URL'sine _ctk sorgu parametresi olarak ekleyin:

https://advertiser.example/lp?_ctk=ct.<...>.<...>

Reklamverenin SDK'sı _ctk değerini otomatik olarak okur (tokenParam ile yapılandırılabilir). Bir cid yalnızca bir kez talep edilebilir (tekrar saldırısına karşı korumalı). Bkz. Güvenlik modeli.

Örnek (sözde kod) ​

js
const payload = { pkid, cid, aud: advertiserAppKey, click_ts: now, exp: now + 900 }
const body  = base64url(JSON.stringify(payload))
const sig   = base64url(hmacSha256(body, botHmacSecret))
const token = `ct.${body}.${sig}`
const url   = `${destination}?_ctk=${encodeURIComponent(token)}`

Sonraki adımlar ​

MIT-licensed examples · CaptchaLa is operated independently