Skip to main content

Bulk Edit Products (Apply to All)

POST 

/api/v2/products/bulk-edit

Apply the same set of changes to all selected products.

Required scope: products:write

Grant this scope to your token under Settings → Developer → Personal Access Tokens.

Authentication: Requires Bearer token.

Fields:

  • product_ids (required, array, max 500): Product IDs to update
  • changes (required, array): List of changes, each with:
    • field (required, string): Field name to change. Supports scalar product fields (e.g. weight, weight_unit, unit_cost, brand_id, product_type_id — 'set' with an active leaf product type id, or 'clear'), 'pricing' (customer pricing tiers), 'supplier_pricing' (per-supplier pricing tiers — applies to ALL suppliers of each product), 'attribute' (custom attributes), and 'supplier' (link suppliers).
    • operation (required, string): Operation type. Scalars use 'set' / 'clear'; boolean fields (is_dropshippable, is_taxable, is_lot_tracked) use 'set_true' / 'set_false'. Numeric/pricing/supplier_pricing also accept 'increase_by_amount', 'decrease_by_amount', 'increase_by_percent', 'decrease_by_percent'.
    • value (nullable): New value
    • tier_id (nullable, integer): Required for 'pricing' (references product_pricing_tiers) and 'supplier_pricing' (references supplier_pricing_tiers). Validation routes to the correct table based on the sibling 'field' value.
    • attribute_id (nullable, integer): Required for attribute field changes
    • supplier_id (nullable, integer): Required for supplier field changes

Lot tracking:

  • is_lot_tracked with 'set_true' switches lot tracking on for every selected product. A product that has no lot_tracking_method yet receives the tenant default from the Serial & Lot Tracking settings; a method the product already has is kept.
  • lot_tracking_method with 'set' and value fifo | fefo changes the consumption order; 'clear' removes it. Any other value returns 422.

Requires permission: products.update

Request​

Responses​

OK

Response Headers
    Content-Type