Skip to content

Catalog Products — Mass Update Status

Bulk-flips status across a batch of catalog products. Each ID fires the same core event hooks the single-product update does (catalog.product.update.before / .after), so search reindex, cache flush etc. still trigger.

Endpoint

EndpointMethod
/api/admin/catalog/products/mass-update-statusPOST

Request body

FieldTypeRequiredNotes
indicesint[]yesNon-empty array of product IDs.
valueintegeryes0 (disabled) or 1 (enabled).

Response

200 OK

FieldTypeNotes
idintegerAlways 1. This is an action result, not a record — ignore it.
updatedint[]The ids the call attempted to update.
messagestringTranslated confirmation.

Behaviour

Each id fires the same events as a single-product update, so search reindexing and cache flushing still run per product. That makes a large batch meaningfully slower than the row count suggests.

The status flip is the only change — nothing else on the product is touched, and there is no partial-failure report beyond the returned updated list.

Errors

HTTPDetail
400The indices field is required and must be a non-empty array.
400The value field is required and must be 0 or 1.
401Unauthenticated.
403You do not have permission to manage products. — token lacks catalog.products.edit

Note the validation failures here are 400, not the 422 used by the single-product create and update endpoints.

Released under the MIT License.