Preskoči na vsebino
ShopentlyLearn

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.

PATCH/api/v1/products/example?locale=de

Zahteva 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.