Transition Service Availability Status
Transition Service Availability Status
Tek bir servis durumu kaydına statü geçişi uygular. Otomatik izleme kaynakları için tasarlanmıştır; geçişin uygulanıp uygulanmadığı yanıt gövdesinde bildirilir.
Uç Nokta (Endpoint)
POST {{baseUrl}}/api/ServiceAvailabilities/transitions
Content-Type: application/json
Kullanım
Bu servis, bir sigorta şirketi servisinde genel bir sorun tespit eden ya da sorunun giderildiğini gören otomatik kaynakların statüyü güncellemesi için kullanılır. Önerilen akış:
Authentication LoginservisindenUpdateyetkili bir token alınır.- Kararı üreten olay için tekil bir
CorrelationIdbelirlenir. - Bu servis hedef statü (
Activeya daAutoDisabled) ve kayıt kimliğiyle çağrılır. - Yanıttaki
AppliedveAlreadyProcessedalanları okunur;Applied=falseiseDetailgerekçeyi taşır.
Idempotency: CorrelationId işlenen geçişlerin geçmişine yazılır. Aynı CorrelationId ile gelen tekrar istekler uygulanmaz; yanıt AlreadyProcessed = true ile döner. Böylece kaynak tarafındaki retry’lar statüyü ileri geri oynatmaz.
İzin verilen geçişler:
⚠️ Uygulanmayan geçiş hata değildir:
200 OKileApplied=falsedöner. İstemci yalnızca HTTP durum koduna bakarak geçişin uygulandığını varsaymamalıdır.
💡 Kayıt kimliği dört alanın birleşimidir:
InsuranceCompanyId+ServiceOperationId+ProductId+OutsourceProcessId. DeğerleriGET /api/ServiceAvailabilitiesyanıtındaki kayıttan birebir alın; ürün bağımsız kayıtlardaProductId, outsource olmayan kayıtlardaOutsourceProcessIdnullgönderilir.
Kimlik Doğrulama
Bu uç nokta geçerli bir JWT erişim token’ı gerektirir. Token, Authentication Login servisinden alınır ve Authorization başlığında gönderilir.
Token’ın Update yetkisini taşıması gerekir. Yalnızca listeleme (Read) yetkisi olan tüketiciler statü değiştiremez; istek 403 Forbidden ile sonuçlanır.
İstek Gövdesi
ServiceStatusTransitionRequest
Örnek İstek:
İstek Gövdesi Şeması (JSON Schema)
💡 Şemada
additionalProperties: falsebilinçli olarak yoktur: API bilinmeyen alanları yok sayar, isteği reddetmez.
Başarılı Yanıt (200 OK)
İstek işlendiğinde HTTP 200 OK döner; geçişin uygulanıp uygulanmadığı gövdede bildirilir.
Uygulanmama gerekçeleri (Applied = false):
Örnek Başarılı Yanıt (geçiş uygulandı):
Örnek Başarılı Yanıt (tekrar istek):
Hatalı Yanıt (400 Bad Request)
Alan doğrulaması başarısız olduğunda ApiResponse zarfı içinde alan bazlı hata listesi döner.
Alan doğrulama mesajları:
Örnek Hatalı Yanıt:
⚠️ Model binding hataları (bozuk JSON, sayısal alana metin) doğrulamadan önce oluşur ve
ApiResponsezarfı yerine farklı bir gövdeyle400döner.
Hatalı Yanıt (401 Unauthorized)
Token gönderilmediğinde, geçersiz olduğunda veya süresi dolduğunda HTTP 401 Unauthorized döner. Yanıt gövdesi boştur.
💡 Token’ın süresi dolduysa yanıtta
Token-Expired: truebaşlığı bulunur. Bu durumdaPOST /api/authentication/refreshtokenile yeni token alınmalıdır.
Hatalı Yanıt (403 Forbidden)
Token geçerli olduğu hâlde Update yetkisini taşımadığında HTTP 403 Forbidden döner. Yanıt gövdesi boştur.
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
