DEVekspertiz.app

05 · PII Maskeleme Kuralları

KVKK ve veri minimizasyonu gereği partner API yanıtlarında müşteri PII bilgilerini varsayılan olarak anonimleştiriyoruz. Her partner-organizasyon çifti için ayrı bir PII modu belirleniyor.

Modlar

ModAçıklamaKullanım
NONETüm PII strip — adı, telefon, TCKN dönmez; plaka/VIN maskeliDefault. KVKK uyumlu, sözleşme gerektirmez
MASKEDKısmi — adın baş harfleri, telefonun son 4, plaka maskeliPartner sınırlı izlenebilirlik istiyorsa
FULLTam PIIYalnız özel KVKK sözleşmesi + açık rıza ile

Modu, sözleşme aşamasında partner-organizasyon bazında belirleyip admin panelimizden uygularız.

Field başına davranış

FieldNONEMASKEDFULL
vehicle.plate_masked34 ABC ***34 *** 12334 ABC 123
vehicle.vin_maskedWBA12345******1234 (chars 9–14 maskeli)aynıtam VIN
customer.fullNameyokA. Y.Ahmet Yılmaz
customer.phoneyok*******456705551234567
customer.nationalId (TCKN)yokyoktam
owner.*, seller.*, proxy.*yokmaskelitam
summary, recommendation (free-text)TC/telefon regex ile scrubaynıscrub yok
notes (eksperin nokta yorumu)TC/telefon regex ile scrubaynıscrub yok

Daima gizlenen alanlar (mod fark etmez)

Bu alanlar hiçbir modda partner'a dönmez:

  • customerId, appointmentId, authorId, reviewerId
  • revisionDraft (revize akışı iç state'i)
  • publicSlug (müşteri linkidir; partner ayrı imzalı PDF endpoint'i kullanır)
  • cancelReasonText (free-text, PII içerebilir)
  • discountProofs[] (kanıt belgeleri — müşteri yükledi)
  • policyActivations[] (müşteri sigortası bilgileri)
  • otosicilQueries (3rd party arşiv sorguları)

Daima gizlenen foto tipleri

photos[] listesinde aşağıdakiler hiçbir modda dönmez:

  • REGISTRATION (ruhsat — TCKN/adres içerir)
  • OTOSICIL_PDF (3rd party arşiv)
  • showInReport: false işaretli foto'lar

Kazara sızıntı koruması (defense-in-depth)

Free-text alanlarımız (summary, recommendation, eksperin note'u) regex ile taranır:

  • 11 ardışık rakam → *********** (TCKN deseni)
  • Türk telefon formatları → MASKED'da son 4 görünür; NONE'da tamamen ***

Bu mükemmel değil; partner content'i hassas içerikse her zaman client tarafında ikinci bir filter uygulayın.

Status filtresi

Partner API'da yalnız aşağıdaki statuslar görünür:

  • PUBLISHED — yayınlanmış rapor (default)
  • ARCHIVED — arşivlenmiş ama tarihsel referans (default)
  • CANCELLED — yalnız ?status=cancelled filtresi ile (mutabakat için)

Görünmeyenler: DRAFT, IN_REVIEW, REVISION_REQUESTED, CANCEL_REQUESTED. Bunlar in-flight, henüz hukuki olarak final değil.

Sonraki: 06 · Hata kodları.