Olumsuz Medya Taraması
Bir kişiyi ya da kurumu olumsuz haber içeriğine karşı tarar. Yaptırım taramasından ayrı bir yükümlülüktür: yaptırım listeleri resmî, olumsuz medya ise açık kaynak sinyalidir ve yorum gerektirir.
POST /api/v1/sanction/intelligence/adverse-mediaKimlik doğrulama ve jeton alma: Yaptırım Taraması API. Gereken yetki: sanction:view_results.
İstek
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
entityName | string | ✅ | Taranacak kişi/kurum adı |
entityType | string | — | Kişi mi kurum mu |
tckn · vkn | string | — | Tekilleştirici kimlik numaraları — yanlış-pozitifi ciddi düşürür |
countryCode | string | — | ISO 3166-1 alpha-2 |
limit | number | — | Dönecek en fazla kayıt |
onlyActive | boolean | — | Yalnız güncel/aktif kayıtlar |
customerReference | string | — | Kendi kayıt kimliğiniz (denetim izine yazılır) |
productChannel | string | — | Hangi üründen geldiği (raporlama) |
Taze arama zorlayamazsınız. Eski forceRefresh alanı bilinçli olarak kaldırıldı ve numarası rezerve edildi: her istekte yeniden arama, yeniden-tarama aralığını atlar, her çağrıda dış sağlayıcıya çıkar ve sağlayıcıyı hız sınırına sokarak devre kesiciyi açtırırdı. Tazelik politikayla yönetilir (rescreenIntervalDays), istekle değil.
Karar semantiği
Yanıttaki decision beş değer alır ve ikisi "temiz" anlamına gelmez:
allow ile not_performed aynı şey değildir: birincisi "baktık, temiz", ikincisi "bakamadık". İkisini aynı kovaya atmak, denetimde savunamayacağınız bir uyum beyanı üretir — sağlayıcı erişilemezken müşteriyi temiz geçirmiş olursunuz.decision | Anlamı | Sizin yapmanız gereken |
|---|---|---|
allow | Kontrol koştu, eşleşme yok | Akışa devam |
observe | Zayıf/düşük şiddetli sinyal | Kaydedin, izleyin |
review | İnceleme gerektiren eşleşme | Manuel karar |
not_performed | Kontrol koşmadı | Temiz saymayın — yeniden deneyin ya da elle bakın |
unavailable | Sağlayıcıya erişilemedi | Temiz saymayın — muhafazakâr davranın |
Yanıt
{
"success": true,
"requestId": "am_01J9…",
"matched": true,
"riskScore": 72,
"decision": "review",
"latencyMs": 340,
"hits": [
{
"recordId": "amh_01J9…",
"entityName": "Örnek A.Ş.",
"headline": "…",
"sourceName": "…",
"sourceUrl": "https://…",
"publishedAt": "2026-03-11T08:00:00Z",
"severity": "high",
"riskScore": 72,
"categories": ["fraud"],
"matchBasis": "name+vkn",
"publisher": "…",
"publisherDomain": "…",
"language": "tr",
"capturedAt": "2026-03-11T09:14:00Z",
"firstSeenAt": "2026-03-11T09:14:00Z",
"snapshotTextHash": "sha256:…",
"providerCode": "…"
}
],
"coverageJson": "{…}"
}Kanıt alanları
Her kayıt bir anlık görüntü kanıtı taşır: capturedAt, firstSeenAt, snapshotTextHash, publisher, publisherDomain, language. Bunlar, kaynak haber sonradan silinse bile kararınızın neye dayandığını denetimde gösterebilmeniz içindir — sourceUrl tek başına yeterli bir kanıt değildir.
Kapsam manifestosu
coverageJson, taramanın neyi kapsadığını söyler (şema sanction.adverse_media.coverage.v1).
Uyum beyanınızı (ör. KYC kapsam satırı) yalnızca bu alandan üretin, sabit bir metinden değil. Alan boş ya da çözülemez geldiyse muhafazakâr sabite düşün — "olumsuz medya tarandı" demeyin.
Politika
Taramanın kapsamı merchant politikasıyla belirlenir:
GET /api/v1/sanction/policy/adverse-media| Alan | Ne yapar |
|---|---|
enabled | Tarama açık mı |
categoriesInScope | Hangi kategoriler kapsamda |
minimumSeverity | Alt şiddet eşiği |
languages · sourceCountries | Dil ve kaynak ülke kapsamı |
publisherAllowlist · publisherBlocklist | Yayıncı beyaz/kara listesi |
lookbackDays | Geriye dönük tarama penceresi |
rescreenIntervalDays | Yeniden tarama aralığı |
stalenessWarnDays | Bayatlık uyarı eşiği |
unclassifiedHandling | Sınıflanamayan kayıt REVIEW mı EXCLUDE mı |
continuousMonitoringEnabled | Sürekli izleme açık mı |
queryRiskTerms | Sorguya eklenen risk terimleri — boş bırakılırsa geniş tarama yapılır ve bu kapsam notunda beyan edilir |
Politikayı okumak entegrasyon yüzeyindedir; yazmak panelden yapılır. Kapsamı daralttığınızda (dil, kategori, yayıncı) bunun uyum beyanınıza yansıdığını unutmayın — coverageJson daralmayı da taşır.