---
title: "Changes to Update an inventory item"
method: POST
path: "/quickbooks-desktop/inventory-items/{id}"
---

# Changes to Update an inventory item

`POST /quickbooks-desktop/inventory-items/{id}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 7 of 60 revisions.

- **2026-10-19** `1396ed78f0e1`: 4 warning
- **2026-08-21** `79f6b2f97e3e`: 6 breaking, 2 info
- **2026-05-02** `1de07095c4b7`: 10 warning
- **2026-04-20** `10d4e9ebd1df`: 38 breaking, 7 info
- **2026-04-20** `8e0b7df2044d`: 31 breaking, 38 info
- **2026-04-20** `5f832f695675`: 38 breaking, 7 info
- **2026-04-15** `8e0b7df2044d`: 1 breaking

## Changes

- **2026-10-19** `1396ed78f0e1`: 4 warning
  - the `barcode/value` request property's maxLength was set to `50`
  - the `purchaseDescription` request property's maxLength was set to `4095`
  - the `salesDescription` request property's maxLength was set to `4095`
  - the `sku` request property's maxLength was set to `31`
- **2026-08-21** `79f6b2f97e3e`: 6 breaking, 2 info
  - the `assetAccount` response's property type changed from `object` to no type for status `200`
  - the `cogsAccount` response's property type changed from `object` to no type for status `200`
  - removed the required property `assetAccount/fullName` from the response with the `200` status
  - removed the required property `assetAccount/id` from the response with the `200` status
  - removed the required property `cogsAccount/fullName` from the response with the `200` status
  - removed the required property `cogsAccount/id` from the response with the `200` status
  - added `subschema #1, subschema #2` to the `assetAccount` response property `anyOf` list for the response status `200`
  - added `subschema #1, subschema #2` to the `cogsAccount` response property `anyOf` list for the response status `200`
- **2026-05-02** `1de07095c4b7`: 10 warning
  - for the `path` request parameter `id`, the maxLength was set to `36`
  - the `assetAccountId` request property's maxLength was set to `36`
  - the `classId` request property's maxLength was set to `36`
  - the `cogsAccountId` request property's maxLength was set to `36`
  - the `incomeAccountId` request property's maxLength was set to `36`
  - the `parentId` request property's maxLength was set to `36`
  - the `preferredVendorId` request property's maxLength was set to `36`
  - the `purchaseTaxCodeId` request property's maxLength was set to `36`
  - the `salesTaxCodeId` request property's maxLength was set to `36`
  - the `unitOfMeasureSetId` request property's maxLength was set to `36`
- **2026-04-20** `10d4e9ebd1df`: 38 breaking, 7 info
  - response property `assetAccount/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `assetAccount/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `averageCost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `barcode` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `cogsAccount/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `cogsAccount/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `externalId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `maximumQuantityOnHand` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `purchaseCost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `purchaseDescription` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnHand` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnPurchaseOrder` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnSalesOrder` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reorderPoint` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesDescription` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesPrice` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `sku` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `class` response's property type changed from `object, null` to no type for status `200`
  - the `incomeAccount` response's property type changed from `object, null` to no type for status `200`
  - the `parent` response's property type changed from `object, null` to no type for status `200`
  - the `preferredVendor` response's property type changed from `object, null` to no type for status `200`
  - the `purchaseTaxCode` response's property type changed from `object, null` to no type for status `200`
  - the `salesTaxCode` response's property type changed from `object, null` to no type for status `200`
  - the `unitOfMeasureSet` response's property type changed from `object, null` to no type for status `200`
  - removed the required property `class/fullName` from the response with the `200` status
  - removed the required property `class/id` from the response with the `200` status
  - removed the required property `incomeAccount/fullName` from the response with the `200` status
  - removed the required property `incomeAccount/id` from the response with the `200` status
  - removed the required property `parent/fullName` from the response with the `200` status
  - removed the required property `parent/id` from the response with the `200` status
  - removed the required property `preferredVendor/fullName` from the response with the `200` status
  - removed the required property `preferredVendor/id` from the response with the `200` status
  - removed the required property `purchaseTaxCode/fullName` from the response with the `200` status
  - removed the required property `purchaseTaxCode/id` from the response with the `200` status
  - removed the required property `salesTaxCode/fullName` from the response with the `200` status
  - removed the required property `salesTaxCode/id` from the response with the `200` status
  - removed the required property `unitOfMeasureSet/fullName` from the response with the `200` status
  - removed the required property `unitOfMeasureSet/id` from the response with the `200` status
  - added `subschema #1, subschema #2` to the `class` response property `anyOf` list for the response status `200`
  - added `subschema #1, subschema #2` to the `incomeAccount` response property `anyOf` list for the response status `200`
  - …5 more
- **2026-04-20** `8e0b7df2044d`: 31 breaking, 38 info
  - the response property `assetAccount/fullName` became nullable for the status `200`
  - the response property `assetAccount/id` became nullable for the status `200`
  - the response property `averageCost` became nullable for the status `200`
  - the response property `barcode` became nullable for the status `200`
  - the response property `class` became nullable for the status `200`
  - the response property `cogsAccount/fullName` became nullable for the status `200`
  - the response property `cogsAccount/id` became nullable for the status `200`
  - the response property `externalId` became nullable for the status `200`
  - the response property `incomeAccount` became nullable for the status `200`
  - the response property `maximumQuantityOnHand` became nullable for the status `200`
  - the response property `parent` became nullable for the status `200`
  - the response property `preferredVendor` became nullable for the status `200`
  - the response property `purchaseCost` became nullable for the status `200`
  - the response property `purchaseDescription` became nullable for the status `200`
  - the response property `purchaseTaxCode` became nullable for the status `200`
  - the response property `quantityOnHand` became nullable for the status `200`
  - the response property `quantityOnPurchaseOrder` became nullable for the status `200`
  - the response property `quantityOnSalesOrder` became nullable for the status `200`
  - the response property `reorderPoint` became nullable for the status `200`
  - the response property `salesDescription` became nullable for the status `200`
  - the response property `salesPrice` became nullable for the status `200`
  - the response property `salesTaxCode` became nullable for the status `200`
  - the response property `sku` became nullable for the status `200`
  - the response property `unitOfMeasureSet` became nullable for the status `200`
  - the `class` response's property type changed from no type to `object, null` for status `200`
  - the `incomeAccount` response's property type changed from no type to `object, null` for status `200`
  - the `parent` response's property type changed from no type to `object, null` for status `200`
  - the `preferredVendor` response's property type changed from no type to `object, null` for status `200`
  - the `purchaseTaxCode` response's property type changed from no type to `object, null` for status `200`
  - the `salesTaxCode` response's property type changed from no type to `object, null` for status `200`
  - the `unitOfMeasureSet` response's property type changed from no type to `object, null` for status `200`
  - removed `subschema #1, subschema #2` from the `class` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `incomeAccount` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `parent` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `preferredVendor` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `purchaseTaxCode` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `salesTaxCode` response property `anyOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the `unitOfMeasureSet` response property `anyOf` list for the response status `200`
  - response property `assetAccount/fullName` list-of-types was narrowed by removing types `null` from media type `application/json` of response `200`
  - response property `assetAccount/id` list-of-types was narrowed by removing types `null` from media type `application/json` of response `200`
  - …29 more
- **2026-04-20** `5f832f695675`: 38 breaking, 7 info
  - response property `assetAccount/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `assetAccount/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `averageCost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `barcode` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `cogsAccount/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `cogsAccount/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `externalId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `maximumQuantityOnHand` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `purchaseCost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `purchaseDescription` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnHand` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnPurchaseOrder` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `quantityOnSalesOrder` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reorderPoint` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesDescription` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesPrice` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `sku` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `class` response's property type changed from `object, null` to no type for status `200`
  - the `incomeAccount` response's property type changed from `object, null` to no type for status `200`
  - the `parent` response's property type changed from `object, null` to no type for status `200`
  - the `preferredVendor` response's property type changed from `object, null` to no type for status `200`
  - the `purchaseTaxCode` response's property type changed from `object, null` to no type for status `200`
  - the `salesTaxCode` response's property type changed from `object, null` to no type for status `200`
  - the `unitOfMeasureSet` response's property type changed from `object, null` to no type for status `200`
  - removed the required property `class/fullName` from the response with the `200` status
  - removed the required property `class/id` from the response with the `200` status
  - removed the required property `incomeAccount/fullName` from the response with the `200` status
  - removed the required property `incomeAccount/id` from the response with the `200` status
  - removed the required property `parent/fullName` from the response with the `200` status
  - removed the required property `parent/id` from the response with the `200` status
  - removed the required property `preferredVendor/fullName` from the response with the `200` status
  - removed the required property `preferredVendor/id` from the response with the `200` status
  - removed the required property `purchaseTaxCode/fullName` from the response with the `200` status
  - removed the required property `purchaseTaxCode/id` from the response with the `200` status
  - removed the required property `salesTaxCode/fullName` from the response with the `200` status
  - removed the required property `salesTaxCode/id` from the response with the `200` status
  - removed the required property `unitOfMeasureSet/fullName` from the response with the `200` status
  - removed the required property `unitOfMeasureSet/id` from the response with the `200` status
  - added `subschema #1, subschema #2` to the `class` response property `anyOf` list for the response status `200`
  - added `subschema #1, subschema #2` to the `incomeAccount` response property `anyOf` list for the response status `200`
  - …5 more
- **2026-04-15** `8e0b7df2044d`: 1 breaking
  - the response property `incomeAccount` became nullable for the status `200`

---

[Operation](https://skmtc.dev/conductor-is/apis/conductor-api/docs/quickbooks-desktop/inventory-items/:id/post.md) - [API](https://skmtc.dev/conductor-is/apis/conductor-api.md) - [Page](https://skmtc.dev/conductor-is/apis/conductor-api/changes/quickbooks-desktop/inventory-items/:id/post)
