Skip to content
BolderBolder Developers
Esc
↑↓navigate↵open⌘Jpreview

Batch update variants

Updates multiple existing variants in a single request (does not create new variants). Each entry in batch must include id to match an existing variant; a batch may mix variants of different products, as long as they all belong to the same seller. Up to 50 entries per request, with no repeated ids.

id is either the numeric variant ID or the SKU — the mode is decided by the first entry (numeric → all entries are matched by ID, otherwise all by SKU), so don’t mix both in the same batch. Entries that don’t match a variant of the seller (unknown ID/SKU, or a variant owned by another seller) are silently skipped: the response is still 201 and they simply don’t appear in valid_items/invalid_items.

Stock fields use available_units/total_units (units is deprecated but still accepted).

POST/variants/updaters
Authorization
AuthorizationBearer token (JWT) · headerrequired
Query parameters
shop_idstring

Shop ID or subdomain, used to resolve the seller that owns the variants (any shop of that seller gives the same result). May also be sent in the JSON body. Optional when the token grants access to exactly one shop; otherwise required — omitting it returns 422.

Request body
requiredapplication/json
batchobject[]required
min items 1 · max items 50
Show properties
Array of object
idstringrequired

Existing variant ID or SKU

titlestring

Accepted (unlike the standalone update endpoint, which ignores it)

skustring
regular_priceinteger
sale_priceinteger
statusstring
Allowed:visiblehidden
stocksobject[]
Show properties
Array of object
location_idinteger
available_unitsinteger
total_unitsinteger
Responses
201

Batch processed. Check invalid_items — a 201 does not mean every entry was applied.

_embeddedobject
Show properties
valid_itemsobject[]

Variants that were updated

Show properties
Array of object
_linksHalLinks
idinteger
namestring
invalid_itemsobject[]

Variants that matched but failed validation; each embeds its errors

Show properties
Array of object
_linksHalLinks
idinteger
namestring
422

batch is empty, exceeds 50 entries or repeats an id; or shop_id was omitted and could not be resolved from the token.

Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -s -X POST -H "Authorization: Bearer $BOLDER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"batch":[{"id":"201","regular_price":7999},{"id":"305","regular_price":8999}]}' \
  "https://api.onbolder.com/v2/variants/updaters?shop_id=1"
Response
{
  "_embedded": {
    "valid_items": [
      {
        "_links": {
          "property1": {
            "href": "string",
            "templated": true,
            "method": "get",
            "title": "string",
            "type": "string"
          },
          "property2": {
            "href": "string",
            "templated": true,
            "method": "get",
            "title": "string",
            "type": "string"
          }
        },
        "id": 0,
        "name": "string"
      }
    ],
    "invalid_items": [
      {
        "_links": {
          "property1": {
            "href": "string",
            "templated": true,
            "method": "get",
            "title": "string",
            "type": "string"
          },
          "property2": {
            "href": "string",
            "templated": true,
            "method": "get",
            "title": "string",
            "type": "string"
          }
        },
        "id": 0,
        "name": "string"
      }
    ]
  }
}

Was this page helpful?