Nitelik yarat veya güncelle
POST /PIM/SaveAttributeWithDetail — PIM API · Nitelikler
Bir niteliği ayarları, tip bilgisi ve değerleriyle birlikte kaydeder.
AttributeId verilirse o nitelik güncellenir, verilmezse yeni nitelik yaratılır.
Yanıt olarak niteliğin kaydedilmiş hâli döner.
PimSourceboşsaName'den üretilir; ikisi de boşsa kayıt hata alır.Detailgönderilmezse yalnızca ad, ayarlar ve doğrulama kuralları kaydedilir.ValuesDetailiçindeki değerlerDetail.AttributeTypeId'ye göre nitelik değeri olarak yazılır;ValueIdverilen değer güncellenir.
Parametreler
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
Tag(string): Serbest etiket.Name(string, zorunlu): Nitelik adı.Detail(object): Niteliğin tip bilgisi. Kimlik değerleri için Nitelikleri listele yanıtındaki örnekleri kullanın.Detail.Code(string): Nitelik kodu (en fazla 100 karakter).nullmevcut değere dokunmaz, boş metin temizler.Detail.Sync(boolean): Dış sistemle eşitlensin mi;nullmevcut değere dokunmaz.Detail.IsActive(boolean): Nitelik aktif mi.Detail.Description(string): Nitelik açıklaması.Detail.ExternalCode(string): Dış sistem kodu (en fazla 100 karakter).nullmevcut değere dokunmaz, boş metin temizler.Detail.ValidEndDate(string<date-time>): Geçerlilik bitişi.Detail.ValidStartDate(string<date-time>): Geçerlilik başlangıcı.Detail.AttributeTypeId(integer): Nitelik tipi kimliği.Detail.AttributeDataTypeId(integer): Veri tipi kimliği.Detail.AttributeBindingTypeId(integer): Bağlama tipi kimliği.Detail.AttributeRelationLevelId(integer): İlişki seviyesi kimliği.
Options(object[]): Nitelik ayarları (ör.allowFiltering,showOnProduct,isSearchable,splitSeperator).Options.Key(string): Ayar anahtarı.Options.Value(string): Ayar değeri (metin, ör."True").
PimSource(string): Niteliğin PIM kaynak anahtarı; boşsa addan üretilir.AttributeId(integer): Güncellenecek niteliğin kimliği; yeni nitelik için boş bırakın.ValuesDetail(object[]): Nitelik değerleri.ValidationRules(object[]): Uygulanacak doğrulama kuralları.ValidationRules.ValidationOrder(integer): Kuralın sırası.ValidationRules.ValidationRuleId(integer): Doğrulama kuralı kimliği.
Yanıtlar
- 200: Niteliğin kaydedilmiş hâli.
- 400: İstek gövdesi geçerli JSON değil veya alan tipleri uyumsuz.
- 401: Kimlik doğrulanamadı (başlık yok, Basic bilgileri hatalı veya token geçersiz). Gövde boştur.
- 500: Kayıt hatası (ör.
company not found,Map ismi boş olamaz,attribute not found).
200 yanıt alanları
Code(string): Nitelik kodu.Name(string): Nitelik adı.Sync(boolean): Dış sistemle eşitleniyor mu.Type(string): Kayıt tipi; nitelikler içinAttribute.Detail(object): Niteliğin tip bilgisi.Options(object[]): Nitelik ayarları; tanımlı tüm ayar anahtarları döner, ayarlanmamış olanlarnulldeğerlidir.Options.Key(string): Ayar anahtarı.Options.Value(string): Ayar değeri.
IsSynced(boolean): Son eşitleme başarılı mı.MetaType(string): Ek tip bilgisi.PimSource(string): PIM kaynak anahtarı.AttributeId(integer): Nitelik kimliği.ExternalCode(string): Dış sistem kodu.LastSyncDate(string<date-time>): Son eşitleme zamanı.ValuesDetail(object[]): Nitelik değerleri.LocalizedName(object[]): Nitelik adının dil karşılıkları.ValidationRules(object[]): Bağlı doğrulama kuralları.