Update Experience Category
Update an existing experience category.
Endpointโ
PATCH /v1/experience-categories/{id}
Authenticationโ
Requires an API key with the experiences:write scope.
Parametersโ
| Parameter | Type | Location | Description |
|---|---|---|---|
id | integer | path | The category ID |
Request Bodyโ
All fields are optional. Only provide fields you want to update.
| Field | Type | Description |
|---|---|---|
name | string | Category name (max 255 characters) |
description | string | Category description |
parent_id | integer|null | Parent category ID (set to null to make top-level) |
apply_to | array | Other booking types this category is linked to: rentals, store |
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.
Example Requestโ
curl -X PATCH "https://app.equipdash.com/api/v1/experience-categories/3" \
-H "Authorization: Bearer eqd_live_abc123xyz789..." \
-H "Content-Type: application/json" \
-d '{
"name": "Guided Kayaking Tours",
"description": "Expert-led kayak adventures"
}'
Responseโ
Success (200 OK)โ
{
"data": {
"id": 3,
"name": "Guided Kayaking Tours",
"description": "Expert-led kayak adventures",
"image": null,
"parent_id": 1,
"parent": {
"id": 1,
"name": "Water Activities"
},
"children": [],
"experience_count": 4,
"linked_types": ["rentals"],
"created_at": "2025-01-15T00:00:00+00:00",
"updated_at": "2026-01-15T12:00:00+00:00"
},
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-01-15T12:00:00+00:00"
}
}
Errorsโ
| Status | Code | Description |
|---|---|---|
| 400 | validation_error | Invalid input data |
| 401 | authentication_required | No API key provided |
| 401 | invalid_api_key | Invalid API key |
| 403 | insufficient_scope | API key lacks experiences:write scope |
| 404 | resource_not_found | Category does not exist |
Notesโ
- A category cannot be its own parent
- The
parent_idmust reference a category that belongs to your account - Set
parent_idtonullto convert a subcategory to a top-level category apply_toaccepts only the other booking types:rentalsandstore- Name, description, and image changes automatically sync to all linked categories