*MCP › Reference › Catalog & inventory › Items*

# Update a serialized item

> Changes the record of ONE serialized item: its status, where it is, its serial number or its warranty.

It is what a warehouse system needs to say "this one is back and operational". What the unit cost, the internal note and the subrent terms neither go in nor come out through this API. The item it belongs to is resolved by the server. Returns the full serialized item, the same projection as its GET.

TOOL `filmo_serialized_items_update` · `items:write` · 120/min · Server annotation: Idempotent

## Arguments

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `serializedItemId` | string | Yes | Serialized item identifier. |
| `code` | string | No | Internal code of the unit. It identifies the unit, so it cannot be empty. |
| `serialNumber` | string | No | Manufacturer serial number; null clears it. |
| `status` | string | No | Unit status. `available`, `prepared`, `picked_up`, `returned`, `broken`, `archived`, `sold` |
| `active` | boolean | No | false removes the unit from the pool without deleting it. |
| `orderInfo` | string | No | Information visible on the order and on the delivery note. |
| `providerReference` | string | No | Reference by which the supplier identifies the unit. |
| `poNumber` | string | No | Number of the purchase order that brought it in. |
| `purchaseDate` | string<date-time> | No | Purchase date, in ISO 8601 with offset. |
| `warrantyExpiration` | string<date-time> | No | Warranty end, in ISO 8601 with offset. |
| `spaceId` | string | No | Warehouse where the unit is located. |
| `locationId` | string | No | Location within the warehouse; null clears it. |
| `idempotencyKey` | string | No | Idempotency key chosen by the client (a UUID is recommended). Repeating the same key with the same arguments within 24 h returns the stored response without executing again; with different arguments it responds 422. It is the safe way to retry after a network failure. |
| `ifMatch` | string | No | Optimistic locking: the meta.etag you got from the detail read of this resource (or "*"). If the resource changed since, the call fails with 412 precondition_failed before writing anything; read it again and retry. Omit it to write unconditionally. |

## Result

On success the result carries `structuredContent` with `data` and `meta`. These are the attributes of `data`.

| Name | Type | Description |
| --- | --- | --- |
| `id` | string | Unique identifier of the physical unit. |
| `code` | string | Internal code of the unit. |
| `serialNumber` | string | Manufacturer serial number; null if not registered. |
| `status` | string | Current status of the unit within the inventory cycle. |
| `itemId` | string | Identifier of the catalog item this unit belongs to. |
| `itemName` | string | Name of the catalog item. |
| `itemSku` | string | SKU of the item; null if it has none. |
| `itemCollectionName` | string | Name of the collection of the item; null if it is in none. |
| `createdAt` | string<date-time> | Creation date in ISO 8601 UTC; null if not recorded. |
| `updatedAt` | string<date-time> | Last modification date in ISO 8601 UTC; null if not recorded. |

*Call · filmo_serialized_items_update*

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "filmo_serialized_items_update",
    "arguments": {
      "serializedItemId": "seri_8f2a1c"
    }
  }
}
```

*Result (generated from the schema)*

```json
{
  "structuredContent": {
    "data": {
      "id": "id_8f2a1c",
      "code": "<code>",
      "serialNumber": "<serialNumber>",
      "status": "<status>",
      "itemId": "item_8f2a1c",
      "itemName": "Example",
      "itemSku": "<itemSku>",
      "itemCollectionName": "Example",
      "createdAt": "2026-09-01T08:00:00Z",
      "updatedAt": "2026-09-01T08:00:00Z"
    },
    "meta": {
      "idempotencyKey": "<the key you sent, or the one the server generated>",
      "rateLimit": {
        "limit": 120,
        "remaining": 119,
        "reset": 42
      }
    }
  }
}
```

## The same operation by REST

This tool runs [`PATCH /api/v1/serialized-items/{serializedItemId}`](https://docs.filmo.io/rest-api/endpoint-reference/items/update-a-serialized-item).

---

Canonical URL: https://docs.filmo.io/mcp/tools/items/filmo-serialized-items-update  
Last updated: 2026-10-25