Spreminjanje podatkov trgovine
Z API-jem lahko spremenite podatke trgovine, na primer opis ali ceno izdelka.
Spremenite izbrana polja
Za spremembo opisa izdelka ni treba poslati vseh njegovih podatkov. V zahtevi PATCH navedite polja, ki jih spreminjate, in druga obvezna polja za to operacijo. Preostali podatki ostanejo nespremenjeni.
- Izpuščeno polje
- Njegova vrednost ostane nespremenjena.
- null
- Pošiljanje null izbriše vrednost, če polje to dovoljuje. Preverite opis operacije.
- Prazen niz
- "" pomeni prazno besedilo. Razlikuje se od null in ga ne sprejme vsako polje.
V tem primeru odstranimo nemški opis izdelka. Ime in opisi v drugih jezikih ostanejo nespremenjeni.
/api/v1/products/example?locale=deZahteva cURL
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}'
Odgovor
{
"data": {
"deleted": false,
"id": "example",
"version": 2
},
"meta": {
"request_id": "example"
}
}
Če ne prejmete odgovora
Če odgovora ni, to še ne pomeni, da sprememba ni bila shranjena. Povezava se je morda prekinila po shranjevanju.
Pri shranjevanju podatkov dodajte glavo Idempotency-Key z enolično vrednostjo. Če ne prejmete odgovora in ponovite isto spremembo, uporabite isti ključ, naslov, metodo in vsebino zahteve.
Če je API rezultat zahteve že shranil, ga vrne, ne da bi spremembo izvedel znova. Za drugo spremembo uporabite nov ključ.
Ponovna uporaba ključa za drugo zahtevo vrne idempotency.key_reused.
Če nekdo spremeni iste podatke
Pred spremembo pridobite trenutne podatke. Če operacija zahteva expected_version, v to polje vnesite prejeto različico.
Če je nekdo podatke medtem spremenil, API zavrne zapis. Pridobite jih znova in preverite, ali je načrtovana sprememba še ustrezna. Šele nato pošljite novo zahtevo s trenutno različico.
Sprememba cene lahko zahteva tudi različico cene, različice izdelka ali cenika. Potrebna polja najdete v opisu operacije.