Skip to navigation

Service Availabilities By Insurance Company

Service Availabilities By Insurance Company

Tek bir sigorta şirketinin servis durumu kayıtlarını sayfalı döndürür.

Uç Nokta (Endpoint)

GET {{baseUrl}}/api/ServiceAvailabilities/companies/:insuranceCompanyId


Kullanım

Bu servis, tek bir sigorta şirketinin servis durumlarıyla ilgilenen tüketiciler için kullanılır. Önerilen akış:

  1. Authentication Login servisinden token alınır.
  2. GET /api/InsuranceCompanies/MyInsuranceCompanies ile yetkili olunan şirketlerin Id değerleri alınır.
  3. Bu servis ilgili insuranceCompanyId ile çağrılır ve page değeri HasNextPage false olana kadar artırılır.

Kayıtlar servis adı → operasyon adı → ürün adı sırasına göre sıralanır; eşitlikte kayıt kimliği devreye girdiği için sıralama sayfalar arasında tutarlıdır.

💡 Bilinmeyen bir şirket kimliği hata değildir; Items boş, TotalCount sıfır döner.

⚠️ pageSize 1–200 aralığı dışındaysa istek 400 ile sonuçlanır.


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.

BaşlıkTürZorunluAçıklama
Authorizationstring✅Bearer <token> biçiminde erişim token’ı.

Token’ın Read yetkisini taşıması gerekir.


İstek Parametreleri (Path Variables)

ParametreTürZorunluMinMaxAçıklama
:insuranceCompanyIdinteger (int32)✅12147483647Servis durumları istenen sigorta şirketinin kimliği.

İstek Parametreleri (Query Parameters)

ParametreTürZorunluMinMaxAçıklama
pageinteger (int32)—121474836471 tabanlı sayfa numarası. Varsayılan 1.
pageSizeinteger (int32)—1200Sayfa başına kayıt sayısı. Varsayılan ve üst sınır 200; aralık dışı değerler 400 döner.

Örnek İstek:

GET {{baseUrl}}/api/ServiceAvailabilities/companies/12?page=1&pageSize=1
Authorization: Bearer <token>

Başarılı Yanıt (200 OK)

AlanTürAçıklama
TotalCountintegerToplam kayıt sayısı (tüm sayfalar).
PageintegerDönen sayfa numarası (1 tabanlı).
SizeintegerUygulanan sayfa boyutu.
TotalPageintegerToplam sayfa sayısı.
HasNextPagebooleanSonraki sayfanın olup olmadığı.
HasPreviousPagebooleanÖnceki sayfanın olup olmadığı.
Itemsarrayİstenen sayfanın kayıtları.

Items nesnesi:

AlanTürAçıklama
InsuranceCompanyIdintegerKaydın sigorta şirketi kimliği.
ProductIdinteger | nullKaydın ürün kimliği. Ürün bağımsız operasyonlarda null.
ServiceOperationIdintegerKaydın servis operasyonu kimliği.
OutsourceProcessIdinteger | nullKaydın outsource süreci kimliği. Outsource olmayan operasyonlarda null; aynı operasyon farklı süreçler için ayrı kayıt üretir.
InsuranceCompanyNamestringSigorta şirketi adı.
ProductNamestringÜrün adı. Ürün bağımsız operasyonlarda Tüm Ürünler.
ServiceNamestringOperasyonun ait olduğu servis adı.
ServiceOperationNamestringServis operasyonu adı.
OutsourceProcessNamestring | nullOutsource süreci adı. Outsource olmayan operasyonlarda null.
ExcludedProductIdsarrayÜrün bağımsız operasyonun kapsamı dışında bırakılan ürün kimlikleri. Ürünlü kayıtlarda boş dizi.
StatusstringGüncel statü: Active, AutoDisabled, ManualDisabled ya da Unknown.
StatusReasonstring | nullSon statü değişikliğinin gerekçesi. Hiç değişiklik olmadıysa null.
StatusChangedAtdatetime | nullSon statü değişikliğinin zamanı. Hiç değişiklik olmadıysa null.
LastSuccessDatedatetime | nullGözlemlenen son başarılı işlemin zamanı. Henüz gözlem yoksa null.

Örnek Başarılı Yanıt:

{
"TotalCount": 25,
"Page": 1,
"Size": 1,
"TotalPage": 25,
"HasNextPage": true,
"HasPreviousPage": false,
"Items": [
{
"InsuranceCompanyId": 12,
"ProductId": 27,
"ServiceOperationId": 118,
"OutsourceProcessId": null,
"InsuranceCompanyName": "Örnek Sigorta",
"ProductName": "Kasko",
"ServiceName": "ProposalService",
"ServiceOperationName": "Teklif",
"OutsourceProcessName": null,
"ExcludedProductIds": [],
"Status": "ManualDisabled",
"StatusReason": "Sigorta şirketi bakım bildirimi.",
"StatusChangedAt": "2026-08-09T18:40:00+03:00",
"LastSuccessDate": "2026-08-09T18:02:51.87+03:00"
}
]
}

Hatalı Yanıt (400 Bad Request)

Hatalar ApiResponse zarfıyla döner:

AlanTürAçıklama
StatusbooleanHatalarda her zaman false.
CodestringHata kodu. Sayfalama doğrulamalarında Validation.General.
MessagestringHata açıklaması.
Responsearray | nullDoğrulama hatalarında { Field, Message } listesi; diğer hatalarda null.

Sayfalama doğrulama hatası — page 1’den küçük ya da pageSize 1–200 aralığı dışında olduğunda:

FieldMessage
PagePage must be greater than or equal to 1.
PageSizePageSize must be between 1 and 200.
{
"Status": false,
"Code": "Validation.General",
"Message": "One or more validation errors occurred",
"Response": [
{
"Field": "PageSize",
"Message": "PageSize must be between 1 and 200."
}
]
}

Geçersiz şirket kimliği — insuranceCompanyId sıfır ya da negatif gönderildiğinde:

{
"Status": false,
"Code": "ServiceAvailability.InvalidInsuranceCompanyId",
"Message": "Invalid insuranceCompanyId. InsuranceCompanyId must be greater than zero.",
"Response": null
}

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: true başlığı bulunur. Bu durumda POST /api/authentication/refreshtoken ile yeni token alınmalıdır.

Authentication

AuthorizationBearer

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

Path parameters

insuranceCompanyIdintegerRequired

Servis durumları istenen sigorta şirketinin kimliği.

Headers

AuthorizationstringOptional

Query parameters

pageintegerOptional

1 tabanlı sayfa numarası.

pageSizeintegerOptional

Sayfa başına kayıt sayısı.

Response headers

Content-TypestringOptional

Response

OK

Errors

400
Bad Request Error