Ürünleri toplu güncelle
PUT /sapigw/suppliers/{supplierId}/v2/products — PIM API · Ürünler
Ürünleri toplu aktar ile aynı işlemi yapar; aynı gövdeyi
PUT ile göndermek isteyen istemciler içindir. Var olan ürünler SKU/barkod üzerinden
güncellenir, olmayanlar yaratılır. Sonuç BatchRequestId ile takip edilir.
Parametreler
supplierId(path, string, zorunlu): CommerceLab'in size ilettiği tedarikçi kimliği. Bu ortamda tanımlı değilse istek401alır.trustedSource(query, boolean): Firmada "güvenilir kaynak" zorunluluğu açıksatruegönderilmelidir; gönderilmezse istek işlenmeden reddedilir. Zorunluluk kapalıysa etkisizdir.Tenant(header, string): Basic Auth ile birden fazla firmaya erişen kullanıcılarda firma kodu. Bearer token kullanılıyorsa gerekmez.
İstek gövdesi
items(object[], zorunlu): Aktarılacak SKU'lar; her eleman satılabilir tek bir ürün (barkod) temsil eder.items.title(string): Ürün adı (ad, kısa açıklama ve SEO açıklaması olarak yazılır).items.images(object[]): Ürün görselleri; sırası korunur.items.images.url(string): Görselin herkese açık tam adresi.items.images.updatedOn(string<date-time>): Görselin son güncellenme zamanı.
items.onSale(boolean): Satış durumu alanı; varsayılan eşlemede satış durumusalePrice > 0ile belirlenir.items.barcode(string, zorunlu): Ürünün varsayılan barkodu; tekil olmalıdır.items.brandId(integer<int64>): Marka kimliği.items.vatRate(number): KDV oranı (ör.20).items.quantity(number): Stok miktarı; varsayılan depoya yazılır.items.brandName(string): Marka adı.items.listPrice(number): Liste fiyatı.items.salePrice(number): Satış fiyatı;0'dan büyükse ürün satışta kabul edilir.items.stockCode(string, zorunlu): SKU kodu; tekil olmalıdır.items.attributes(object[]): Ürün nitelikleri. Nitelik adı (attributeName) veya kimliği (attributeId) ile gönderilir.Model Koduadlı nitelik ürünün model kodunu belirler.items.attributes.attributeId(integer<int64>): Nitelik kimliği;attributeNameyoksa anahtar olarak kullanılır.items.attributes.attributeName(string): Nitelik adı (ör.Renk,Beden). Adda/varsa-ile değiştirilir.items.attributes.attributeValue(string): Nitelik değeri (metin).items.attributes.attributeValueId(integer<int64>): Değer kimliği;attributeValuevecustomAttributeValueyoksa kullanılır.items.attributes.customAttributeValue(string): Serbest metin değer;attributeValueyoksa kullanılır.
items.categoryId(integer): Kategori kimliği; ürüneCategoryIdniteliği olarak yazılır.items.description(string): Ürün açıklaması (HTML olabilir).items.currencyType(string): Para birimi kodu (ör.TRY).items.productMainId(string, zorunlu): Option (renk) kodu; aynı renkteki bedenlerde aynı olmalıdır.items.cargoCompanyId(integer<int64>): Kargo firması kimliği.items.sourceFirstPrice(number): İlk (kaynak) fiyat; gönderilmezselistPricekullanılır.items.dimensionalWeight(integer<int64>): Desi.
Yanıtlar
- 200: İstek alındı; alanların anlamı
POSTile aynıdır. - 400: İstek gövdesi geçerli JSON değil veya alan tipleri uyumsuz.
- 401: Kimlik doğrulanamadı veya
supplierIdbu ortamda tanımlı değil. Gövde boştur. - 500: Sunucu tarafında beklenmeyen hata.
200 yanıt alanları
Message(string): İstek kuyruğa alınamadıysa nedeni (ör. istek limiti aşıldı); başarılıysanull.IsSuccess(boolean): İstek kuyruğa alındıysatrue.BatchRequestId(string): İşlem kimliği; sonucu sorgulamak için saklayın. Limit aşımındanull.