Poe andmete muutmine
API kaudu saad muuta poe andmeid, näiteks toote kirjeldust või hinda.
Muuda valitud välju
Toote kirjelduse muutmiseks ei pea saatma kõiki tooteandmeid. Lisa PATCH-päringusse muudetavad väljad ja muud selle toimingu kohustuslikud väljad. Ülejäänud andmed jäävad samaks.
- Välja jäetud väli
- Selle väärtus jääb samaks.
- null
- Väärtuse null saatmine kustutab väärtuse, kui väli seda lubab. Kontrolli toimingu kirjeldust.
- Tühi string
- "" tähendab tühja teksti. See erineb väärtusest null ja kõik väljad ei aktsepteeri seda.
Selles näites eemaldame toote saksakeelse kirjelduse. Nimi ja teistes keeltes kirjeldused jäävad samaks.
/api/v1/products/example?locale=decURL-päring
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}'
Vastus
{
"data": {
"deleted": false,
"id": "example",
"version": 2
},
"meta": {
"request_id": "example"
}
}
Kui vastust ei tule
Vastuse puudumine ei tähenda alati, et muudatus jäi salvestamata. Ühendus võis katkeda pärast muudatuse tegemist.
Andmeid salvestades lisa päis Idempotency-Key kordumatu väärtusega. Kui vastust ei tule ja kordad sama muudatust, kasuta sama võtit, aadressi, meetodit ja päringu sisu.
Kui API on selle päringu tulemuse juba salvestanud, tagastab see tulemuse muudatust uuesti tegemata. Teise muudatuse jaoks kasuta uut võtit.
Sama võtme kasutamine erineva päringu jaoks annab idempotency.key_reused.
Kui keegi muudab samu andmeid
Enne muutmist päri praegused andmed. Kui toiming nõuab expected_version välja, sisesta sinna saadud versioon.
Kui keegi on andmeid vahepeal muutnud, lükkab API salvestamise tagasi. Päri andmed uuesti ja kontrolli, kas kavandatud muudatus on endiselt sobiv. Alles seejärel saada uus päring praeguse versiooniga.
Hinna muutmisel võib vaja minna ka hinna, variandi või hinnakirja versiooni. Vajalikud väljad leiad toimingu kirjeldusest.