Push Notification API

InsurGateway, platforma yapacağı tüm bildirimleri tek bir endpoint üzerinden gönderir. Bildirim ayrımı RequestObject.NotificationType alanı ile yapılır.

Endpointler

AlanDeğer
HTTP MethodPOST
Path/PushNotification
Content-Typeapplication/json

InsurGateway, platform tarafından bildirilen Base URL’in sonuna /PushNotification ekleyerek tam URL’i oluşturur.


Header’lar

Content-Type: application/json
x-api-key: <platform tarafından üretilen API key>
Authorization: <opsiyonel; platform tarafından bildirildiyse>

Request Yapısı

{
"ReferanceNo": "string",
"SubReferanceNo": "string",
"RequestKeyValueSet": null,
"RequestObject": {
"NotificationType": 0,
"Payload": "<serialize edilmiş JSON string>"
}
}
AlanTipAçıklama
ReferanceNostringİş referans numarası. Aynı bildirim retry’da aynı değerle gönderilir; idempotency anahtarıdır.
SubReferanceNostringHTTP çağrısına özel ~30 karakterlik benzersiz alt referans (loglama).
RequestKeyValueSetarray|nullKullanılmaz.
NotificationTypeshortBildirim tipi: 0, 1, 2, 3, 4, 6, 7. (5 yoktur.)
Payloadstringİlgili tipin payload’ı JSON string olarak gönderilir; iki aşamalı parse gerektirir.

NotificationType Değerleri


Response Yapısı

Platformun döneceği cevap, HTTP 200 OK ile aşağıdaki yapıda olmalıdır:

{
"ResultStatus": {
"Status": "Success",
"Explanation": null
},
"Result": null
}
AlanAçıklama
ResultStatus.Status"Success", "Error", "InProgress", "Info", "Warning". Yalnızca "Success" başarılı kabul edilir; diğerleri retry tetikler.
ResultStatus.ExplanationHata açıklaması; loglanır.
ResultBu serviste null.

HTTP Durum Kodları

HTTP KodCevap GövdesiSonuçRetry?
200Status="Success"BaşarıHayır
200Status≠"Success"HataEvet
3xx/4xx/5xxHataEvet
Bağlantı kopması/timeoutHataEvet

Retry

Bekleme süreleri: 3 sn → 10 sn → 1 dk → 1 saat (≥4. retry)

Maksimum retry sayıları (orijinal hariç):

NotificationTypeMaksimum RetryToplam Deneme
3 OutgoingLogPayload56
6 BulkPolicyTransfer56
7 AgentDisabled56
4 IncomingLogPayload23
0, 1, 21011

Son retry’da HTTP başlığında IsLastAttemptToReDelivery=true gönderilir.