Mağaza verilerini değiştirme
API ile mağazanızdaki verileri, örneğin bir ürünün açıklamasını veya fiyatını değiştirebilirsiniz.
Seçili alanları değiştirin
Ürün açıklamasını değiştirmek için tüm ürün verilerini göndermeniz gerekmez. PATCH isteğine değiştirdiğiniz alanları ve işlemin gerektirdiği diğer alanları ekleyin. Diğer veriler değişmeden kalır.
- Atlanan alan
- Değeri değişmeden kalır.
- null
- Alan izin veriyorsa null göndermek değeri siler. İşlemin açıklamasını kontrol edin.
- Boş metin
- "" boş metin anlamına gelir. null değerinden farklıdır ve her alan bunu kabul etmez.
Bu örnekte ürünün Almanca açıklamasını kaldırıyoruz. Adı ve diğer dillerdeki açıklamaları değişmez.
/api/v1/products/example?locale=decURL isteği
curl --disable --globoff --fail-with-body --silent --show-error \
--proto '=https' --connect-timeout 5 --max-time 30 \
--request PATCH \
--url 'https://shop.onshopently.com/api/v1/products/example?locale=de' \
--header 'Authorization: Bearer EXAMPLE_ACCESS_TOKEN' \
--header 'Idempotency-Key: example-product-clear-translation' \
--header 'Content-Type: application/json' \
--data-raw '{"description":null,"expected_version":1}'
Yanıt
{
"data": {
"deleted": false,
"id": "example",
"version": 2
},
"meta": {
"request_id": "example"
}
}
Yanıt alamazsanız
Yanıt gelmemesi, değişikliğin kaydedilmediği anlamına gelmez. Bağlantı, değişiklik yapıldıktan sonra kesilmiş olabilir.
Veri kaydederken isteğe benzersiz bir değerle Idempotency-Key başlığını ekleyin. Yanıt alamaz ve aynı değişikliği yeniden denerseniz aynı anahtarı, adresi, yöntemi ve istek içeriğini kullanın.
API bu isteğin sonucunu zaten kaydetmişse değişikliği tekrar uygulamadan kayıtlı sonucu döndürür. Farklı bir değişiklik için yeni anahtar kullanın.
Anahtarın farklı bir istek için yeniden kullanılması idempotency.key_reused hatası verir.
Birisi aynı verileri değiştirirse
Değişiklik yapmadan önce güncel verileri alın. İşlem expected_version gerektiriyorsa aldığınız sürümü bu alana yazın.
Bu sırada başka biri verileri değiştirmişse API kaydı reddeder. Verileri tekrar alın ve planladığınız değişikliğin hâlâ uygun olup olmadığını kontrol edin. Ancak bundan sonra güncel sürümle yeni istek gönderin.
Fiyat değişikliği, fiyatın, varyantın veya fiyat listesinin sürümünü de gerektirebilir. Gerekli alanları işlemin açıklamasında bulabilirsiniz.