products_bulk_action
Apply the same action to many products in one request. Update fields like price or stock by using set, increase, decrease, round, merge, or remove on selected IDs or all products.
Instructions
Apply the same actions to many products in one request (PUT /admin/api/ecommerce/v1/products). This is NOT per-row arbitrary updates — every product in target_ids receives every action in actions. For one-off varied edits use product_update.
Request shape:
actions: list of {target_field, action, value, source_field?}. Allowed action verbs: set, increase_by_fixed, decrease_by_fixed, increase_by_percent, decrease_by_percent, round, round_upwards, round_downwards, merge, remove.
target_ids: list of integer product ids, OR the literal string 'all' to apply to every product on the site.
Response: {counters: {processed, failed}, processed_ids, failed_ids}. Duplicate ids in target_ids are collapsed server-side. No empirical batch-size cap observed up to 1001 ids (Stella, 2026-05-27); send what you need.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | Required when target_ids='all'. Ignored when target_ids is a list of explicit ids — the caller has already named the rows. | |
| actions | Yes | Each {target_field, action, value, source_field?}. Same actions apply to every id in target_ids. | |
| target_ids | Yes | List of product ids (up to 10000), or the literal string 'all' to target every product on the site. NOTE: target_ids='all' is high blast radius and requires force=true. |