---
title: "Update a catalog item"
method: PUT
path: "/catalog/{id}"
tags: ["Catalog"]
---

# Update a catalog item

`PUT /catalog/{id}`

## Request

- Base URL: `https://api.lumabill.ch/v1`
- URL: `https://api.lumabill.ch/v1/catalog/{id}`
- Auth: HTTP bearer

## Request body

- CatalogItemWrite
  - `title` string, required
  - `description` string, nullable
  - `price` number, double, required
  - `unit` string, nullable
  - `vat_rate` number, double, nullable

## Response `200`

Updated catalog item

- CatalogItem
  - `id` string, uuid, required
  - `title` string, required
  - `description` string, nullable
  - `price` number, double, required
  - `unit` string, nullable: Unit of measure (e.g. hour, day, piece)
  - `taxRate` number, double, nullable
  - `created_at` string, date-time, required

## Other responses

- `400`: Validation error
- `401`: Invalid or missing API key
- `403`: Subscription required or read-only key on a write endpoint
- `404`: Resource not found
- `429`: Rate limit exceeded
- `500`: Internal server error

---

[API](https://skmtc.dev/lumabill/apis/lumabill-api.md) · [All operations](https://skmtc.dev/lumabill/apis/lumabill-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lumabill/apis/lumabill-api/revisions/e48e7099b545?raw)
