Update editable Case metadata
Updates editable Case metadata, status, Project link, and first-response marker. customerId, propertyId, systemId, ownerId, and the removed assignedToId field are not writable on PATCH.
Updates editable Case metadata, status, Project link, and first-response marker. customerId, propertyId, systemId, ownerId, and the removed assignedToId field are not writable on PATCH.
Update editable Case metadata. Use an organization API key with cases:write. Check the response envelope and meta.requestId before triggering dependent workflow steps.
Required scopes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| idrequired | path | string | Case identifier returned by the Organization API. |
Request body
| Field | Type | Description |
|---|---|---|
| subject | string | Optional unless marked required. |
| description | string | Optional unless marked required. |
| origin | PHONE | EMAIL | PORTAL | MONITORING_ALERT | IN_PERSON | Optional unless marked required. |
| severity | LOW | MEDIUM | HIGH | URGENT | Optional unless marked required. |
| category | string | Case Category key. Platform keys: HARDWARE_DEFECT, WORKMANSHIP, MONITORING, BILLING, OTHER. Organizations may add their own; list them with GET /case-categories. |
| status | OPEN | TRIAGING | IN_PROGRESS | AWAITING_CUSTOMER | AWAITING_VENDOR | AWAITING_WORK | RESOLVED | CLOSED | CLOSED is the sole terminal status. Legacy RESOLVED input is accepted as CLOSED. |
| projectId | string | null | Current project compatibility pointer. Changing or clearing it preserves prior Project memberships. Use Project.caseId to link/unlink membership. |
| firstResponseAt | string | null | Optional unless marked required. |
{
"status": "IN_PROGRESS",
"firstResponseAt": "2026-08-12T18:00:00Z"
}Responses
Updated Case envelope
#/components/schemas/CaseEnvelope
Validation error
#/components/schemas/OrgApiError
Missing or invalid organization API key
#/components/schemas/OrgApiError
Organization billing access or an endpoint-specific business quota denied the request
#/components/schemas/OrgApiError
Missing required scope: cases:write
#/components/schemas/OrgApiError
Not found
#/components/schemas/OrgApiError
Rate limit exceeded
#/components/schemas/OrgApiError
Errors
Static examples
curl -X PATCH "$SOLAROS_BASE_URL/api/v1/cases/$SOLAROS_CASE" \
-H "Authorization: Bearer $SOLAROS_API_KEY" \
-H "Content-Type: application/json" \
--data '{"status":"IN_PROGRESS","firstResponseAt":"2026-08-12T18:00:00Z"}'