---
title: "Create Item"
method: POST
path: "/claims/{claim_id}/expenditures/items"
tags: ["expenditures"]
---

# Create Item

`POST /claims/{claim_id}/expenditures/items`

## 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/items`
- Auth: none declared

Admin-only: create a single expenditure item by hand. Used by the
"Add expense" popup on the expenditure page to plug gaps between
bookkeeping imports. Rows are grouped under a per-claim "Manual entries"
:class:`AURDExpenditureImport` and are marked ``manual_override=True``.

## Path parameters

- `claim_id` integer, required

## Request body

- ItemCreate: Payload for manually creating a single expenditure item via the admin "Add expense" dialog. All rows created through this surface get ``manual_override=True``.
  - `name` string, required
  - `source_amount` union, required
    - number
    - string
  - `source_date` string, date, nullable
  - `description` string, nullable
  - `category` string, nullable
  - `eligibility` 'r_and_d' | 'non_eligible'
  - `rd_percentage` union
    - number
    - string
  - `activity_id` integer, nullable

## Response `201`

Successful Response

- ItemResponse
  - `id` integer, required
  - `import_id` integer, nullable, required
  - `source_sheet` string, required
  - `name` string, required
  - `description` string, nullable, required
  - `note` string, nullable
  - `source_amount` number, nullable, required
  - `source_date` string, nullable, required
  - `source_account_code` string, nullable, required
  - `source_account_name` string, nullable
  - `source_employee_name` string, nullable, required
  - `source_department` string, nullable, required
  - `source_tax_amount` number, nullable
  - `category` string, nullable, required
  - `subgroup_key` string, nullable, required
  - `activity_id` integer, nullable, required
  - `eligibility` string, required
  - `rd_percentage` number, nullable, required
  - `rd_amount` number, nullable, required
  - `manual_override` boolean, required
  - `manual_override_by_admin` boolean, nullable
  - `auto_categorised` boolean
  - `import_source_type` string, nullable
  - `open_query_count` integer
  - `apportionments` ApportionmentOut[]
    - `activity_id` integer, required
    - `activity_name` string, nullable
    - `percentage` number, required
  - `refund_of_item_id` integer, nullable
  - `refund_of_item_name` string, nullable
  - `distribution_linked` boolean
  - `distribution_link_source` string, nullable
  - `distribution_scope` string, nullable

## 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)
