---
title: "Update a service status"
method: PATCH
path: "/service_statuses/{id}"
tags: ["Service Orders"]
---

# Update a service status

`PATCH /service_statuses/{id}`

Partially updates a custom service status. Only provided fields are updated.

System default statuses cannot be modified.

**Only available with the Service Orders module enabled.**

🔒 Requires: `services:write` scope

## Request body

- object
  - `display_order` integer, nullable — New display order. Can be set to null to clear it.
  - `name` string — New human-readable name for the status. If provided, must not be blank.

## Response `200`

Service status updated successfully

- ServiceStatusDetails, nullable — Details of a custom service status assigned to a service order.
  - `created_at` string, date-time — The date and time the status was created.
  - `display_name` string — Human-readable name of the status.
  - `display_order` integer, nullable — The order in which this status appears in the UI. Null if not set.
  - `id` string — The unique ID of the status.
  - `retailer_id` string — The retailer this status belongs to.
  - `status_key` string — The underlying key mapping this status to a system status (e.g. NEW, IN_PROGRESS).
  - `system_default` boolean — Whether this is a system-managed default status.
  - `updated_at` string, date-time — The date and time the status was last updated.

## Other responses

- `400` — Bad request — name is provided but blank
- `401` — Unauthorized
- `403` — Forbidden — missing `services:write` scope, or attempting to modify a system default status
- `404` — Not Found
- `409` — Conflict — a status with this name or display order already exists

---

[API](https://skmtc.net/lightspeedhq/apis/api-2026-07.md) · [All operations](https://skmtc.net/lightspeedhq/apis/api-2026-07/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lightspeedhq/api-2026-07/revisions/72d4ceb46dbb/schema)
