Geliştiriciler
Bir endpoint, bir webhook.
TC kimlik doğrulamayı ürününüze eklemek bir öğleden sonranızı alır. Talebi gönderin, sonucu imzalı webhook ile alın; doğrulamanın kendisiyle hiç uğraşmayın.
- Endpoint
- 1
- Sandbox
- Sınırsız
- Kurulum
- SDK yok
curl "https://api.kimlikapi.com/v1/verify" \
-X POST \
-H "Authorization: Bearer test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"id_number": "10000000146",
"first_name": "Test",
"last_name": "Kullanici",
"birth_date": "1990-01-15",
"mode": "async",
"reference_id": "user_42"
}'Üç adımda canlıda
Sandbox'tan canlıya, aynı kodla.
Önce sandbox anahtarıyla senaryoları deneyin; hazır olduğunuzda yalnızca anahtarı değiştirin.
- 01
Anahtarınızı alın
Panelde bir uygulama oluşturun. Sandbox anahtarları
test_, canlı anahtarlarlive_ile başlar; her istekteAuthorization: Bearerbaşlığıyla gönderilir. - 02
Talebi gönderin
POST /v1/verifyçağrısınımode: asyncile yapın. Yanıt anında202ve birrequest_iddöner; kullanıcınız akışına devam eder. - 03
Sonucu alın
Sonuç hazır olunca uygulamanıza tanımladığınız adrese imzalı bir webhook gelir. Webhook kullanamıyorsanız
GET /v1/requests/{id}ile sorgulayın.
Async tasarım
Sonucu beklemeyin, haber alın.
Canlı doğrulamalar çoğunlukla 1–2 dakikada sonuçlanır; yoğun anlarda bu süre uzayabilir. Bu yüzden API async çalışacak şekilde tasarlandı.
- Doğrulamayı kayıt formunuzun şartı yapmayın. Kullanıcıyı içeri alın, yalnızca doğrulanmış kimlik gerektiren adımları sonuç gelene kadar kilitli tutun.
- Daha önce doğrulanmış bilgiler önbellekten anında,
200ile döner. mode: synchâlâ kabul edilir ama önerilmez: en fazla 90 saniye bekler, sonuç gelmezse istek async olarak sürer ve202döner.- Kredi yalnızca eşleşme veya eşleşmeme sonucu üreten sorgularda düşer;
failedtalepler ücretsizdir.
Talebin yaşam döngüsü
- processing
Talep alındı, 202 ve request_id döndü. Sonuç hazırlanıyor.
- completed
Sonuç hazır: verified true veya false. Webhook gönderildi, kredi düştü.
- failed
Sonuç üretilemedi. Kredi düşmez; talebi yeniden gönderebilirsiniz.
Webhook güvenliği
Her bildirim imzalı.
Webhook gövdesi, uygulamanızın gizli anahtarıyla HMAC-SHA256 olarak imzalanır ve X-TCDogrula-Signature başlığında gelir. Gövdeyi işlemeden önce imzayı doğrulayın; bildirimde kimlik verisi bulunmaz.
Route::post('/webhooks/kimlikapi', function (Request $request) {
$payload = $request->getContent();
$secret = config('services.kimlikapi.secret');
$expected = 'sha256='.hash_hmac('sha256', $payload, $secret);
$received = (string) $request->header('X-TCDogrula-Signature');
abort_unless(hash_equals($expected, $received), 401);
$event = json_decode($payload, true);
// verification.completed: data.verified true | false
// verification.failed: sonuç yok, kredi düşmedi
VerificationResult::record($event);
return response()->noContent();
});Sandbox
Her senaryoyu önceden görün.
Sandbox sınırsız ve ücretsizdir; sabit kimlik numaralarıyla eşleşme, eşleşmeme, gecikme ve hata durumlarını gerçek veri kullanmadan test edersiniz.
- 10000000146verified: trueEşleşme
- 30000000328verified: falseEşleşme yok
- 50000000500async gecikmeKuyrukta işlenir
- 60000000646failedHata senaryosu
AI ile entegrasyon
Asistanınız da dokümanı okusun.
Kodlama asistanınıza API anahtarı vermeden entegrasyon bağlamı sağlayın.
Dokümantasyon
İhtiyacınız olan her şey
API, uygulama başına dakikada 60 istekle sınırlıdır. Kimlik API'nin NVİ/KPS ile resmî ortaklığı veya yetkilendirmesi yoktur; resmî T.C. / KPS API'si değildir.