POST /v1/verify
Kimlik bilgisi eşleşme isteğini oluşturur. verified alanı, gönderdiğiniz bilgilerin eşleşip eşleşmediğini gösterir. mode alanına göre sonuç asenkron işleme ile (önerilen) veya aynı HTTP yanıtında döner.
Sync / async karar rehberi
Operasyon süresi doğası gereği değişkendir. Üretim entegrasyonunda async varsayılan olmalıdır: talep oluştur → UUID al → webhook bekle → gerekirse polling ile yedek kontrol.
- Webhook alabiliyor musunuz? →
mode: async+ webhook (önerilen). - Webhook alamıyorsanız → async + polling (önerilen aralık: 2, 4, 8, 16 sn; toplam ~30 sn).
- Cevabı aynı HTTP isteğinde almak zorundaysanız →
mode: sync. Süreç uzadığında istemci zaman aşımı riski vardır; istemci zaman aşımı süresini en az 30–60 sn tutun. Üretimde mümkünse async tercih edin.
İstek gövdesi
| Alan | Tip | Zorunlu | Açıklama |
|---|---|---|---|
| id_number | string (11 hane) | Evet | T.C. kimlik numarası; yalnızca rakam, checksum geçerli olmalı. |
| first_name | string | Evet | Ad (max 100 karakter). |
| last_name | string | Evet | Soyad (max 100 karakter). |
| birth_date | string | Evet | Doğum tarihi YYYY-MM-DD formatında. |
| mode | string | Hayır | sync veya async. Varsayılan: async. |
| skip_cache | boolean | Hayır | Production’da önbelleği atla; varsayılan false. |
| reference_id | string | Hayır | Kendi sisteminizdeki referans (max 255); yanıtta geri döner. |
reference_id kullanımı
Kendi sisteminizdeki sipariş, başvuru veya kullanıcı kimliğini reference_id ile gönderin; yanıt, webhook ve polling sonuçlarında aynı değer geri döner. Böylece tcdogrula request_id ile kendi kayıtlarınızı eşleştirebilirsiniz.
Senkron yanıt örneği (200)
{
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"reference_id": "order-123",
"status": "completed",
"result": {
"verified": true,
"from_cache": false,
"cached_at": null,
"processed_at": "2026-03-31T12:00:00+00:00"
},
"credits": {
"used": 1,
"remaining": 499
}
}credits alanı production anahtarlarında döner; sandbox’ta bulunmaz.
Asenkron kabul yanıtı (202)
{
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"reference_id": null,
"status": "processing",
"message": "Doğrulama talebi alındı ve işleniyor."
}Asenkron mod + önbellekten sonuç (200)
mode: async ile gönderilen isteklerde önbellekte geçerli sonuç varsa yanıt 200 OK ile anında döner; status alanı completed olur ve sonuç bilgisi yanıtta yer alır. Önbellekte sonuç yoksa 202 ve processing döner.
{
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"reference_id": "order-123",
"status": "completed",
"result": {
"verified": true,
"from_cache": true,
"cached_at": "2026-03-28T08:00:00+00:00",
"processed_at": "2026-03-31T12:00:00+00:00"
},
"credits": {
"used": 1,
"remaining": 499
}
}Yanıt başlıkları
X-Request-Id— İsteğe ait benzersiz kimlik (UUID).X-Credits-Remaining— Production’da kalan kredi sayısı; sandbox’taunlimitedolabilir.