Araç Kataloğu

Araç kataloğunu sayfalı döner. Varsayılan olarak yalnızca güncel TSB listesinde yer alan **aktif** araçlar döner; `includeDeactive=true` verildiğinde listeden düşmüş (15 yıldan eski, `IsActive=false`) araçlar da dahil edilir. `brandCode` verildiğinde yalnızca ilgili markanın araçları döner. ## Kullanım - Tek istekte en fazla **1000** kayıt döner; daha büyük `pageSize` istekleri sunucuda 1000'e indirilir. - Tüm kataloğu çekmek için `page` değerini `Data` boş dönene ya da `Page * PageSize >= TotalCount` olana kadar artırın (≈27.800 kayıt / 28 sayfa). - Sayfalar tekil `Id` anahtarına göre sıralanır; sayfalar arasında kayıt kayması/yinelenmesi olmaz. - Eski model yılları için de kasko değeri sunması gereken tüketiciler `includeDeactive=true` kullanmalıdır. - Tam senkronu tekrarlamadan önce `GET /api/VehicleCatalogs/meta` ile `Version` karşılaştırması yapın. ## Sürüm Bazlı Delta (version parametresi) `version` verildiğinde tam liste yerine **yalnızca o sürüme ait değişiklikler** döner: sürüm geçmişindeki bir önceki sürümden istenen sürüme kadar olan pencerede **son kez** değişen kayıtlar. Pasifleşen kayıtlar `IsActive=false` olarak `includeDeactive`'den **bağımsız** dahil edilir. Bir kayıt sonraki bir sürümde tekrar değiştiyse yalnızca o sonraki sürümün yanıtında görünür — sürümler sırayla çekildiğinde her kayıt en fazla bir kez, güncel haliyle gelir. Sürüm geçmişinde bulunmayan bir `version` istenirse **400 Bad Request** döner. Yeni bir sürüm oluştuğunda aboneliği tanımlı platformlara **VehicleCatalogChange** push bildirimi gönderilir (bkz. Push Notifications → VehicleCatalogChange Notification); bildirimdeki `Version` değeri doğrudan bu ucun `version` parametresinde kullanılır. **Tüketici delta akışı:** 1. `GET /api/VehicleCatalogs/versions` ile sürüm listesini alın. 2. Elinizdeki sürümü listede bulun; **sonrasındaki** sürümleri sırayla `?version=<hash>` ile çekin. 3. Dönen kayıtları `Id` ile kendi tarafınıza upsert edin.

Authentication

AuthorizationBearer

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

Query parameters

pageintegerOptional>=1Defaults to 1

1 tabanlı sayfa numarası. Varsayılan: 1.

pageSizeintegerOptional1-1000Defaults to 1000

Sayfa başına kayıt sayısı. Varsayılan ve üst sınır 1000; daha büyük istekler sunucuda 1000’e indirilir.

brandCodeintegerOptional

Marka kodu filtresi (bkz. GET /api/VehicleCatalogs/brands). Verilmezse tüm markalar döner.

includeDeactivebooleanOptionalDefaults to false

true verildiğinde güncel TSB listesinden düşmüş pasif (IsActive=false) araçlar da dahil edilir. Varsayılan: false (yalnızca aktif araçlar).

versionstringOptional

Değişiklikleri istenen katalog sürümü (bkz. GET /api/VehicleCatalogs/versions). Geçmişte bulunamazsa 400 döner.

Response

Başarılı. Katalog sürümü, sayfa bilgileri ve araç listesi döner.

VersionstringOptional

Katalog sürümü (son başarılı senkronun hash’i). Katalog değişmedikçe değişmez; meta ucundaki Version ile aynıdır.

PageintegerOptional

Dönen sayfa numarası (1 tabanlı).

PageSizeintegerOptional

Uygulanan sayfa boyutu (sunucu üst sınıra indirmiş olabilir).

TotalCountlongOptional

Filtreye uyan toplam kayıt sayısı (tüm sayfalar).

Datalist of objectsOptional

İstenen sayfanın araç kayıtları; tekil Id anahtarına göre sıralıdır.

Errors

400
Bad Request Error
401
Unauthorized Error