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

Authorizations

Authorization
string
headerrequired

Your Conductor secret key using Bearer auth (e.g., "Authorization: Bearer {{YOUR_SECRET_KEY}}").

Headers

Conductor-End-User-Id
string
required

The ID of the EndUser to receive this request (e.g., "Conductor-End-User-Id: {{END_USER_ID}}").

Path Parameters

id
string
required

The QuickBooks-assigned unique identifier of the inventory assembly item to update.

Body

application/json
revisionNumber
string
required

The current revision number of the inventory assembly item you are updating, which you can get by fetching the object first. Provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.

name
string

The case-insensitive name of this inventory assembly item. Not guaranteed to be unique because it does not include the names of its parent objects like fullName does. For example, two inventory assembly items could both have the name "Deluxe Kit", but they could have unique fullName values, such as "Assemblies:Deluxe Kit" and "Inventory:Deluxe Kit". Maximum length: 31 characters.

barcode
object

The inventory assembly item's barcode.

isActive
boolean
default: true

Indicates whether this inventory assembly item is active. Inactive objects are typically hidden from views and reports in QuickBooks.

classId
string

The inventory assembly item's class. Classes can be used to categorize objects into meaningful segments, such as department, location, or type of work. In QuickBooks, class tracking is off by default.

parentId
string

The parent inventory assembly item one level above this one in the hierarchy. For example, if this inventory assembly item has a fullName of "Assemblies:Kitchen:Cabinets", its parent has a fullName of "Assemblies:Kitchen". If this inventory assembly item is at the top level, this field will be null.

sku
string

The inventory assembly item's stock keeping unit (SKU), which is sometimes the manufacturer's part number.

unitOfMeasureSetId
string

The unit-of-measure set associated with this inventory assembly item, which consists of a base unit and related units.

forceUnitOfMeasureChange
boolean
default: false

Indicates whether to allow changing the inventory assembly item's unit-of-measure set (using the unitOfMeasureSetId field) when the base unit of the new unit-of-measure set does not match that of the currently assigned set. Without setting this field to true in this scenario, the request will fail with an error; hence, this field is equivalent to accepting the warning prompt in the QuickBooks UI.

NOTE: Changing the base unit requires you to update the item's quantities-on-hand and cost to reflect the new unit; otherwise, these values will be inaccurate. Alternatively, consider creating a new item with the desired unit-of-measure set and deactivating the old item.

salesTaxCodeId
string

The sales-tax code associated with this inventory assembly item, determining whether it is taxable or non-taxable. It's used to assign a default tax status to all transactions for this inventory assembly item. Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks. If QuickBooks is not set up to charge sales tax (via the "Do You Charge Sales Tax?" preference), it will assign the default non-taxable code to all sales.

salesDescription
string

The description of this inventory assembly item that appears on sales forms (e.g., invoices, sales receipts) when sold to customers.

salesPrice
string

The price at which this inventory assembly item is sold to customers, represented as a decimal string.

incomeAccountId
string

The income account used to track revenue from sales of this inventory assembly item.

updateExistingTransactionsIncomeAccount
boolean
default: false

When true, applies the new income account (specified by the incomeAccountId field) to all existing transactions that use this inventory assembly item. If true, the income account will be updated in all historical transactions where this inventory assembly item appears. Be cautious with this setting as it modifies historical data. The update will fail if any affected transactions fall within a closed accounting period. If not specified, QuickBooks will prompt the user to make this choice.

purchaseDescription
string

The description of this inventory assembly item that appears on purchase forms (e.g., checks, bills, item receipts) when it is ordered or bought from vendors.

purchaseCost
string

The cost at which this inventory assembly item is purchased from vendors, represented as a decimal string.

purchaseTaxCodeId
string

The tax code applied to purchases of this inventory assembly item. Applicable in regions where purchase taxes are used, such as Canada or the UK.

cogsAccountId
string

The Cost of Goods Sold (COGS) account for this inventory assembly item, tracking the original direct costs of producing goods sold.

preferredVendorId
string

The preferred vendor from whom this inventory assembly item is typically purchased.

assetAccountId
string

The asset account used to track the current value of this inventory assembly item in inventory.

buildNotificationThreshold
number

The inventory assembly item's minimum quantity threshold that triggers a build notification in QuickBooks. When the sum of quantityOnHand (current inventory) and quantityOnOrder (pending purchase orders) drops below this threshold, QuickBooks will notify users that more units need to be built or assembled. This helps ensure adequate inventory levels for inventory assembly items.

maximumQuantityOnHand
number

The maximum quantity of this inventory assembly item desired in inventory.

clearItemLines
boolean

When true, removes all existing item lines associated with this inventory assembly item. To modify or add individual item lines, use the field itemLines instead.

itemLines
object[]

The inventory assembly item's lines.

Response

200 - application/json
id
string
required

The unique identifier assigned by QuickBooks to this inventory assembly item. This ID is unique across all inventory assembly items but not across different QuickBooks object types.

objectType
string
required

The type of object. This value is always "qbd_inventory_assembly_item".

Allowed value: "qbd_inventory_assembly_item"
createdAt
string
required

The date and time when this inventory assembly item was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm). The time zone is the same as the user's time zone in QuickBooks.

updatedAt
string
required

The date and time when this inventory assembly item was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm). The time zone is the same as the user's time zone in QuickBooks.

revisionNumber
string
required

The current revision number of this inventory assembly item, which changes each time the object is modified. When updating this object, you must provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.

name
string
required

The case-insensitive name of this inventory assembly item. Not guaranteed to be unique because it does not include the names of its parent objects like fullName does. For example, two inventory assembly items could both have the name "Deluxe Kit", but they could have unique fullName values, such as "Assemblies:Deluxe Kit" and "Inventory:Deluxe Kit". Maximum length: 31 characters.

fullName
string
required

The case-insensitive fully-qualified unique name of this inventory assembly item, formed by combining the names of its parent objects with its own name, separated by colons. For example, if an inventory assembly item is under "Assemblies:Kitchen" and has the name "Deluxe Kit", its fullName would be "Assemblies:Kitchen:Deluxe Kit".

Unlike name, fullName is guaranteed to be unique across all inventory assembly item objects. However, fullName can still be arbitrarily changed by the QuickBooks user when they modify the underlying name field.

barcode
string | null
required

The inventory assembly item's barcode.

isActive
boolean
default: truerequired

Indicates whether this inventory assembly item is active. Inactive objects are typically hidden from views and reports in QuickBooks.

class
object | null
required

The inventory assembly item's class. Classes can be used to categorize objects into meaningful segments, such as department, location, or type of work. In QuickBooks, class tracking is off by default.

parent
object | null
required

The parent inventory assembly item one level above this one in the hierarchy. For example, if this inventory assembly item has a fullName of "Assemblies:Kitchen:Cabinets", its parent has a fullName of "Assemblies:Kitchen". If this inventory assembly item is at the top level, this field will be null.

sublevel
number
required

The depth level of this inventory assembly item in the hierarchy. A top-level inventory assembly item has a sublevel of 0; each subsequent sublevel increases this number by 1. For example, an inventory assembly item with a fullName of "Assemblies:Kitchen:Cabinets:Deluxe Kit" would have a sublevel of 3.

sku
string | null
required

The inventory assembly item's stock keeping unit (SKU), which is sometimes the manufacturer's part number.

unitOfMeasureSet
object | null
required

The unit-of-measure set associated with this inventory assembly item, which consists of a base unit and related units.

salesTaxCode
object | null
required

The sales-tax code associated with this inventory assembly item, determining whether it is taxable or non-taxable. It's used to assign a default tax status to all transactions for this inventory assembly item. Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks. If QuickBooks is not set up to charge sales tax (via the "Do You Charge Sales Tax?" preference), it will assign the default non-taxable code to all sales.

salesDescription
string | null
required

The description of this inventory assembly item that appears on sales forms (e.g., invoices, sales receipts) when sold to customers.

salesPrice
string | null
required

The price at which this inventory assembly item is sold to customers, represented as a decimal string.

incomeAccount
object | null
required

The income account used to track revenue from sales of this inventory assembly item.

purchaseDescription
string | null
required

The description of this inventory assembly item that appears on purchase forms (e.g., checks, bills, item receipts) when it is ordered or bought from vendors.

purchaseCost
string | null
required

The cost at which this inventory assembly item is purchased from vendors, represented as a decimal string.

purchaseTaxCode
object | null
required

The tax code applied to purchases of this inventory assembly item. Applicable in regions where purchase taxes are used, such as Canada or the UK.

cogsAccount
object | null
required

The Cost of Goods Sold (COGS) account for this inventory assembly item, tracking the original direct costs of producing goods sold.

preferredVendor
object | null
required

The preferred vendor from whom this inventory assembly item is typically purchased.

assetAccount
object | null
required

The asset account used to track the current value of this inventory assembly item in inventory.

buildNotificationThreshold
number | null
required

The inventory assembly item's minimum quantity threshold that triggers a build notification in QuickBooks. When the sum of quantityOnHand (current inventory) and quantityOnOrder (pending purchase orders) drops below this threshold, QuickBooks will notify users that more units need to be built or assembled. This helps ensure adequate inventory levels for inventory assembly items.

maximumQuantityOnHand
number | null
required

The maximum quantity of this inventory assembly item desired in inventory.

quantityOnHand
number | null
required

The current quantity of this inventory assembly item available in inventory. To change the quantityOnHand for an inventory assembly item, you must create an inventory-adjustment instead of updating this inventory assembly item directly.

averageCost
string | null
required

The average cost per unit of this inventory assembly item, represented as a decimal string.

quantityOnOrder
number | null
required

The number of units of this inventory assembly item that have been ordered from vendors (as recorded in purchase orders) but not yet received.

quantityOnSalesOrder
number | null
required

The number of units of this inventory assembly item that have been sold (as recorded in sales orders) but not yet fulfilled or delivered to customers.

externalId
string | null
required

A globally unique identifier (GUID) you can provide for tracking this object in your external system.

IMPORTANT: Must be formatted as a valid GUID; otherwise, QuickBooks will return an error. This field is immutable and can only be set during object creation.

itemLines
object[]
required

The inventory assembly item's lines.

customFields
object[]
required

The custom fields for the inventory assembly item object, added as user-defined data extensions, not included in the standard QuickBooks object.