Catalog Products — Mass Delete
Deletes a batch of catalog products in a single call. Mirrors Catalog → Products → Mass Delete in the Bagisto admin panel.
Endpoint
| Endpoint | Method |
|---|---|
/api/admin/catalog/products/mass-delete | POST |
Request body
| Field | Type | Required | Notes |
|---|---|---|---|
indices | int[] | yes | Non-empty array of product IDs. Non-existent IDs are silently skipped. |
Response
200 OK
| Field | Type | Notes |
|---|---|---|
deleted | int[] | IDs that were processed (echoes the request — non-existent IDs are still listed) |
message | string | Translated confirmation |
Errors
| HTTP | Cause |
|---|---|
400 Bad Request | Empty / malformed indices |
401 Unauthorized | Missing or invalid admin Bearer token |
403 Forbidden | Admin role lacks catalog.products.delete |
500 Internal Server Error | Underlying delete threw — matches monolith best-effort behaviour |
Notes
- Mirrors the monolith best-effort semantics — the call does not short-circuit on a missing or invalid ID.
- For configurable products, variants cascade automatically through the core repository.

