Preskoči na sadržaj
ShopentlyLearn

Promjena podataka trgovine

Putem API-ja možete promijeniti podatke trgovine, primjerice opis ili cijenu proizvoda.

Promjena odabranih polja

Za promjenu opisa proizvoda ne morate slati sve njegove podatke. U zahtjevu PATCH navedite polja koja mijenjate i druga polja obavezna za tu operaciju. Ostali podaci ostaju nepromijenjeni.

Izostavljeno polje
Njegova vrijednost ostaje nepromijenjena.
null
Slanje vrijednosti null briše vrijednost ako polje to dopušta. Provjerite opis operacije.
Prazan niz
"" označava prazan tekst. Razlikuje se od null i ne prihvaća ga svako polje.

U ovom primjeru uklanjamo opis proizvoda na njemačkom. Naziv i opisi na drugim jezicima ostaju nepromijenjeni.

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

cURL zahtjev

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"
  }
}

Ako ne dobijete odgovor

Izostanak odgovora ne mora značiti da promjena nije spremljena. Veza se mogla prekinuti nakon spremanja.

Pri spremanju podataka dodajte zaglavlje Idempotency-Key s jedinstvenom vrijednošću. Ako ne dobijete odgovor i ponavljate istu promjenu, koristite isti ključ, adresu, metodu i sadržaj zahtjeva.

Ako API već ima spremljen rezultat tog zahtjeva, vratit će ga bez ponovnog izvršavanja promjene. Za drugu promjenu koristite novi ključ.

Ponovna uporaba ključa za drugi zahtjev vraća idempotency.key_reused.

Ako netko promijeni iste podatke

Prije promjene dohvatite aktualne podatke. Ako operacija zahtijeva expected_version, u to polje upišite primljenu verziju.

Ako je netko u međuvremenu promijenio podatke, API će odbiti spremanje. Dohvatite ih ponovno i provjerite je li planirana promjena i dalje prikladna. Tek tada pošaljite novi zahtjev s aktualnom verzijom.

Promjena cijene može zahtijevati i verziju cijene, varijante ili cjenika. Potrebna polja navedena su u opisu operacije.