---
title: "Update Item"
method: PUT
path: "/items/{item_id}.json"
tags: ["Items"]
---

# Update Item

`PUT /items/{item_id}.json`

Updates an item.

## Path parameters

- `item_id` string, required

## Query parameters

- `api_key` string, required

## Request body

- ItemRequest
  - `item` object, required
    - `name` string, required — Item name. Values longer than 60 characters are rejected with HTTP 422 — they are not truncated.
    - `description` string, required — Item description. Values longer than 200 characters are rejected with HTTP 422 — they are not truncated.
    - `unit_price` number, required
    - `unit` string — One of: `hour`, `day`, `month`, `unit`, `service`, `tax`, `other`, `product`, `article`.
    - `tax` object
      - `name` string

## Response `200`

SUCCESS

## Other responses

- `401` — ACCESS DENIED
- `404` — NOT FOUND
- `422` — UNPROCESSABLE ENTITY

## Changes

- **2026-08-25** `5b82d4eb0d9f` — 1 breaking, 3 warning
  - the `errors` response's property type changed from `object` to `array` for status `401`
  - the `item/description` request property's maxLength was set to `200`
  - the `item/name` request property's maxLength was set to `60`
  - removed the optional property `errors/error` from the response with the `401` status

[Change history](https://skmtc.dev/invoicexpress/apis/invoicexpress-api/changes/items/:item_id.json/put.md)

---

[API](https://skmtc.dev/invoicexpress/apis/invoicexpress-api.md) · [All operations](https://skmtc.dev/invoicexpress/apis/invoicexpress-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/invoicexpress/invoicexpress-api/revisions/5b82d4eb0d9f/schema)
