Skip to navigation

Made Batch Endorsement

Toplu Zeyil Kaydet

Endpoint Bilgileri

AlanDeğer
MethodPOST
URL{{baseUrl}}/api/Offline/jobs/{jobId}/Endorsements/batch
Content-Typeapplication/json
YetkilendirmeBearer Token + Create politikası

Sigorta şirketinin, acentenin toplu zeyil talebine karşılık kesilen zeyil bilgilerini kaydetmesi için kullanılır.

Başarılı istekte iş Toplu Zeyil Gerçekleşti (BatchEndorsementMade) aşamasına geçer, zeyil ve prim bilgileri platform servisine yazılır ve aksiyon kaydı oluşturulur.

İşin aşaması Toplu Zeyil İsteği (BatchEndorsementRequested) olmalıdır; aksi halde geçiş reddedilir.


Route Parametreleri

ParametreTipZorunluAçıklama
jobIdintegerEvetZeyilleri kaydedilecek işin Id bilgisi

Kimlik Doğrulama

Geçerli bir bearer token gerektirir. Token şunları içermelidir:

  • Tanınan bir rol (InsuranceCompanyAPIUser, InsuranceCompanyAPIAdmin veya Supervizor)
  • İlgili route için Create yetkisi
  • Geçerli bir sigorta şirketi ataması
  • Çözümlenebilir bir kullanıcı kimliği

InsuranceCompanyAPIUser yalnızca kendi sahibi olduğu işleri işleyebilir. InsuranceCompanyAPIAdmin ve Supervizor şirketin tüm işlerine erişebilir.


İstek Modeli — MakeBatchEndorsementRequest

AlanTipZorunluAçıklamaDoğrulama
ProductIdintegerEvetZeyilin ait olduğu ürün IdZorunlu: "Product ID is required."
0’dan büyük olmalı: "Product ID must be greater than zero."
MessagestringHayırToplu zeyile iliştirilen notMaks. 500 karakter: "Message cannot exceed 500 characters."
PremiumsBatchEndorsementEntryRequest[]EvetZeyil prim girişleriZorunlu: "Premium list is required."
Boş olamaz: "Premium list cannot be empty."

JobId gövdeden alınmaz ([JsonIgnore]); route parametresinden set edilir. 0’dan büyük olmalıdır: "JobId must be greater than zero."

Zeyil Girişi — BatchEndorsementEntryRequest

AlanTipZorunluAçıklamaDoğrulama
InsuranceCompanyPolicyNumberstringEvetSigorta şirketi poliçe numarasıBoş olamaz: "Insurance company policy number is required."
InsuranceCompanyEndorsementNumberstringEvetSigorta şirketi zeyil numarasıBoş olamaz: "Insurance company endorsement number is required."
InsuranceCompanyProposalNumberstringHayırSigorta şirketi teklif numarası—
RenewalNumberintegerEvetYenileme numarası0’dan büyük veya eşit olmalı: "Renewal number must be greater than or equal to 0."
GrossPremiumdecimalEvetBrüt prim0’dan büyük olmalı: "GrossPremium must be greater than 0."
NetPremiumdecimalEvetNet prim0’dan büyük olmalı: "NetPremium must be greater than 0."
CommisiondecimalEvetKomisyon (alan adı tek s ile yazılır)0’dan büyük veya eşit olmalı: "Commision must be greater than or equal to 0."
PaymentOptionTypeintegerEvetÖdeme tipiTanımlı bir değer olmalı: "PaymentOptionType must be a valid payment type."
CurrencyTypeintegerEvetPara birimiTanımlı bir değer olmalı: "CurrencyType must be a valid currency type."

Ödeme Tipi Değerleri

DeğerÖdeme Tipi
1Hesaptan
2Kredi Kartı
3Tümü

Para Birimi Değerleri

DeğerPara Birimi
1TL
2Dolar
3Euro
4İngiliz Sterlini
5Japon Yeni
6İsviçre Frangı
7İsveç Kronu

İş Kuralları

State geçişi sırasında sırasıyla aşağıdaki kontroller yapılır:

  1. İş Toplu Zeyil İsteği aşamasında olmalıdır.
  2. İsteği yapan kullanıcı sigorta şirketi kullanıcı eşleşmesinde kayıtlı olmalıdır.
  3. Teklif + ürün için PolicyEndorsement operasyon kaydı bulunmalıdır ve daha önce başarıyla tamamlanmamış olmalıdır.
  4. Zeyil ve prim bilgileri platform servisine yazılabilmelidir.

Geri alma davranışı: 4. kural başarısız olursa OperationWatch başarısız işaretlenir ve iş Toplu Zeyil İsteği aşamasına geri döndürülür.


Yanıt

204 No Content — Başarılı Yanıt

Gövde boştur.


Hata Senaryoları

400 Bad Request — Doğrulama Hatası

İstek modeli doğrulamadan geçemediğinde döner. Hatalı alanlar Response içinde listelenir.

{
"Status": false,
"Code": "Validation.General",
"Message": "One or more validation errors occurred",
"Response": [
{
"Field": "ProductId",
"Message": "Product ID is required."
},
{
"Field": "Premiums",
"Message": "Premium list cannot be empty."
}
]
}

403 Forbidden — Geçerli Sigorta Şirketi Ataması Bulunamadı

Token’da geçerli bir sigorta şirketi ataması bulunmadığında döner.

{
"Status": false,
"Code": "OfflineUsers.InsuranceCompanyNotFound",
"Message": "No valid insurance company assignment found in token.",
"Response": null
}

403 Forbidden — Kullanıcı Kimliği Çözümlenemedi

Token’dan kullanıcı kimliği okunamadığında döner.

{
"Status": false,
"Code": "OfflineUsers.UserIdentityNotResolved",
"Message": "User identity could not be resolved from token.",
"Response": null
}

403 Forbidden — İşe Erişim Reddedildi

İş, çağıranın sahipliğinde değilse döner.

{
"Status": false,
"Code": "OfflineJobs.JobOwnershipDenied",
"Message": "You do not have permission to access this job.",
"Response": null
}

403 Forbidden — Rol veya Yetki Yetersiz

Kullanıcı tanınan rollerden birine sahip değilse ya da Create yetkisi yoksa döner. Gövde boştur.


401 Unauthorized — Token Yok veya Geçersiz

Token gönderilmediğinde, geçersiz olduğunda veya süresi dolduğunda döner. Gövde boştur.


404 Not Found — İş Bulunamadı

Belirtilen jobId ile bir iş bulunamadığında döner.

{
"Status": false,
"Code": "OfflineJobs.JobNotFound",
"Message": "No job found for the requested JobId: 100931.",
"Response": null
}

500 Internal Server Error — İş Kuralı İhlali

İş uygun aşamada değilse, kullanıcının yetkisi yoksa, operasyon kaydı bulunamazsa veya zeyil bilgileri platform servisine yazılamazsa döner. Message alanı iş kuralı hatasının detayını içerir.

{
"Status": false,
"Code": "OfflineEndorsements.BatchEndorsementFailed",
"Message": "Batch endorsement failed: Job Id : 100931 geçerli durumu Toplu Zeyil İsteği'nde olmalıdır.",
"Response": null
}

500 Internal Server Error — Beklenmeyen Hata

Geçiş sırasında iş kuralı dışında bir hata oluştuğunda döner.

{
"Status": false,
"Code": "JobState.TransitionError",
"Message": "An unexpected error occurred during job state transition.",
"Response": null
}

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

jobIdintegerRequired

Request

This endpoint expects an object.

Response

No Content

Errors

400
Bad Request Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error