Batch update products
Updates multiple existing products in a single request (does not create new ones). tags is the only field that supports add/remove batch operations — there is no way to bulk-set status, price, or other fields through this endpoint.
POST
/products/updatersAuthorization
AuthorizationBearer token (JWT) · headerrequiredQuery parameters
shop_idintegerrequiredRequest body
requiredapplication/jsonidsinteger[]requiredadditionsobjectShow propertiesHide properties
tagsstring[]removalsobjectShow propertiesHide properties
tagsstring[]Responses
201Products processed
_embeddedobjectShow propertiesHide properties
valid_itemsobject[]Show propertiesHide properties
Array of
objectidintegertitlestringinvalid_itemsobject[]Show propertiesHide properties
Array of
objectidintegertitlestring422Validation error (e.g. missing `ids`, or neither `additions`/`removals` given)
Request
curl -X POST "https://api.onbolder.com/v2/products/updaters?shop_id=0" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ids": [
101,
102
],
"additions": {
"tags": [
"clearance"
]
}
}'const response = await fetch("https://api.onbolder.com/v2/products/updaters?shop_id=0", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"ids": [
101,
102
],
"additions": {
"tags": [
"clearance"
]
}
})
});import requests
response = requests.post(
"https://api.onbolder.com/v2/products/updaters?shop_id=0",
headers={
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
json={
"ids": [
101,
102
],
"additions": {
"tags": [
"clearance"
]
}
},
)Response
{
"ids": [
101,
102
],
"additions": {
"tags": [
"clearance"
]
},
"_embedded": {
"valid_items": [
{
"id": 101,
"name": "Product A"
}
],
"invalid_items": []
}
}Validation error (e.g. missing `ids`, or neither `additions`/`removals` given)