QuoteItems
This entity describes an Autotask Quote Item. Quote Items define a line item added to an Autotask Quote. Users can select quote items from labor rates (roles), products, services, material costs and expense lists, or manually enter one time quote items.
NOTE You can refer to the Online Help to find root and child access URLs of the entity you wish to query. Refer to Finding resource and child access URLs of REST API entities for more information.
Entity details
Entity Name: | QuoteItem |
Entity Path: |
/atservicesrest/v1.0/QuoteItems |
Parent Entity: |
|
Can Create: | |
Can Update: | |
Can Query: | |
Can Delete: | |
Can Have UDFs: |
Fields that cannot be queried
The following fields from this entity will return an error when queried.
- averageCost
- highestCost
Conditions and requirements
General
- Each QuoteItem entity allows only one "Item" field; that is, only one of the following fields: productID, chargeID, laborID, expenseID, shippingID, serviceID, serviceBundleID, is allowed for each QuoteItem entity that you create.
- A QuoteItem can have no discount or only one type of discount. If no discount is applied, unitDiscount, percentageDiscount, and lineDiscount must = 0. When a discount is applied, only one of these fields can have a value > 0. The other two must = 0.
- If the Multi-currency Installed Module is enabled, the following fields will return the relevant Customer Currency values instead of the Internal Currency values: lineDiscount, unitDiscount, and unitPrice.
- The following fields will return the saved Internal Currency values: internalCurrencyLineDiscount, internalCurrencyUnitDiscount, and internalCurrencyUnitPrice.
Special field attributes
Field | Conditions and Requirements |
---|---|
averageCost |
This entity field will return no information if the user account making the query does not have sufficient privileges to view cost data in the Autotask UI. Additionally, if an update request does not have the necessary permissions, the API will ignore the call's values for the field even if they are blank or would be otherwise required. |
chargeID | Any BillingCode entity referenced by QuoteItem.chargeID must be of Type = Material Cost. |
expenseID | Any BillingCode referenced by QuoteItem.expenseID must be of Type = Expenses. |
highestCost |
This entity field will return no information if the user account making the query does not have sufficient privileges to view cost data in the Autotask UI. Additionally, if an update request does not have the necessary permissions, the API will ignore the call's values for the field even if they are blank or would be otherwise required. |
isTaxable |
isTaxable = True if the QuoteItem is assigned a taxCategoryID, the associated Quote is assigned a TaxGroupID (Tax Region ID), and totalEffectiveTax > 0. |
name |
Name is required and must be present except where QuoteItem.Type = Service or ServiceBundle (type 11 or 12). This field is conditionally read-only. It will act as read-only when the QuoteItem.Type is Service or Service Bundle (type 11 or 12). Any value that you supply during Create or Update requests will be ignored. The value from the Service or Service Bundle in Admin will persist. |
taxCategoryID |
|
totalEffectiveTax |
totalEffectiveTax = the value of taxID where Tax.taxCategoryID = QuoteItem.taxCategoryID and Tax.taxRegionID = Quote.taxGroupID. |
type |
If type = 1 (Product)
If type = 2 (Cost), 3 (Labor), 4 (Expense), or 6 (Shipping), then
If type = 10 (Discount) then
If type = 11 (Service), then
If type = 12 (ServiceBundle), then
If type = 13 (ContractSetup), then
|
unitCost |
QuoteItem.unitCost must be ZERO (or not present), that is, there are no costs allowed on Setup Fees. This entity field will return no information if the user account making the query does not have sufficient privileges to view cost data in the Autotask UI. Additionally, if an update request does not have the necessary permissions, the API will ignore the call's values for the field even if they are blank or would be otherwise required. |
Field definitions
The following table describes the standard Autotask fields for this entity. Refer to the following articles for more information about working with these fields:
- The entityInformation REST API call
- Making basic query calls to the REST API
- Advanced query features of the REST API
To learn how to query picklist endpoints, refer to Understanding picklists.
Notes
- For string datatypes, the number in parentheses ( ) indicates the maximum number of characters allowed.
- LT indicates Local Term.
- If this entity has child collections, they will appear in a Child collection access URLs or an Entity URLs and relationships drop-down in the Entity details section of this article.
- You can call the /query/count/ endpoint of a resource to determine how many records a collection holds.
Field Name | Datatype | Read-Only | Is Required | Reference Name | Picklist |
---|---|---|---|---|---|
averageCost | decimal | ||||
chargeID | integer | BillingCodes | |||
description | string (2000) | ||||
expenseID | integer | BillingCodes | |||
highestCost | decimal | ||||
id | long | ||||
internalCurrencyLineDiscount (Multi-currency module only) | decimal | ||||
internalCurrencyUnitDiscount (Multi-currency module only) | decimal | ||||
internalCurrencyUnitPrice (Multi-currency module only) | decimal | ||||
isOptional | boolean | ||||
isTaxable | boolean | ||||
laborID | integer | Roles | |||
lineDiscount | decimal | ||||
markupRate | decimal | ||||
name | string (1000) | ||||
percentageDiscount | decimal | ||||
periodType | integer | ||||
productID | integer | Products | |||
quantity | decimal | ||||
quoteID | integer | Quotes | |||
quoteItemType |
integer |
|
|
|
|
serviceBundleID | integer | ServiceBundles | |||
serviceID | integer | Services | |||
shippingID | integer | ShippingTypes | |||
sortOrderID |
integer |
|
|
|
|
taxCategoryID | integer | TaxCategories | |||
totalEffectiveTax | decimal | ||||
unitCost | decimal | ||||
unitDiscount | decimal | ||||
unitPrice | decimal |