Skip to content

Category — Update (and Move)

Updates an existing category. Mirrors Catalog → Categories → Edit in the Bagisto admin panel.

There is no separate move endpoint. Re-parenting and reordering are part of the ordinary update payload — PUT the category with a new parent_id and position. The admin panel works the same way: both are ordinary editable fields on the category form, not a distinct "move" action.

Endpoint

EndpointMethod
/api/admin/catalog/categories/{id}PUT

{id} must be a positive integer.

Request body

FieldTypeRequiredNotes
localestringnoLocale being edited (defaults to the app locale).
positionintegeryesDisplay order.
attributesinteger[]yesList of filterable attribute ids.
parent_idinteger|nullnoNew parent — supply to re-parent (move) the category.
statusintegerno0 / 1.
<locale>objectyesLocale-nested translatable fields — see below.

Locale-nested translatable fields

Translatable fields go inside a key matching the locale code (e.g. "en"):

FieldNotes
slugRequired.
nameRequired.
descriptionRequired when display_mode is description_only or products_and_description.
meta_title / meta_description / meta_keywordsOptional SEO fields.

Response

200 OK. Same shape as GET /api/admin/catalog/categories/{id}.

Errors

HTTPCause
401 UnauthorizedMissing or invalid Bearer token
404 Not FoundThe category does not exist
422 Unprocessable EntityLocale-nested validation failure

Released under the MIT License.