Preskočiť na obsah
ShopentlyLearn

Zmena údajov obchodu

Cez API môžete meniť údaje obchodu, napríklad popis alebo cenu produktu.

Zmena vybraných polí

Pri zmene popisu produktu nemusíte posielať všetky jeho údaje. V požiadavke PATCH uveďte menené polia a ďalšie polia, ktoré operácia vyžaduje. Ostatné údaje produktu zostanú nezmenené.

Vynechané pole
Jeho hodnota zostane nezmenená.
null
Odoslaním null hodnotu odstránite, ak to pole povoľuje. Overte si to v opise operácie.
Prázdny reťazec
"" znamená prázdny text. Líši sa od null a nie každé pole ho prijíma.

V tomto príklade odstraňujeme nemecký popis produktu. Názov produktu a popisy v ostatných jazykoch zostanú nezmenené.

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

Požiadavka 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}'

Odpoveď

{
  "data": {
    "deleted": false,
    "id": "example",
    "version": 2
  },
  "meta": {
    "request_id": "example"
  }
}

Keď nepríde odpoveď

Chýbajúca odpoveď nemusí znamenať, že sa zmena neuložila. Spojenie mohlo byť prerušené až po jej vykonaní.

Pri ukladaní údajov pridajte hlavičku Idempotency-Key s jedinečnou hodnotou. Ak nedostanete odpoveď a opakujete rovnakú zmenu, použite rovnaký kľúč, adresu, metódu aj telo požiadavky.

Ak už API uložilo výsledok tejto požiadavky, vráti ho bez opätovného vykonania zmeny. Pre inú zmenu použite nový kľúč.

Použitie rovnakého kľúča pre inú požiadavku vráti idempotency.key_reused.

Keď niekto zmení rovnaké údaje

Pred zmenou načítajte aktuálne údaje. Ak operácia vyžaduje expected_version, zadajte do tohto poľa získanú verziu.

Ak niekto údaje medzitým zmenil, API zápis odmietne. Načítajte ich znova a overte, či je plánovaná zmena stále vhodná. Až potom odošlite novú požiadavku s aktuálnou verziou.

Zmena ceny môže vyžadovať aj verziu ceny, variantu alebo cenníka. Potrebné polia nájdete v opise operácie.