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:

Quotes

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
  • The taxCategoryID value for productID, chargeID, and expenseID is pulled from the associated billing code; shippingID or laborID use the value passed in. If there is no value for taxCategoryID, the item is not subject to tax.
  • totalEffectiveTax

    totalEffectiveTax = the value of taxID where Tax.taxCategoryID = QuoteItem.taxCategoryID and Tax.taxRegionID = Quote.taxGroupID.

    type

    If type = 1 (Product)

    • periodType value is required.
    • The periodType CANNOT be semi-annual. Only month, quarter, year, and one-time period types are allowed for Product.

    If type = 2 (Cost), 3 (Labor), 4 (Expense), or 6 (Shipping), then

    • periodType must = OneTime. If any other periodType value is supplied on create or update, it is ignored.

    If type = 10 (Discount) then

    • You CANNOT HAVE a QuoteItem.lineDiscount value, that is, only QuoteItem.unitDiscount and QuoteItem.percentageDiscount are valid.

    If type = 11 (Service), then

    • serviceID value is required.
    • If no value is provided on create or update, unitCost will default to the unit cost set for that Service in the Admin module.

    If type = 12 (ServiceBundle), then

    • serviceBundleID value is required.
    • unitCost will default to the sum of the unit costs for all Services within that bundle.

    If type = 13 (ContractSetup), then

    • QuoteItem.unitDiscount, QuoteItem.percentageDiscount, and QuoteItem.lineDiscount must be ZERO (or not present), that is, there are no discounts allowed on Setup Fees.
    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

    Field Name Datatype Read-Only Is Required Reference Name Picklist
    averageCost decimal      
    chargeID integer     ProjectCharges  
    description string (2000)        
    expenseID integer     ProjectCharges  
    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        

    Additional resources