Update Store Category
Update an existing store category. Only include the fields you want to change.
Endpointโ
PUT /v1/store-categories/{id}
Authenticationโ
Requires an API key with the store:write scope.
Parametersโ
| Parameter | Type | Location | Description |
|---|---|---|---|
id | integer | path | The store category ID |
Request Bodyโ
All fields are optional. Only included fields will be updated.
| Field | Type | Description |
|---|---|---|
name | string | Category name (max 255 characters) |
description | string|null | Category description (max 500 characters) |
parent_id | integer|null | Parent category ID (null to make top-level) |
apply_to | array | Other booking types this category is linked to: rentals, experiences |
Linked Categoriesโ
Use apply_to to link this category across booking types. EquipDash creates a mirror category in each listed booking type (or adopts an existing unlinked category with the same name) and links them as one group. Linked categories share their name, description, and image, so updating any member syncs the others. Sending apply_to replaces the linked set โ booking types you omit are unlinked, and the mirror is deleted if it has no items or sub-categories (otherwise it is kept as a standalone category). Omit apply_to entirely to leave links unchanged.
A category cannot be set as its own parent. Attempting to set parent_id to the same value as the category id will return a 422 error.
Responseโ
Success (200 OK)โ
{
"data": {
"id": 6,
"name": "Safety & Protection",
"description": "Helmets, pads, and protective equipment for all sports",
"image_url": "https://example.com/storage/categories/safety.jpg",
"parent_id": 1,
"products_count": 4,
"children": [],
"linked_types": ["rentals"],
"created_at": "2026-02-13T12:00:00+00:00",
"updated_at": "2026-02-13T14:00:00+00:00"
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-13T14:00:00+00:00"
}
}
Errorsโ
| Status | Code | Description |
|---|---|---|
| 401 | authentication_required | No API key provided |
| 401 | invalid_api_key | Invalid API key |
| 403 | insufficient_scope | API key lacks store:write scope |
| 404 | resource_not_found | Store category does not exist |
| 422 | validation_error | Invalid request body |
| 422 | invalid_parent | Category cannot be its own parent |
Example Requestโ
curl -X PUT "https://app.equipdash.com/api/v1/store-categories/6" \
-H "Authorization: Bearer eqd_live_abc123xyz789..." \
-H "Content-Type: application/json" \
-d '{
"name": "Safety & Protection",
"description": "Helmets, pads, and protective equipment for all sports"
}'