---
title: "Update Asset"
method: PATCH
path: "/claims/{claim_id}/expenditures/assets/{asset_id}"
tags: ["expenditures"]
---

# Update Asset

`PATCH /claims/{claim_id}/expenditures/assets/{asset_id}`

## Request

- Base URL: `https://api.claimkit.co` (the document declares no server; this is the origin it was published from)
- URL: `https://api.claimkit.co/claims/{claim_id}/expenditures/assets/{asset_id}`
- Auth: none declared

Admin-only: edit a depreciating asset. PATCH semantics — only the fields
present in the JSON change.

## Path parameters

- `claim_id` integer, required
- `asset_id` integer, required

## Request body

- AssetUpdate: PATCH payload. Only fields present in the JSON are applied; explicit null clears ``rd_percentage`` / ``activity_id`` / ``description``. When present, ``apportionments`` replaces the full activity split and is authoritative over the legacy cache fields. Required fields (name, cost, acquisition_date, effective_life_years, method) cannot be cleared — distinguish "absent" from "null" via ``model_fields_set``.
  - `name` string, nullable
  - `cost` union
    - number
    - string
  - `acquisition_date` string, date, nullable
  - `effective_life_years` union
    - number
    - string
  - `method` string, nullable
  - `rd_percentage` union
    - number
    - string
  - `activity_id` integer, nullable
  - `apportionments` ItemApportionmentInput[], nullable
    - `activity_id` integer, required
    - `percentage` union, required
      - number
      - string
  - `description` string, nullable

## Response `200`

Successful Response

- AssetResponse
  - `id` integer, required
  - `name` string, required
  - `cost` number, nullable, required
  - `acquisition_date` string, required
  - `effective_life_years` number, nullable, required
  - `method` string, required
  - `rd_percentage` number, nullable, required
  - `percentage` number, nullable
  - `activity_id` integer, nullable, required
  - `apportionments` ApportionmentOut[]
    - `activity_id` integer, required
    - `activity_name` string, nullable
    - `percentage` number, required
  - `description` string, nullable, required
  - `source` string, required
  - `source_item_id` integer, nullable
  - `fy_decline` number, nullable, required
  - `rd_amount` number, nullable, required

## Other responses

- `422`: Validation Error

---

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