Ändra butikens data
Med API:et kan du ändra butikens data, till exempel en produkts beskrivning eller pris.
Ändra utvalda fält
Du behöver inte skicka alla produktuppgifter för att ändra beskrivningen. Ta med fälten som du ändrar och övriga obligatoriska fält i PATCH-anropet. Resten av uppgifterna förblir oförändrade.
- Utelämnat fält
- Värdet förblir oförändrat.
- null
- Om du skickar null tas värdet bort, förutsatt att fältet tillåter det. Kontrollera beskrivningen av operationen.
- Tom sträng
- "" betyder en tom sträng. Det skiljer sig från null och tillåts inte i alla fält.
I det här exemplet tar vi bort produktens tyska beskrivning. Namnet och beskrivningarna på andra språk förblir oförändrade.
/api/v1/products/example?locale=decURL-begäran
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}'
Svar
{
"data": {
"deleted": false,
"id": "example",
"version": 2
},
"meta": {
"request_id": "example"
}
}
Om du inte får något svar
Ett uteblivet svar betyder inte nödvändigtvis att ändringen inte sparades. Anslutningen kan ha brutits efter att ändringen utfördes.
Lägg till headern Idempotency-Key med ett unikt värde när du sparar data. Om du inte får något svar och försöker göra samma ändring igen använder du samma nyckel, URL, metod och innehåll.
Om API:et redan har sparat resultatet för förfrågan returneras det utan att ändringen utförs igen. Använd en ny nyckel för en annan ändring.
Om en nyckel återanvänds för en annan begäran returneras idempotency.key_reused.
Om någon ändrar samma data
Hämta aktuella data innan du gör en ändring. Om åtgärden kräver expected_version anger du den mottagna versionen i fältet.
Om någon har ändrat uppgifterna under tiden avvisar API:et ändringen. Hämta dem igen och kontrollera att den planerade ändringen fortfarande passar. Skicka först därefter en ny förfrågan med den aktuella versionen.
När du ändrar ett pris kan även prisets, variantens eller prislistans version behövas. Fälten du behöver finns i operationens beskrivning.