import Conductor from 'conductor-node';const conductor = new Conductor({ apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted});const estimate = await conductor.qbd.estimates.create({ customerId: '80000001-1234567890', transactionDate: '2024-10-01', conductorEndUserId: 'end_usr_1234567abcdefg',});console.log(estimate.id);
import os
from datetime import date
from conductor import Conductor
conductor = Conductor(
api_key=os.environ.get("CONDUCTOR_SECRET_KEY"), # This is the default and can be omitted
)
estimate = conductor.qbd.estimates.create(
customer_id="80000001-1234567890",
transaction_date=date.fromisoformat("2024-10-01"),
conductor_end_user_id="end_usr_1234567abcdefg",
)
print(estimate.id)
import Conductor from 'conductor-node';const conductor = new Conductor({ apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted});const estimate = await conductor.qbd.estimates.create({ customerId: '80000001-1234567890', transactionDate: '2024-10-01', conductorEndUserId: 'end_usr_1234567abcdefg',});console.log(estimate.id);
import os
from datetime import date
from conductor import Conductor
conductor = Conductor(
api_key=os.environ.get("CONDUCTOR_SECRET_KEY"), # This is the default and can be omitted
)
estimate = conductor.qbd.estimates.create(
customer_id="80000001-1234567890",
transaction_date=date.fromisoformat("2024-10-01"),
conductor_end_user_id="end_usr_1234567abcdefg",
)
print(estimate.id)
The estimate'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. A class defined here is automatically used in this estimate's line items unless overridden at the line item level.
The case-sensitive user-defined reference number for this estimate, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user. When left blank in this create request, this field will be left blank in QuickBooks (i.e., it does not auto-increment).
The customer's Purchase Order (PO) number associated with this estimate. This field is often used to cross-reference the estimate with the customer's purchasing system.
The origin location from where the product associated with this estimate is shipped. This is the point at which ownership and liability for goods transfer from seller to buyer. Internally, QuickBooks uses the term "FOB" for this field, which stands for "freight on board". This field is informational and has no accounting implications.
The sales-tax item used to calculate the actual tax amount for this estimate's transactions by applying a specific tax rate collected for a single tax agency. Unlike salesTaxCode, which only indicates general taxability, this field drives the actual tax calculation and reporting.
The sales-tax code for this estimate, determining whether it is taxable or non-taxable. This can be overridden at the transaction-line level.
Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the "Do You Charge Sales Tax?" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.
A built-in custom field for additional information specific to this estimate. Unlike the user-defined fields in the customFields array, this is a standard QuickBooks field that exists for all estimates for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Unlike otherCustomField1 and otherCustomField2, which are line item fields, this exists at the transaction level. Hidden by default in the QuickBooks UI.
The market exchange rate between this estimate's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).
A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.
IMPORTANT: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.
The date and time when this estimate was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.
The date and time when this estimate was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.
The current QuickBooks-assigned revision number of this estimate object, 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.
The estimate'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. A class defined here is automatically used in this estimate's line items unless overridden at the line item level.
The case-sensitive user-defined reference number for this estimate, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.
The customer's Purchase Order (PO) number associated with this estimate. This field is often used to cross-reference the estimate with the customer's purchasing system.
The origin location from where the product associated with this estimate is shipped. This is the point at which ownership and liability for goods transfer from seller to buyer. Internally, QuickBooks uses the term "FOB" for this field, which stands for "freight on board". This field is informational and has no accounting implications.
The sales-tax item used to calculate the actual tax amount for this estimate's transactions by applying a specific tax rate collected for a single tax agency. Unlike salesTaxCode, which only indicates general taxability, this field drives the actual tax calculation and reporting.
Show child attributes
Example:
{ "id": "80000001-1234567890", "fullName": "State Sales Tax" }
The estimate's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.
The market exchange rate between this estimate's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).
The sales-tax code for this estimate, determining whether it is taxable or non-taxable. This can be overridden at the transaction-line level.
Default codes include "Non" (non-taxable) and "Tax" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the "Do You Charge Sales Tax?" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.
A built-in custom field for additional information specific to this estimate. Unlike the user-defined fields in the customFields array, this is a standard QuickBooks field that exists for all estimates for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Unlike otherCustomField1 and otherCustomField2, which are line item fields, this exists at the transaction level. Hidden by default in the QuickBooks UI.
A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.
The estimate's linked transactions, such as payments applied, credits used, or associated purchase orders.
IMPORTANT: You must specify the parameter includeLinkedTransactions when fetching a list of estimates to receive this field because it is not returned by default.
The custom fields for the estimate object, added as user-defined data extensions, not included in the standard QuickBooks object.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Conductor Docs","colors":{"primary":"#9563FF","light":"#AE87FF","dark":"#0D001D"},"logo":{"light":"https://mintcdn.com/conductor/hjDC6C2Dz4sn63AO/logo/light.png?fit=max\u0026auto=format\u0026n=hjDC6C2Dz4sn63AO\u0026q=85\u0026s=43ebf17eb46ef6256a508d4fac23b3bf","dark":"https://mintcdn.com/conductor/hjDC6C2Dz4sn63AO/logo/dark.png?fit=max\u0026auto=format\u0026n=hjDC6C2Dz4sn63AO\u0026q=85\u0026s=dbd4c90195fb31cbae682dd4bfb98350","href":"https://conductor.is"},"favicon":"https://mintcdn.com/conductor/79gIlu1T1D-ycZhm/favicon.png?fit=max\u0026auto=format\u0026n=79gIlu1T1D-ycZhm\u0026q=85\u0026s=52c2193ef1a37fb3c2a843f148178e26","api":{"openapi":"openapi.documented.yml","playground":{"display":"interactive"}},"background":{"color":{"dark":"#090014"}},"navbar":{"links":[{"href":"mailto:support@conductor.is?subject=Conductor Help","label":"Support"},{"href":"https://dashboard.conductor.is","label":"Dashboard"}],"primary":{"type":"button","label":"Sign up","href":"https://dashboard.conductor.is/sign-up"}},"footer":{"socials":{"twitter":"https://twitter.com/conductor_is","github":"https://github.com/conductor-is","linkedin":"https://linkedin.com/company/conductor-is"},"links":[{"header":"Product","items":[{"label":"Core","href":"https://conductor.is/"},{"label":"FAQ","href":"https://docs.conductor.is/faq"},{"label":"Security","href":"https://docs.conductor.is/security"},{"label":"Testimonials","href":"https://conductor.is/"},{"label":"Pricing","href":"https://conductor.is/"}]},{"header":"Resources","items":[{"label":"Documentation","href":"https://docs.conductor.is"},{"label":"Help Center","href":"https://docs.conductor.is/help"},{"label":"Status","href":"https://status.conductor.is"},{"label":"Quickstart","href":"https://docs.conductor.is/quickstart"}]},{"header":"Company","items":[{"label":"About","href":"https://conductor.is/company"},{"label":"Values","href":"https://conductor-io.notion.site/Conductor-s-Values-83e9eb6e4e4d40a2973b24513dc60f99?pvs=4"},{"label":"Contact","href":"mailto:support@conductor.is?subject=Conductor Help"}]},{"header":"Legal","items":[{"label":"Privacy Policy","href":"https://conductor.is/privacy"},{"label":"Terms of Service","href":"https://conductor.is/terms"},{"label":"Trust Center","href":"https://trust.conductor.is"}]}]},"styling":{"codeblocks":"system","latex":false},"integrations":{"ga4":{"measurementId":"G-X8MDB0LXNF"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"conductor","hasAudioNarration":false,"actualSubdomain":"conductor","customDomains":["docs.conductor.is"],"gitSource":{"type":"github","owner":"conductor-is","repo":"conductor","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae2a147c25d5899be6b563f","collectionId":"d98a652d-e786-4770-b017-4197fbe10d31","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae2a147c25d5899be6b563f"},"feedback":{"edits":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae2a147c25d5899be6b563f","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"API Reference","count":337},{"language":"default","tag":"Transactions","count":160},{"language":"default","tag":"General","count":104},{"language":"default","tag":"Items","count":53},{"language":"default","tag":"Help","count":25},{"language":"default","tag":"Documentation","count":15},{"language":"default","tag":"Guides","count":14},{"language":"default","tag":"Reports","count":11},{"language":"default","tag":"QuickBooks Desktop API","count":10},{"language":"default","tag":"Connection errors","count":9}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-ref/qbd/estimates/create","slug":"/api-ref/qbd/estimates/create","pageMetadata":{"openapi":"POST /quickbooks-desktop/estimates","title":"Create an estimate","description":"Creates a new estimate.","href":"/api-ref/qbd/estimates/create"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Creates a new estimate.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"system","config":{},"pageMetadata":{"openapi":"POST /quickbooks-desktop/estimates","title":"Create an estimate","description":"Creates a new estimate.","href":"/api-ref/qbd/estimates/create"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Create an estimate","description":"Creates a new estimate.","security":["b7fc009d-1a16-453a-a5b5-da53b28fe6b2"],"parameters":["bc4b78f4-36f6-414b-98f6-a8d18ed2e08a"],"requestBody":"a46ba27e-7b44-4279-b6f5-b828100e4c02","responses":{"200":"c563ad96-9fa7-4e6b-8ffa-a129c2adf8b6"},"x-codeSamples":[{"lang":"JavaScript","source":"import Conductor from 'conductor-node';\n\nconst conductor = new Conductor({\n apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted\n});\n\nconst estimate = await conductor.qbd.estimates.create({\n customerId: '80000001-1234567890',\n transactionDate: '2024-10-01',\n conductorEndUserId: 'end_usr_1234567abcdefg',\n});\n\nconsole.log(estimate.id);"},{"lang":"Python","source":"import os\nfrom datetime import date\nfrom conductor import Conductor\n\nconductor = Conductor(\n api_key=os.environ.get(\"CONDUCTOR_SECRET_KEY\"), # This is the default and can be omitted\n)\nestimate = conductor.qbd.estimates.create(\n customer_id=\"80000001-1234567890\",\n transaction_date=date.fromisoformat(\"2024-10-01\"),\n conductor_end_user_id=\"end_usr_1234567abcdefg\",\n)\nprint(estimate.id)"}],"method":"post","type":"path","servers":["045cea4d-dfb6-46e4-9c51-52452b7b239b"],"path":"/quickbooks-desktop/estimates","baseUrlOptions":["https://api.conductor.is/v1"],"title":"Create an estimate","codeSamples":[{"lang":"JavaScript","source":"import Conductor from 'conductor-node';\n\nconst conductor = new Conductor({\n apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted\n});\n\nconst estimate = await conductor.qbd.estimates.create({\n customerId: '80000001-1234567890',\n transactionDate: '2024-10-01',\n conductorEndUserId: 'end_usr_1234567abcdefg',\n});\n\nconsole.log(estimate.id);"},{"lang":"Python","source":"import os\nfrom datetime import date\nfrom conductor import Conductor\n\nconductor = Conductor(\n api_key=os.environ.get(\"CONDUCTOR_SECRET_KEY\"), # This is the default and can be omitted\n)\nestimate = conductor.qbd.estimates.create(\n customer_id=\"80000001-1234567890\",\n transaction_date=date.fromisoformat(\"2024-10-01\"),\n conductor_end_user_id=\"end_usr_1234567abcdefg\",\n)\nprint(estimate.id)"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"bc4b78f4-36f6-414b-98f6-a8d18ed2e08a":{"in":"header","name":"Conductor-End-User-Id","schema":{"type":"string","description":"The ID of the End-User to receive this request.","example":"end_usr_1234567abcdefg","x-stainless-naming":{"typescript":{"method_argument":"conductorEndUserId"},"mcp":{"method_argument":"conductorEndUserId"}},"isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"The ID of the End-User to receive this request."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"customerId":{"description":"The customer or customer-job associated with this estimate.","example":"80000001-1234567890","type":"string","maxLength":36,"isRequired":true,"uniqueKey":"customerId","typeLabel":"string"},"transactionDate":{"type":"string","format":"date","description":"The date of this estimate, in ISO 8601 format (YYYY-MM-DD).","example":"2024-10-01","isRequired":true,"uniqueKey":"transactionDate","typeLabel":"string\u003cdate>"},"classId":{"description":"The estimate'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. A class defined here is automatically used in this estimate's line items unless overridden at the line item level.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"classId","typeLabel":"string"},"documentTemplateId":{"description":"The predefined template in QuickBooks that determines the layout and formatting for this estimate when printed or displayed.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"documentTemplateId","typeLabel":"string"},"refNumber":{"description":"The case-sensitive user-defined reference number for this estimate, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user. When left blank in this create request, this field will be left blank in QuickBooks (i.e., it does *not* auto-increment).\n\nMaximum length: 11 characters.","example":"EST-1234","type":"string","maxLength":11,"uniqueKey":"refNumber","typeLabel":"string"},"billingAddress":{"description":"The estimate's billing address.","type":"object","properties":{"line1":{"description":"The first line of the address (e.g., street, PO Box, or company name).\n\nMaximum length: 41 characters.","example":"Conductor Labs Inc.","type":"string","maxLength":41,"uniqueKey":"billingAddress.line1","typeLabel":"string"},"line2":{"description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).\n\nMaximum length: 41 characters.","example":"540 Market St.","type":"string","maxLength":41,"uniqueKey":"billingAddress.line2","typeLabel":"string"},"line3":{"description":"The third line of the address, if needed.\n\nMaximum length: 41 characters.","example":"Suite 100","type":"string","maxLength":41,"uniqueKey":"billingAddress.line3","typeLabel":"string"},"line4":{"description":"The fourth line of the address, if needed.\n\nMaximum length: 41 characters.","example":"","type":"string","maxLength":41,"uniqueKey":"billingAddress.line4","typeLabel":"string"},"line5":{"description":"The fifth line of the address, if needed.\n\nMaximum length: 41 characters.","example":"","type":"string","maxLength":41,"uniqueKey":"billingAddress.line5","typeLabel":"string"},"city":{"description":"The city, district, suburb, town, or village name of the address.\n\nMaximum length: 31 characters.","example":"San Francisco","type":"string","maxLength":31,"uniqueKey":"billingAddress.city","typeLabel":"string"},"state":{"description":"The state, county, province, or region name of the address.\n\nMaximum length: 21 characters.","example":"CA","type":"string","maxLength":21,"uniqueKey":"billingAddress.state","typeLabel":"string"},"postalCode":{"description":"The postal code or ZIP code of the address.\n\nMaximum length: 13 characters.","example":"94110","type":"string","maxLength":13,"uniqueKey":"billingAddress.postalCode","typeLabel":"string"},"country":{"description":"The country name of the address.\n\nMaximum length: 31 characters.","example":"United States","type":"string","maxLength":31,"uniqueKey":"billingAddress.country","typeLabel":"string"},"note":{"description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.\n\nMaximum length: 41 characters.","example":"Conductor HQ","type":"string","maxLength":41,"uniqueKey":"billingAddress.note","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"billingAddress","typeLabel":"object"},"shippingAddress":{"description":"The estimate's shipping address.","type":"object","properties":{"line1":{"description":"The first line of the address (e.g., street, PO Box, or company name).\n\nMaximum length: 41 characters.","example":"Conductor Labs Inc.","type":"string","maxLength":41,"uniqueKey":"shippingAddress.line1","typeLabel":"string"},"line2":{"description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).\n\nMaximum length: 41 characters.","example":"540 Market St.","type":"string","maxLength":41,"uniqueKey":"shippingAddress.line2","typeLabel":"string"},"line3":{"description":"The third line of the address, if needed.\n\nMaximum length: 41 characters.","example":"Suite 100","type":"string","maxLength":41,"uniqueKey":"shippingAddress.line3","typeLabel":"string"},"line4":{"description":"The fourth line of the address, if needed.\n\nMaximum length: 41 characters.","example":"","type":"string","maxLength":41,"uniqueKey":"shippingAddress.line4","typeLabel":"string"},"line5":{"description":"The fifth line of the address, if needed.\n\nMaximum length: 41 characters.","example":"","type":"string","maxLength":41,"uniqueKey":"shippingAddress.line5","typeLabel":"string"},"city":{"description":"The city, district, suburb, town, or village name of the address.\n\nMaximum length: 31 characters.","example":"San Francisco","type":"string","maxLength":31,"uniqueKey":"shippingAddress.city","typeLabel":"string"},"state":{"description":"The state, county, province, or region name of the address.\n\nMaximum length: 21 characters.","example":"CA","type":"string","maxLength":21,"uniqueKey":"shippingAddress.state","typeLabel":"string"},"postalCode":{"description":"The postal code or ZIP code of the address.\n\nMaximum length: 13 characters.","example":"94110","type":"string","maxLength":13,"uniqueKey":"shippingAddress.postalCode","typeLabel":"string"},"country":{"description":"The country name of the address.\n\nMaximum length: 31 characters.","example":"United States","type":"string","maxLength":31,"uniqueKey":"shippingAddress.country","typeLabel":"string"},"note":{"description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.\n\nMaximum length: 41 characters.","example":"Conductor HQ","type":"string","maxLength":41,"uniqueKey":"shippingAddress.note","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"shippingAddress","typeLabel":"object"},"isActive":{"description":"Indicates whether this estimate is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.","example":true,"default":true,"type":"boolean","uniqueKey":"isActive","typeLabel":"boolean"},"purchaseOrderNumber":{"description":"The customer's Purchase Order (PO) number associated with this estimate. This field is often used to cross-reference the estimate with the customer's purchasing system.\n\nMaximum length: 25 characters.","example":"PO-1234","type":"string","maxLength":25,"uniqueKey":"purchaseOrderNumber","typeLabel":"string"},"termsId":{"description":"The estimate's payment terms, defining when payment is due and any applicable discounts.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"termsId","typeLabel":"string"},"dueDate":{"description":"The date by which this estimate must be paid, in ISO 8601 format (YYYY-MM-DD).","example":"2024-10-31","type":"string","format":"date","uniqueKey":"dueDate","typeLabel":"string\u003cdate>"},"salesRepresentativeId":{"description":"The estimate's sales representative. Sales representatives can be employees, vendors, or other names in QuickBooks.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"salesRepresentativeId","typeLabel":"string"},"shipmentOrigin":{"description":"The origin location from where the product associated with this estimate is shipped. This is the point at which ownership and liability for goods transfer from seller to buyer. Internally, QuickBooks uses the term \"FOB\" for this field, which stands for \"freight on board\". This field is informational and has no accounting implications.\n\nMaximum length: 13 characters.","example":"San Francisco, CA","type":"string","maxLength":13,"uniqueKey":"shipmentOrigin","typeLabel":"string"},"salesTaxItemId":{"description":"The sales-tax item used to calculate the actual tax amount for this estimate's transactions by applying a specific tax rate collected for a single tax agency. Unlike `salesTaxCode`, which only indicates general taxability, this field drives the actual tax calculation and reporting.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"salesTaxItemId","typeLabel":"string"},"memo":{"description":"A memo or note for this estimate that appears in reports, but not on the estimate. Use `customerMessage` to add a note to this estimate.\n\nMaximum length: 4095 characters.","example":"Proposal for website redesign","type":"string","maxLength":4095,"uniqueKey":"memo","typeLabel":"string"},"customerMessageId":{"description":"The message to display to the customer on the estimate.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"customerMessageId","typeLabel":"string"},"isQueuedForEmail":{"description":"Indicates whether this estimate is included in the queue of documents for QuickBooks to email to the customer.","example":true,"type":"boolean","uniqueKey":"isQueuedForEmail","typeLabel":"boolean"},"salesTaxCodeId":{"description":"The sales-tax code for this estimate, determining whether it is taxable or non-taxable. This can be overridden at the transaction-line level.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"salesTaxCodeId","typeLabel":"string"},"otherCustomField":{"description":"A built-in custom field for additional information specific to this estimate. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimates for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Unlike `otherCustomField1` and `otherCustomField2`, which are line item fields, this exists at the transaction level. Hidden by default in the QuickBooks UI.\n\nMaximum length: 29 characters.","example":"Special handling required","type":"string","maxLength":29,"uniqueKey":"otherCustomField","typeLabel":"string"},"exchangeRate":{"description":"The market exchange rate between this estimate's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).","example":1.2345,"type":"number","uniqueKey":"exchangeRate","typeLabel":"number"},"externalId":{"type":"string","format":"uuid","description":"A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.\n\n**IMPORTANT**: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.","example":"12345678-abcd-1234-abcd-1234567890ab","uniqueKey":"externalId","typeLabel":"string\u003cuuid>"},"lines":{"description":"The estimate's line items, each representing a single product or service quoted.\n\n**IMPORTANT**: You must specify `lines`, `lineGroups`, or both when creating an estimate.","minItems":1,"type":"array","items":{"type":"object","properties":{"itemId":{"description":"The item associated with this estimate line. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].itemId","typeLabel":"string"},"description":{"description":"A description of this estimate line.\n\nMaximum length: 4095 characters.","example":"Graphic illustrations for website redesign","type":"string","maxLength":4095,"uniqueKey":"lines.items.[INDEX].description","typeLabel":"string"},"quantity":{"description":"The quantity of the item associated with this estimate line. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item is a discount item.","example":5,"type":"number","uniqueKey":"lines.items.[INDEX].quantity","typeLabel":"number"},"unitOfMeasure":{"description":"The unit-of-measure used for the `quantity` in this estimate line. Must be a valid unit within the item's available units of measure.\n\nMaximum length: 31 characters.","example":"Each","type":"string","maxLength":31,"uniqueKey":"lines.items.[INDEX].unitOfMeasure","typeLabel":"string"},"rate":{"description":"The price per unit for this estimate line. If both `rate` and `amount` are specified, `rate` will be ignored. If both `quantity` and `amount` are specified but not `rate`, QuickBooks will use them to calculate `rate`. Represented as a decimal string. This field cannot be cleared.\n\nDecimal string format: up to 5 decimal places and up to 10 digits before the decimal point (for example, \"123.45\").","example":"10.00","type":"string","uniqueKey":"lines.items.[INDEX].rate","typeLabel":"string"},"ratePercent":{"description":"The price of this estimate line expressed as a percentage. Typically used for discount or markup items.","example":"10.5","type":"string","uniqueKey":"lines.items.[INDEX].ratePercent","typeLabel":"string"},"classId":{"description":"The estimate line'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. If a class is specified for the entire parent transaction, it is automatically applied to all estimate lines unless overridden here, at the transaction line level.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].classId","typeLabel":"string"},"amount":{"description":"The monetary amount of this estimate line, represented as a decimal string. If both `quantity` and `rate` are specified but not `amount`, QuickBooks will calculate `amount` using the rate and any markup you supply. The calculation is `amount = (quantity * rate) * (1 + markupRate)` when `markupRate` is provided, or `amount = (quantity * rate) * (1 + markupRatePercent/100)` when `markupRatePercent` is provided. If `amount`, `rate`, and `quantity` are all unspecified, QuickBooks will calculate `amount` based on a `quantity` of `1` and the suggested `rate`. This field cannot be cleared.\n\nDecimal string format: exactly 2 decimal places when cents are included and up to 13 digits before the decimal point (for example, \"123.45\").","example":"1000.00","type":"string","uniqueKey":"lines.items.[INDEX].amount","typeLabel":"string"},"priceRuleConflictStrategy":{"description":"Specifies how to resolve price rule conflicts when adding or modifying this estimate line.","example":"base_price","type":"string","enum":["base_price","zero"],"uniqueKey":"lines.items.[INDEX].priceRuleConflictStrategy","typeLabel":"enum\u003cstring>"},"inventorySiteId":{"description":"The site location where inventory for the item associated with this estimate line is stored.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].inventorySiteId","typeLabel":"string"},"inventorySiteLocationId":{"description":"The specific location (e.g., bin or shelf) within the inventory site where the item associated with this estimate line is stored.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].inventorySiteLocationId","typeLabel":"string"},"salesTaxCodeId":{"description":"The sales-tax code for this estimate line, determining whether it is taxable or non-taxable. If set, this overrides any sales-tax codes defined on the parent transaction or the associated item.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].salesTaxCodeId","typeLabel":"string"},"markupRate":{"description":"The markup that will be passed on to the customer for this item on this estimate line, represented as a decimal string. `amount = (quantity * rate) * (1 + markupRate)`\n\nDecimal string format: up to 5 decimal places and up to 10 digits before the decimal point (for example, \"123.45\").","example":"0.2","type":"string","uniqueKey":"lines.items.[INDEX].markupRate","typeLabel":"string"},"markupRatePercent":{"description":"The markup, expressed as a percentage, that will be passed on to the customer for this item on this estimate line. `amount = (quantity * rate) * (1 + markupRatePercent/100)`","example":"20.0","type":"string","uniqueKey":"lines.items.[INDEX].markupRatePercent","typeLabel":"string"},"priceLevelId":{"description":"The price level applied to this estimate line. This overrides any price level set on the corresponding customer. The resulting estimate line will not show this price level, only the final `rate` calculated from it.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].priceLevelId","typeLabel":"string"},"overrideItemAccountId":{"description":"The account to use for this estimate line, overriding the default account associated with the item.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lines.items.[INDEX].overrideItemAccountId","typeLabel":"string"},"otherCustomField1":{"description":"A built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.\n\nMaximum length: 29 characters.","example":"Special handling required","type":"string","maxLength":29,"uniqueKey":"lines.items.[INDEX].otherCustomField1","typeLabel":"string"},"otherCustomField2":{"description":"A second built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Like `otherCustomField1`, developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.\n\nMaximum length: 29 characters.","example":"Always ship with a spare","type":"string","maxLength":29,"uniqueKey":"lines.items.[INDEX].otherCustomField2","typeLabel":"string"},"customFields":{"description":"The custom fields for the estimate line object, added as user-defined data extensions, not included in the standard QuickBooks object.","minItems":1,"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","maxLength":31,"description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.\n\nMaximum length: 31 characters.","example":"Customer Rating","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","value"],"additionalProperties":false,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX]","typeLabel":"object"},"uniqueKey":"lines.items.[INDEX].customFields","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"lines.items.[INDEX]","typeLabel":"object"},"uniqueKey":"lines","typeLabel":"object[]"},"lineGroups":{"description":"The estimate's line item groups, each representing a predefined set of related items.\n\n**IMPORTANT**: You must specify `lines`, `lineGroups`, or both when creating an estimate.","minItems":1,"type":"array","items":{"type":"object","properties":{"itemGroupId":{"description":"The estimate line group's item group, representing a predefined set of items bundled because they are commonly purchased together or grouped for faster entry.","example":"80000001-1234567890","type":"string","maxLength":36,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroupId","typeLabel":"string"},"quantity":{"description":"The quantity of the item group associated with this estimate line group. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item group is a discount item group.","example":5,"type":"number","uniqueKey":"lineGroups.items.[INDEX].quantity","typeLabel":"number"},"unitOfMeasure":{"description":"The unit-of-measure used for the `quantity` in this estimate line group. Must be a valid unit within the item's available units of measure.\n\nMaximum length: 31 characters.","example":"Each","type":"string","maxLength":31,"uniqueKey":"lineGroups.items.[INDEX].unitOfMeasure","typeLabel":"string"},"inventorySiteId":{"description":"The site location where inventory for the item group associated with this estimate line group is stored.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lineGroups.items.[INDEX].inventorySiteId","typeLabel":"string"},"inventorySiteLocationId":{"description":"The specific location (e.g., bin or shelf) within the inventory site where the item group associated with this estimate line group is stored.","example":"80000001-1234567890","type":"string","maxLength":36,"uniqueKey":"lineGroups.items.[INDEX].inventorySiteLocationId","typeLabel":"string"},"customFields":{"description":"The custom fields for the estimate line group object, added as user-defined data extensions, not included in the standard QuickBooks object.","minItems":1,"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","maxLength":31,"description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.\n\nMaximum length: 31 characters.","example":"Customer Rating","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].name","typeLabel":"string"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","value"],"additionalProperties":false,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX]","typeLabel":"object"},"uniqueKey":"lineGroups.items.[INDEX].customFields","typeLabel":"object[]"}},"required":["itemGroupId"],"additionalProperties":false,"uniqueKey":"lineGroups.items.[INDEX]","typeLabel":"object"},"uniqueKey":"lineGroups","typeLabel":"object[]"}},"required":["customerId","transactionDate"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"customerId":"80000001-1234567890","transactionDate":"2024-10-01","classId":"80000001-1234567890","documentTemplateId":"80000001-1234567890","refNumber":"EST-1234","billingAddress":{"line1":"Conductor Labs Inc.","line2":"540 Market St.","line3":"Suite 100","line4":"","line5":"","city":"San Francisco","state":"CA","postalCode":"94110","country":"United States","note":"Conductor HQ"},"shippingAddress":{"line1":"Conductor Labs Inc.","line2":"540 Market St.","line3":"Suite 100","line4":"","line5":"","city":"San Francisco","state":"CA","postalCode":"94110","country":"United States","note":"Conductor HQ"},"isActive":true,"purchaseOrderNumber":"PO-1234","termsId":"80000001-1234567890","dueDate":"2024-10-31","salesRepresentativeId":"80000001-1234567890","shipmentOrigin":"San Francisco, CA","salesTaxItemId":"80000001-1234567890","memo":"Proposal for website redesign","customerMessageId":"80000001-1234567890","isQueuedForEmail":true,"salesTaxCodeId":"80000001-1234567890","otherCustomField":"Special handling required","exchangeRate":1.2345,"externalId":"12345678-abcd-1234-abcd-1234567890ab","lines":[{"itemId":"80000001-1234567890","description":"Graphic illustrations for website redesign","quantity":5,"unitOfMeasure":"Each","rate":"10.00","ratePercent":"10.5","classId":"80000001-1234567890","amount":"1000.00","priceRuleConflictStrategy":"base_price","inventorySiteId":"80000001-1234567890","inventorySiteLocationId":"80000001-1234567890","salesTaxCodeId":"80000001-1234567890","markupRate":"0.2","markupRatePercent":"20.0","priceLevelId":"80000001-1234567890","overrideItemAccountId":"80000001-1234567890","otherCustomField1":"Special handling required","otherCustomField2":"Always ship with a spare","customFields":[{"ownerId":"0","name":"Customer Rating","value":"Premium"}]}],"lineGroups":[{"itemGroupId":"80000001-1234567890","quantity":5,"unitOfMeasure":"Each","inventorySiteId":"80000001-1234567890","inventorySiteLocationId":"80000001-1234567890","customFields":[{"ownerId":"0","name":"Customer Rating","value":"Premium"}]}]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"c563ad96-9fa7-4e6b-8ffa-a129c2adf8b6":{"description":"Returns the newly created estimate.","headers":{"Conductor-Request-Id":{"required":true,"description":"The unique identifier for this API request.","schema":{"type":"string","description":"The unique identifier for this API request.","example":"req_1234567abcdefg"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier assigned by QuickBooks to this estimate. This ID is unique across all transaction types.","example":"123ABC-1234567890","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"objectType":{"description":"The type of object. This value is always `\"qbd_estimate\"`.","example":"qbd_estimate","type":"string","const":"qbd_estimate","isRequired":true,"uniqueKey":"objectType","typeLabel":"string"},"createdAt":{"type":"string","description":"The date and time when this estimate was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.","example":"2025-01-01T12:34:56.000Z","isRequired":true,"uniqueKey":"createdAt","typeLabel":"string"},"updatedAt":{"type":"string","description":"The date and time when this estimate was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.","example":"2025-02-01T12:34:56.000Z","isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string"},"revisionNumber":{"type":"string","description":"The current QuickBooks-assigned revision number of this estimate object, 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.","example":"1721172183","isRequired":true,"uniqueKey":"revisionNumber","typeLabel":"string"},"customer":{"type":"object","properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"customer.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"customer.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"customer.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"customer.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"customer.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"customer.fullName","typeLabel":"string | null"}},"required":["id","fullName"],"additionalProperties":false,"description":"The customer or customer-job associated with this estimate.","example":{"id":"80000001-1234567890","fullName":"Acme Corporation"},"isRequired":true,"uniqueKey":"customer","typeLabel":"object"},"class":{"oneOf":[{"type":"object","description":"The estimate'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. A class defined here is automatically used in this estimate's line items unless overridden at the line item level.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Web Development"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"class.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"class.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"class.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"class.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"class.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"class.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"class.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate'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. A class defined here is automatically used in this estimate's line items unless overridden at the line item level.","example":{"id":"80000001-1234567890","fullName":"Web Development"},"isRequired":true,"uniqueKey":"class.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"class","typeLabel":"object | null"},"documentTemplate":{"oneOf":[{"type":"object","description":"The predefined template in QuickBooks that determines the layout and formatting for this estimate when printed or displayed.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Estimate Template"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"documentTemplate.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"documentTemplate.oneOf.0","typeLabel":"object"},{"type":"null","description":"The predefined template in QuickBooks that determines the layout and formatting for this estimate when printed or displayed.","example":{"id":"80000001-1234567890","fullName":"Estimate Template"},"isRequired":true,"uniqueKey":"documentTemplate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"documentTemplate","typeLabel":"object | null"},"transactionDate":{"type":"string","format":"date","description":"The date of this estimate, in ISO 8601 format (YYYY-MM-DD).","example":"2024-10-01","isRequired":true,"uniqueKey":"transactionDate","typeLabel":"string\u003cdate>"},"refNumber":{"oneOf":[{"type":"string","description":"The case-sensitive user-defined reference number for this estimate, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.","example":"EST-1234","isRequired":true,"uniqueKey":"refNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"The case-sensitive user-defined reference number for this estimate, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.","example":"EST-1234","isRequired":true,"uniqueKey":"refNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"refNumber","typeLabel":"string | null"},"billingAddress":{"oneOf":[{"type":"object","title":"The Address object","description":"The estimate's billing address.","required":["line1","line2","line3","line4","line5","city","state","postalCode","country","note"],"x-conductor-object-type":"nested","properties":{"line1":{"oneOf":[{"type":"string","description":"The first line of the address (e.g., street, PO Box, or company name).","example":"Conductor Labs Inc.","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line1.oneOf.0","typeLabel":"string"},{"type":"null","description":"The first line of the address (e.g., street, PO Box, or company name).","example":"Conductor Labs Inc.","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line1.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line1","typeLabel":"string | null"},"line2":{"oneOf":[{"type":"string","description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).","example":"540 Market St.","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line2.oneOf.0","typeLabel":"string"},{"type":"null","description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).","example":"540 Market St.","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line2.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line2","typeLabel":"string | null"},"line3":{"oneOf":[{"type":"string","description":"The third line of the address, if needed.","example":"Suite 100","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line3.oneOf.0","typeLabel":"string"},{"type":"null","description":"The third line of the address, if needed.","example":"Suite 100","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line3.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line3","typeLabel":"string | null"},"line4":{"oneOf":[{"type":"string","description":"The fourth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line4.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fourth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line4.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line4","typeLabel":"string | null"},"line5":{"oneOf":[{"type":"string","description":"The fifth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line5.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fifth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line5.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.line5","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","description":"The city, district, suburb, town, or village name of the address.","example":"San Francisco","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.city.oneOf.0","typeLabel":"string"},{"type":"null","description":"The city, district, suburb, town, or village name of the address.","example":"San Francisco","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.city.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.city","typeLabel":"string | null"},"state":{"oneOf":[{"type":"string","description":"The state, county, province, or region name of the address.","example":"CA","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.state.oneOf.0","typeLabel":"string"},{"type":"null","description":"The state, county, province, or region name of the address.","example":"CA","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.state.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.state","typeLabel":"string | null"},"postalCode":{"oneOf":[{"type":"string","description":"The postal code or ZIP code of the address.","example":"94110","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.postalCode.oneOf.0","typeLabel":"string"},{"type":"null","description":"The postal code or ZIP code of the address.","example":"94110","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.postalCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.postalCode","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"The country name of the address.","example":"United States","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.country.oneOf.0","typeLabel":"string"},{"type":"null","description":"The country name of the address.","example":"United States","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.country.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.country","typeLabel":"string | null"},"note":{"oneOf":[{"type":"string","description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.","example":"Conductor HQ","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.note.oneOf.0","typeLabel":"string"},{"type":"null","description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.","example":"Conductor HQ","isRequired":true,"uniqueKey":"billingAddress.oneOf.0.note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress.oneOf.0.note","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"billingAddress.oneOf.0","typeLabel":"The Address object · object"},{"type":"null","description":"The estimate's billing address.","isRequired":true,"uniqueKey":"billingAddress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"billingAddress","typeLabel":"The Address object · object | null"},"shippingAddress":{"oneOf":[{"type":"object","title":"The Address object","description":"The estimate's shipping address.","required":["line1","line2","line3","line4","line5","city","state","postalCode","country","note"],"x-conductor-object-type":"nested","properties":{"line1":{"oneOf":[{"type":"string","description":"The first line of the address (e.g., street, PO Box, or company name).","example":"Conductor Labs Inc.","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line1.oneOf.0","typeLabel":"string"},{"type":"null","description":"The first line of the address (e.g., street, PO Box, or company name).","example":"Conductor Labs Inc.","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line1.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line1","typeLabel":"string | null"},"line2":{"oneOf":[{"type":"string","description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).","example":"540 Market St.","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line2.oneOf.0","typeLabel":"string"},{"type":"null","description":"The second line of the address, if needed (e.g., apartment, suite, unit, or building).","example":"540 Market St.","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line2.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line2","typeLabel":"string | null"},"line3":{"oneOf":[{"type":"string","description":"The third line of the address, if needed.","example":"Suite 100","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line3.oneOf.0","typeLabel":"string"},{"type":"null","description":"The third line of the address, if needed.","example":"Suite 100","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line3.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line3","typeLabel":"string | null"},"line4":{"oneOf":[{"type":"string","description":"The fourth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line4.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fourth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line4.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line4","typeLabel":"string | null"},"line5":{"oneOf":[{"type":"string","description":"The fifth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line5.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fifth line of the address, if needed.","example":"","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line5.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.line5","typeLabel":"string | null"},"city":{"oneOf":[{"type":"string","description":"The city, district, suburb, town, or village name of the address.","example":"San Francisco","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.city.oneOf.0","typeLabel":"string"},{"type":"null","description":"The city, district, suburb, town, or village name of the address.","example":"San Francisco","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.city.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.city","typeLabel":"string | null"},"state":{"oneOf":[{"type":"string","description":"The state, county, province, or region name of the address.","example":"CA","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.state.oneOf.0","typeLabel":"string"},{"type":"null","description":"The state, county, province, or region name of the address.","example":"CA","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.state.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.state","typeLabel":"string | null"},"postalCode":{"oneOf":[{"type":"string","description":"The postal code or ZIP code of the address.","example":"94110","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.postalCode.oneOf.0","typeLabel":"string"},{"type":"null","description":"The postal code or ZIP code of the address.","example":"94110","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.postalCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.postalCode","typeLabel":"string | null"},"country":{"oneOf":[{"type":"string","description":"The country name of the address.","example":"United States","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.country.oneOf.0","typeLabel":"string"},{"type":"null","description":"The country name of the address.","example":"United States","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.country.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.country","typeLabel":"string | null"},"note":{"oneOf":[{"type":"string","description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.","example":"Conductor HQ","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.note.oneOf.0","typeLabel":"string"},{"type":"null","description":"A note written at the bottom of the address in the form in which it appears, such as the invoice form.","example":"Conductor HQ","isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0.note","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"shippingAddress.oneOf.0","typeLabel":"The Address object · object"},{"type":"null","description":"The estimate's shipping address.","isRequired":true,"uniqueKey":"shippingAddress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shippingAddress","typeLabel":"The Address object · object | null"},"isActive":{"type":"boolean","description":"Indicates whether this estimate is active. Inactive objects are typically hidden from views and reports in QuickBooks. Defaults to `true`.","example":true,"isRequired":true,"uniqueKey":"isActive","typeLabel":"boolean"},"purchaseOrderNumber":{"oneOf":[{"type":"string","description":"The customer's Purchase Order (PO) number associated with this estimate. This field is often used to cross-reference the estimate with the customer's purchasing system.","example":"PO-1234","isRequired":true,"uniqueKey":"purchaseOrderNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"The customer's Purchase Order (PO) number associated with this estimate. This field is often used to cross-reference the estimate with the customer's purchasing system.","example":"PO-1234","isRequired":true,"uniqueKey":"purchaseOrderNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"purchaseOrderNumber","typeLabel":"string | null"},"terms":{"oneOf":[{"type":"object","description":"The estimate's payment terms, defining when payment is due and any applicable discounts.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Net 30"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"terms.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"terms.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"terms.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"terms.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"terms.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"terms.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"terms.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate's payment terms, defining when payment is due and any applicable discounts.","example":{"id":"80000001-1234567890","fullName":"Net 30"},"isRequired":true,"uniqueKey":"terms.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"terms","typeLabel":"object | null"},"dueDate":{"oneOf":[{"type":"string","description":"The date by which this estimate must be paid, in ISO 8601 format (YYYY-MM-DD).","format":"date","example":"2024-10-31T00:00:00.000Z","isRequired":true,"uniqueKey":"dueDate.oneOf.0","typeLabel":"string\u003cdate>"},{"type":"null","description":"The date by which this estimate must be paid, in ISO 8601 format (YYYY-MM-DD).","example":"2024-10-31T00:00:00.000Z","isRequired":true,"uniqueKey":"dueDate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"dueDate","typeLabel":"string\u003cdate> | null"},"salesRepresentative":{"oneOf":[{"type":"object","description":"The estimate's sales representative. Sales representatives can be employees, vendors, or other names in QuickBooks.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Jane Doe"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"salesRepresentative.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate's sales representative. Sales representatives can be employees, vendors, or other names in QuickBooks.","example":{"id":"80000001-1234567890","fullName":"Jane Doe"},"isRequired":true,"uniqueKey":"salesRepresentative.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesRepresentative","typeLabel":"object | null"},"shipmentOrigin":{"oneOf":[{"type":"string","description":"The origin location from where the product associated with this estimate is shipped. This is the point at which ownership and liability for goods transfer from seller to buyer. Internally, QuickBooks uses the term \"FOB\" for this field, which stands for \"freight on board\". This field is informational and has no accounting implications.","example":"San Francisco, CA","isRequired":true,"uniqueKey":"shipmentOrigin.oneOf.0","typeLabel":"string"},{"type":"null","description":"The origin location from where the product associated with this estimate is shipped. This is the point at which ownership and liability for goods transfer from seller to buyer. Internally, QuickBooks uses the term \"FOB\" for this field, which stands for \"freight on board\". This field is informational and has no accounting implications.","example":"San Francisco, CA","isRequired":true,"uniqueKey":"shipmentOrigin.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"shipmentOrigin","typeLabel":"string | null"},"subtotal":{"type":"string","description":"The subtotal of this estimate, which is the sum of all estimate lines before taxes and payments are applied, represented as a decimal string.","example":"1000.00","isRequired":true,"uniqueKey":"subtotal","typeLabel":"string"},"salesTaxItem":{"oneOf":[{"type":"object","description":"The sales-tax item used to calculate the actual tax amount for this estimate's transactions by applying a specific tax rate collected for a single tax agency. Unlike `salesTaxCode`, which only indicates general taxability, this field drives the actual tax calculation and reporting.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"State Sales Tax"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"salesTaxItem.oneOf.0","typeLabel":"object"},{"type":"null","description":"The sales-tax item used to calculate the actual tax amount for this estimate's transactions by applying a specific tax rate collected for a single tax agency. Unlike `salesTaxCode`, which only indicates general taxability, this field drives the actual tax calculation and reporting.","example":{"id":"80000001-1234567890","fullName":"State Sales Tax"},"isRequired":true,"uniqueKey":"salesTaxItem.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxItem","typeLabel":"object | null"},"salesTaxPercentage":{"oneOf":[{"type":"string","description":"The sales tax percentage applied to this estimate, represented as a decimal string.","example":"0.07","isRequired":true,"uniqueKey":"salesTaxPercentage.oneOf.0","typeLabel":"string"},{"type":"null","description":"The sales tax percentage applied to this estimate, represented as a decimal string.","example":"0.07","isRequired":true,"uniqueKey":"salesTaxPercentage.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxPercentage","typeLabel":"string | null"},"salesTaxTotal":{"oneOf":[{"type":"string","description":"The total amount of sales tax charged for this estimate, represented as a decimal string.","example":"10.00","isRequired":true,"uniqueKey":"salesTaxTotal.oneOf.0","typeLabel":"string"},{"type":"null","description":"The total amount of sales tax charged for this estimate, represented as a decimal string.","example":"10.00","isRequired":true,"uniqueKey":"salesTaxTotal.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxTotal","typeLabel":"string | null"},"totalAmount":{"type":"string","description":"The total monetary amount of this estimate, equivalent to the sum of the amounts in `lines` and `lineGroups`, represented as a decimal string.","example":"1000.00","isRequired":true,"uniqueKey":"totalAmount","typeLabel":"string"},"currency":{"oneOf":[{"type":"object","description":"The estimate's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"USD"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"currency.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"currency.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"currency.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"currency.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"currency.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"currency.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"currency.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.","example":{"id":"80000001-1234567890","fullName":"USD"},"isRequired":true,"uniqueKey":"currency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"currency","typeLabel":"object | null"},"exchangeRate":{"oneOf":[{"type":"number","description":"The market exchange rate between this estimate's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).","example":1.2345,"isRequired":true,"uniqueKey":"exchangeRate.oneOf.0","typeLabel":"number"},{"type":"null","description":"The market exchange rate between this estimate's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).","example":1.2345,"isRequired":true,"uniqueKey":"exchangeRate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"exchangeRate","typeLabel":"number | null"},"totalAmountInHomeCurrency":{"oneOf":[{"type":"string","description":"The total monetary amount of this estimate converted to the home currency of the QuickBooks company file. Represented as a decimal string.","example":"1234.56","isRequired":true,"uniqueKey":"totalAmountInHomeCurrency.oneOf.0","typeLabel":"string"},{"type":"null","description":"The total monetary amount of this estimate converted to the home currency of the QuickBooks company file. Represented as a decimal string.","example":"1234.56","isRequired":true,"uniqueKey":"totalAmountInHomeCurrency.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"totalAmountInHomeCurrency","typeLabel":"string | null"},"memo":{"oneOf":[{"type":"string","description":"A memo or note for this estimate that appears in reports, but not on the estimate. Use `customerMessage` to add a note to this estimate.","example":"Proposal for website redesign","isRequired":true,"uniqueKey":"memo.oneOf.0","typeLabel":"string"},{"type":"null","description":"A memo or note for this estimate that appears in reports, but not on the estimate. Use `customerMessage` to add a note to this estimate.","example":"Proposal for website redesign","isRequired":true,"uniqueKey":"memo.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"memo","typeLabel":"string | null"},"customerMessage":{"oneOf":[{"type":"object","description":"The message to display to the customer on the estimate.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Thank you for your business!"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"customerMessage.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"customerMessage.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"customerMessage.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"customerMessage.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"customerMessage.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"customerMessage.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"customerMessage.oneOf.0","typeLabel":"object"},{"type":"null","description":"The message to display to the customer on the estimate.","example":{"id":"80000001-1234567890","fullName":"Thank you for your business!"},"isRequired":true,"uniqueKey":"customerMessage.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"customerMessage","typeLabel":"object | null"},"isQueuedForEmail":{"oneOf":[{"type":"boolean","description":"Indicates whether this estimate is included in the queue of documents for QuickBooks to email to the customer.","example":true,"isRequired":true,"uniqueKey":"isQueuedForEmail.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"Indicates whether this estimate is included in the queue of documents for QuickBooks to email to the customer.","example":true,"isRequired":true,"uniqueKey":"isQueuedForEmail.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"isQueuedForEmail","typeLabel":"boolean | null"},"salesTaxCode":{"oneOf":[{"type":"object","description":"The sales-tax code for this estimate, determining whether it is taxable or non-taxable. This can be overridden at the transaction-line level.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Non"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"salesTaxCode.oneOf.0","typeLabel":"object"},{"type":"null","description":"The sales-tax code for this estimate, determining whether it is taxable or non-taxable. This can be overridden at the transaction-line level.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","example":{"id":"80000001-1234567890","fullName":"Non"},"isRequired":true,"uniqueKey":"salesTaxCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"salesTaxCode","typeLabel":"object | null"},"otherCustomField":{"oneOf":[{"type":"string","description":"A built-in custom field for additional information specific to this estimate. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimates for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Unlike `otherCustomField1` and `otherCustomField2`, which are line item fields, this exists at the transaction level. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"otherCustomField.oneOf.0","typeLabel":"string"},{"type":"null","description":"A built-in custom field for additional information specific to this estimate. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimates for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Unlike `otherCustomField1` and `otherCustomField2`, which are line item fields, this exists at the transaction level. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"otherCustomField.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"otherCustomField","typeLabel":"string | null"},"externalId":{"oneOf":[{"type":"string","description":"A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.","example":"12345678-abcd-1234-abcd-1234567890ab","isRequired":true,"uniqueKey":"externalId.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"externalId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"externalId","typeLabel":"string | null"},"linkedTransactions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier assigned by QuickBooks to this linked transaction. This ID is unique across all transaction types.","example":"123ABC-1234567890","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].id","typeLabel":"string"},"objectType":{"description":"The type of object. This value is always `\"qbd_linked_transaction\"`.","example":"qbd_linked_transaction","type":"string","const":"qbd_linked_transaction","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].objectType","typeLabel":"string"},"transactionType":{"type":"string","enum":["ar_refund_credit_card","bill","bill_payment_check","bill_payment_credit_card","build_assembly","charge","check","credit_card_charge","credit_card_credit","credit_memo","deposit","estimate","inventory_adjustment","invoice","item_receipt","journal_entry","liability_adjustment","paycheck","payroll_liability_check","purchase_order","receive_payment","sales_order","sales_receipt","sales_tax_payment_check","transfer","vendor_credit","ytd_adjustment","transfer_inventory","unknown"],"description":"The type of transaction for this linked transaction.","example":"invoice","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].transactionType","typeLabel":"enum\u003cstring>"},"transactionDate":{"type":"string","format":"date","description":"The date of this linked transaction, in ISO 8601 format (YYYY-MM-DD).","example":"2024-10-01","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].transactionDate","typeLabel":"string\u003cdate>"},"refNumber":{"oneOf":[{"type":"string","description":"The case-sensitive user-defined reference number for this linked transaction, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.","example":"LINK-1234","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].refNumber.oneOf.0","typeLabel":"string"},{"type":"null","description":"The case-sensitive user-defined reference number for this linked transaction, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.","example":"LINK-1234","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].refNumber.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].refNumber","typeLabel":"string | null"},"linkType":{"oneOf":[{"type":"string","description":"Indicates the nature of the link between the transactions: `amount` denotes an amount-based link (e.g., an invoice linked to a payment), and `quantity` denotes a quantity-based link (e.g., an invoice created from a sales order based on the quantity of items received).","enum":["amount","quantity"],"example":"amount","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].linkType.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Indicates the nature of the link between the transactions: `amount` denotes an amount-based link (e.g., an invoice linked to a payment), and `quantity` denotes a quantity-based link (e.g., an invoice created from a sales order based on the quantity of items received).","example":"amount","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].linkType.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].linkType","typeLabel":"enum\u003cstring> | null"},"amount":{"oneOf":[{"type":"string","description":"The monetary amount of this linked transaction, represented as a decimal string.","example":"1000.00","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].amount.oneOf.0","typeLabel":"string"},{"type":"null","description":"The monetary amount of this linked transaction, represented as a decimal string.","example":"1000.00","isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"linkedTransactions.items.[INDEX].amount","typeLabel":"string | null"}},"required":["id","objectType","transactionType","transactionDate","refNumber","linkType","amount"],"additionalProperties":false,"title":"The Linked Transaction object","x-conductor-object-type":"nested","uniqueKey":"linkedTransactions.items.[INDEX]","typeLabel":"The Linked Transaction object · object"},"description":"The estimate's linked transactions, such as payments applied, credits used, or associated purchase orders.\n\n**IMPORTANT**: You must specify the parameter `includeLinkedTransactions` when fetching a list of estimates to receive this field because it is not returned by default.","isRequired":true,"uniqueKey":"linkedTransactions","typeLabel":"The Linked Transaction object · object[]"},"lines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier assigned by QuickBooks to this estimate line. This ID is unique across all transaction line types.","example":"456DEF-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].id","typeLabel":"string"},"objectType":{"description":"The type of object. This value is always `\"qbd_estimate_line\"`.","example":"qbd_estimate_line","type":"string","const":"qbd_estimate_line","isRequired":true,"uniqueKey":"lines.items.[INDEX].objectType","typeLabel":"string"},"item":{"oneOf":[{"type":"object","description":"The item associated with this estimate line. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Widget A"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.0","typeLabel":"object"},{"type":"null","description":"The item associated with this estimate line. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.","example":{"id":"80000001-1234567890","fullName":"Widget A"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].item.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].item","typeLabel":"object | null"},"description":{"oneOf":[{"type":"string","description":"A description of this estimate line.","example":"Graphic illustrations for website redesign","isRequired":true,"uniqueKey":"lines.items.[INDEX].description.oneOf.0","typeLabel":"string"},{"type":"null","description":"A description of this estimate line.","example":"Graphic illustrations for website redesign","isRequired":true,"uniqueKey":"lines.items.[INDEX].description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].description","typeLabel":"string | null"},"quantity":{"oneOf":[{"type":"number","description":"The quantity of the item associated with this estimate line. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item is a discount item.","example":5,"isRequired":true,"uniqueKey":"lines.items.[INDEX].quantity.oneOf.0","typeLabel":"number"},{"type":"null","description":"The quantity of the item associated with this estimate line. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item is a discount item.","example":5,"isRequired":true,"uniqueKey":"lines.items.[INDEX].quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].quantity","typeLabel":"number | null"},"unitOfMeasure":{"oneOf":[{"type":"string","description":"The unit-of-measure used for the `quantity` in this estimate line. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lines.items.[INDEX].unitOfMeasure.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unit-of-measure used for the `quantity` in this estimate line. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lines.items.[INDEX].unitOfMeasure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].unitOfMeasure","typeLabel":"string | null"},"overrideUnitOfMeasureSet":{"oneOf":[{"type":"object","description":"Specifies an alternative unit-of-measure set when updating this estimate line's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Volume Units"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0","typeLabel":"object"},{"type":"null","description":"Specifies an alternative unit-of-measure set when updating this estimate line's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","example":{"id":"80000001-1234567890","fullName":"Volume Units"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].overrideUnitOfMeasureSet","typeLabel":"object | null"},"rate":{"oneOf":[{"type":"string","description":"The price per unit for this estimate line. If both `rate` and `amount` are specified, `rate` will be ignored. If both `quantity` and `amount` are specified but not `rate`, QuickBooks will use them to calculate `rate`. Represented as a decimal string. This field cannot be cleared.","example":"10.00","isRequired":true,"uniqueKey":"lines.items.[INDEX].rate.oneOf.0","typeLabel":"string"},{"type":"null","description":"The price per unit for this estimate line. If both `rate` and `amount` are specified, `rate` will be ignored. If both `quantity` and `amount` are specified but not `rate`, QuickBooks will use them to calculate `rate`. Represented as a decimal string. This field cannot be cleared.","example":"10.00","isRequired":true,"uniqueKey":"lines.items.[INDEX].rate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].rate","typeLabel":"string | null"},"ratePercent":{"oneOf":[{"type":"string","description":"The price of this estimate line expressed as a percentage. Typically used for discount or markup items.","example":"10.5","isRequired":true,"uniqueKey":"lines.items.[INDEX].ratePercent.oneOf.0","typeLabel":"string"},{"type":"null","description":"The price of this estimate line expressed as a percentage. Typically used for discount or markup items.","example":"10.5","isRequired":true,"uniqueKey":"lines.items.[INDEX].ratePercent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].ratePercent","typeLabel":"string | null"},"class":{"oneOf":[{"type":"object","description":"The estimate line'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. If a class is specified for the entire parent transaction, it is automatically applied to all estimate lines unless overridden here, at the transaction line level.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Web Development"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate line'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. If a class is specified for the entire parent transaction, it is automatically applied to all estimate lines unless overridden here, at the transaction line level.","example":{"id":"80000001-1234567890","fullName":"Web Development"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].class.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].class","typeLabel":"object | null"},"amount":{"oneOf":[{"type":"string","description":"The monetary amount of this estimate line, represented as a decimal string. If both `quantity` and `rate` are specified but not `amount`, QuickBooks will calculate `amount` using the rate and any markup you supply. The calculation is `amount = (quantity * rate) * (1 + markupRate)` when `markupRate` is provided, or `amount = (quantity * rate) * (1 + markupRatePercent/100)` when `markupRatePercent` is provided. If `amount`, `rate`, and `quantity` are all unspecified, QuickBooks will calculate `amount` based on a `quantity` of `1` and the suggested `rate`. This field cannot be cleared.","example":"1000.00","isRequired":true,"uniqueKey":"lines.items.[INDEX].amount.oneOf.0","typeLabel":"string"},{"type":"null","description":"The monetary amount of this estimate line, represented as a decimal string. If both `quantity` and `rate` are specified but not `amount`, QuickBooks will calculate `amount` using the rate and any markup you supply. The calculation is `amount = (quantity * rate) * (1 + markupRate)` when `markupRate` is provided, or `amount = (quantity * rate) * (1 + markupRatePercent/100)` when `markupRatePercent` is provided. If `amount`, `rate`, and `quantity` are all unspecified, QuickBooks will calculate `amount` based on a `quantity` of `1` and the suggested `rate`. This field cannot be cleared.","example":"1000.00","isRequired":true,"uniqueKey":"lines.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].amount","typeLabel":"string | null"},"inventorySite":{"oneOf":[{"type":"object","description":"The site location where inventory for the item associated with this estimate line is stored.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.0","typeLabel":"object"},{"type":"null","description":"The site location where inventory for the item associated with this estimate line is stored.","example":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySite","typeLabel":"object | null"},"inventorySiteLocation":{"oneOf":[{"type":"object","description":"The specific location (e.g., bin or shelf) within the inventory site where the item associated with this estimate line is stored.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.0","typeLabel":"object"},{"type":"null","description":"The specific location (e.g., bin or shelf) within the inventory site where the item associated with this estimate line is stored.","example":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].inventorySiteLocation","typeLabel":"object | null"},"salesTaxCode":{"oneOf":[{"type":"object","description":"The sales-tax code for this estimate line, determining whether it is taxable or non-taxable. If set, this overrides any sales-tax codes defined on the parent transaction or the associated item.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Non"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.0","typeLabel":"object"},{"type":"null","description":"The sales-tax code for this estimate line, determining whether it is taxable or non-taxable. If set, this overrides any sales-tax codes defined on the parent transaction or the associated item.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","example":{"id":"80000001-1234567890","fullName":"Non"},"isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].salesTaxCode","typeLabel":"object | null"},"markupRate":{"oneOf":[{"type":"string","description":"The markup that will be passed on to the customer for this item on this estimate line, represented as a decimal string. `amount = (quantity * rate) * (1 + markupRate)`","example":"0.2","isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRate.oneOf.0","typeLabel":"string"},{"type":"null","description":"The markup that will be passed on to the customer for this item on this estimate line, represented as a decimal string. `amount = (quantity * rate) * (1 + markupRate)`","example":"0.2","isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRate","typeLabel":"string | null"},"markupRatePercent":{"oneOf":[{"type":"string","description":"The markup, expressed as a percentage, that will be passed on to the customer for this item on this estimate line. `amount = (quantity * rate) * (1 + markupRatePercent/100)`","example":"20.0","isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRatePercent.oneOf.0","typeLabel":"string"},{"type":"null","description":"The markup, expressed as a percentage, that will be passed on to the customer for this item on this estimate line. `amount = (quantity * rate) * (1 + markupRatePercent/100)`","example":"20.0","isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRatePercent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].markupRatePercent","typeLabel":"string | null"},"otherCustomField1":{"oneOf":[{"type":"string","description":"A built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField1.oneOf.0","typeLabel":"string"},{"type":"null","description":"A built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField1.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField1","typeLabel":"string | null"},"otherCustomField2":{"oneOf":[{"type":"string","description":"A second built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Like `otherCustomField1`, developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Always ship with a spare","isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField2.oneOf.0","typeLabel":"string"},{"type":"null","description":"A second built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Like `otherCustomField1`, developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Always ship with a spare","isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField2.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lines.items.[INDEX].otherCustomField2","typeLabel":"string | null"},"customFields":{"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.","example":"Customer Rating","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["amount_type","date_time_type","integer_type","percent_type","price_type","quantity_type","string_1024_type","string_255_type"],"description":"The data type of this custom field.","example":"string_1024_type","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","type","value"],"additionalProperties":false,"title":"The Custom Field object","x-conductor-object-type":"nested","uniqueKey":"lines.items.[INDEX].customFields.items.[INDEX]","typeLabel":"The Custom Field object · object"},"description":"The custom fields for the estimate line object, added as user-defined data extensions, not included in the standard QuickBooks object.","isRequired":true,"uniqueKey":"lines.items.[INDEX].customFields","typeLabel":"The Custom Field object · object[]"}},"required":["id","objectType","item","description","quantity","unitOfMeasure","overrideUnitOfMeasureSet","rate","ratePercent","class","amount","inventorySite","inventorySiteLocation","salesTaxCode","markupRate","markupRatePercent","otherCustomField1","otherCustomField2","customFields"],"additionalProperties":false,"title":"The Estimate Line object","x-conductor-object-type":"nested","uniqueKey":"lines.items.[INDEX]","typeLabel":"The Estimate Line object · object"},"description":"The estimate's line items, each representing a single product or service quoted.","isRequired":true,"uniqueKey":"lines","typeLabel":"The Estimate Line object · object[]"},"lineGroups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier assigned by QuickBooks to this estimate line group. This ID is unique across all transaction line types.","example":"456DEF-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].id","typeLabel":"string"},"objectType":{"description":"The type of object. This value is always `\"qbd_estimate_line_group\"`.","example":"qbd_estimate_line_group","type":"string","const":"qbd_estimate_line_group","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].objectType","typeLabel":"string"},"itemGroup":{"type":"object","properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup.fullName","typeLabel":"string | null"}},"required":["id","fullName"],"additionalProperties":false,"description":"The estimate line group's item group, representing a predefined set of items bundled because they are commonly purchased together or grouped for faster entry.","example":{"id":"80000001-1234567890","fullName":"Office Supplies Bundle"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].itemGroup","typeLabel":"object"},"description":{"oneOf":[{"type":"string","description":"A description of this estimate line group.","example":"Standard widget bulk package","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].description.oneOf.0","typeLabel":"string"},{"type":"null","description":"A description of this estimate line group.","example":"Standard widget bulk package","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].description","typeLabel":"string | null"},"quantity":{"oneOf":[{"type":"number","description":"The quantity of the item group associated with this estimate line group. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item group is a discount item group.","example":5,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].quantity.oneOf.0","typeLabel":"number"},{"type":"null","description":"The quantity of the item group associated with this estimate line group. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item group is a discount item group.","example":5,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].quantity","typeLabel":"number | null"},"unitOfMeasure":{"oneOf":[{"type":"string","description":"The unit-of-measure used for the `quantity` in this estimate line group. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].unitOfMeasure.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unit-of-measure used for the `quantity` in this estimate line group. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].unitOfMeasure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].unitOfMeasure","typeLabel":"string | null"},"overrideUnitOfMeasureSet":{"oneOf":[{"type":"object","description":"Specifies an alternative unit-of-measure set when updating this estimate line group's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Volume Units"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0","typeLabel":"object"},{"type":"null","description":"Specifies an alternative unit-of-measure set when updating this estimate line group's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","example":{"id":"80000001-1234567890","fullName":"Volume Units"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].overrideUnitOfMeasureSet","typeLabel":"object | null"},"shouldPrintItemsInGroup":{"type":"boolean","description":"Indicates whether the individual items in this estimate line group and their separate amounts appear on printed forms.","example":true,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].shouldPrintItemsInGroup","typeLabel":"boolean"},"totalAmount":{"type":"string","description":"The total monetary amount of this estimate line group, equivalent to the sum of the amounts in `lines`, represented as a decimal string.","example":"1000.00","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].totalAmount","typeLabel":"string"},"lines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"The unique identifier assigned by QuickBooks to this estimate line. This ID is unique across all transaction line types.","example":"456DEF-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].id","typeLabel":"string"},"objectType":{"description":"The type of object. This value is always `\"qbd_estimate_line\"`.","example":"qbd_estimate_line","type":"string","const":"qbd_estimate_line","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].objectType","typeLabel":"string"},"item":{"oneOf":[{"type":"object","description":"The item associated with this estimate line. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Widget A"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.0","typeLabel":"object"},{"type":"null","description":"The item associated with this estimate line. This can refer to any good or service that the business buys or sells, including item types such as a service item, inventory item, or special calculation item like a discount item or sales-tax item.","example":{"id":"80000001-1234567890","fullName":"Widget A"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].item","typeLabel":"object | null"},"description":{"oneOf":[{"type":"string","description":"A description of this estimate line.","example":"Graphic illustrations for website redesign","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].description.oneOf.0","typeLabel":"string"},{"type":"null","description":"A description of this estimate line.","example":"Graphic illustrations for website redesign","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].description","typeLabel":"string | null"},"quantity":{"oneOf":[{"type":"number","description":"The quantity of the item associated with this estimate line. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item is a discount item.","example":5,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].quantity.oneOf.0","typeLabel":"number"},{"type":"null","description":"The quantity of the item associated with this estimate line. This field cannot be cleared.\n\n**NOTE**: Do not use this field if the associated item is a discount item.","example":5,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].quantity","typeLabel":"number | null"},"unitOfMeasure":{"oneOf":[{"type":"string","description":"The unit-of-measure used for the `quantity` in this estimate line. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].unitOfMeasure.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unit-of-measure used for the `quantity` in this estimate line. Must be a valid unit within the item's available units of measure.","example":"Each","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].unitOfMeasure.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].unitOfMeasure","typeLabel":"string | null"},"overrideUnitOfMeasureSet":{"oneOf":[{"type":"object","description":"Specifies an alternative unit-of-measure set when updating this estimate line's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Volume Units"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.0","typeLabel":"object"},{"type":"null","description":"Specifies an alternative unit-of-measure set when updating this estimate line's `unitOfMeasure` field (e.g., \"pound\" or \"kilogram\"). This allows you to select units from a different set than the item's default unit-of-measure set, which remains unchanged on the item itself. The override applies only to this specific line. For example, you can sell an item typically measured in volume units using weight units in a specific transaction by specifying a different unit-of-measure set with this field.\n\nIMPORTANT: Right after QuickBooks Desktop launches, it can briefly report an alternate `id` for a unit-of-measure set, so match on `fullName` when joining to the unit-of-measure sets list.","example":{"id":"80000001-1234567890","fullName":"Volume Units"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].overrideUnitOfMeasureSet","typeLabel":"object | null"},"rate":{"oneOf":[{"type":"string","description":"The price per unit for this estimate line. If both `rate` and `amount` are specified, `rate` will be ignored. If both `quantity` and `amount` are specified but not `rate`, QuickBooks will use them to calculate `rate`. Represented as a decimal string. This field cannot be cleared.","example":"10.00","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].rate.oneOf.0","typeLabel":"string"},{"type":"null","description":"The price per unit for this estimate line. If both `rate` and `amount` are specified, `rate` will be ignored. If both `quantity` and `amount` are specified but not `rate`, QuickBooks will use them to calculate `rate`. Represented as a decimal string. This field cannot be cleared.","example":"10.00","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].rate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].rate","typeLabel":"string | null"},"ratePercent":{"oneOf":[{"type":"string","description":"The price of this estimate line expressed as a percentage. Typically used for discount or markup items.","example":"10.5","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].ratePercent.oneOf.0","typeLabel":"string"},{"type":"null","description":"The price of this estimate line expressed as a percentage. Typically used for discount or markup items.","example":"10.5","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].ratePercent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].ratePercent","typeLabel":"string | null"},"class":{"oneOf":[{"type":"object","description":"The estimate line'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. If a class is specified for the entire parent transaction, it is automatically applied to all estimate lines unless overridden here, at the transaction line level.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Web Development"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.0","typeLabel":"object"},{"type":"null","description":"The estimate line'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. If a class is specified for the entire parent transaction, it is automatically applied to all estimate lines unless overridden here, at the transaction line level.","example":{"id":"80000001-1234567890","fullName":"Web Development"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].class","typeLabel":"object | null"},"amount":{"oneOf":[{"type":"string","description":"The monetary amount of this estimate line, represented as a decimal string. If both `quantity` and `rate` are specified but not `amount`, QuickBooks will calculate `amount` using the rate and any markup you supply. The calculation is `amount = (quantity * rate) * (1 + markupRate)` when `markupRate` is provided, or `amount = (quantity * rate) * (1 + markupRatePercent/100)` when `markupRatePercent` is provided. If `amount`, `rate`, and `quantity` are all unspecified, QuickBooks will calculate `amount` based on a `quantity` of `1` and the suggested `rate`. This field cannot be cleared.","example":"1000.00","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].amount.oneOf.0","typeLabel":"string"},{"type":"null","description":"The monetary amount of this estimate line, represented as a decimal string. If both `quantity` and `rate` are specified but not `amount`, QuickBooks will calculate `amount` using the rate and any markup you supply. The calculation is `amount = (quantity * rate) * (1 + markupRate)` when `markupRate` is provided, or `amount = (quantity * rate) * (1 + markupRatePercent/100)` when `markupRatePercent` is provided. If `amount`, `rate`, and `quantity` are all unspecified, QuickBooks will calculate `amount` based on a `quantity` of `1` and the suggested `rate`. This field cannot be cleared.","example":"1000.00","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].amount","typeLabel":"string | null"},"inventorySite":{"oneOf":[{"type":"object","description":"The site location where inventory for the item associated with this estimate line is stored.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.0","typeLabel":"object"},{"type":"null","description":"The site location where inventory for the item associated with this estimate line is stored.","example":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySite","typeLabel":"object | null"},"inventorySiteLocation":{"oneOf":[{"type":"object","description":"The specific location (e.g., bin or shelf) within the inventory site where the item associated with this estimate line is stored.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.0","typeLabel":"object"},{"type":"null","description":"The specific location (e.g., bin or shelf) within the inventory site where the item associated with this estimate line is stored.","example":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].inventorySiteLocation","typeLabel":"object | null"},"salesTaxCode":{"oneOf":[{"type":"object","description":"The sales-tax code for this estimate line, determining whether it is taxable or non-taxable. If set, this overrides any sales-tax codes defined on the parent transaction or the associated item.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","required":["id","fullName"],"example":{"id":"80000001-1234567890","fullName":"Non"},"properties":{"id":{"oneOf":[{"type":"string","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The unique identifier assigned by QuickBooks to this object. This ID is unique across all objects of the same type, but not across different QuickBooks object types.","example":"80000001-1234567890","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.id","typeLabel":"string | null"},"fullName":{"oneOf":[{"type":"string","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.fullName.oneOf.0","typeLabel":"string"},{"type":"null","description":"The fully-qualified unique name for this object, formed by combining the names of its parent objects with its own `name`, separated by colons. Not case-sensitive.","example":"Parent:Child:Grandchild","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.fullName.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0.fullName","typeLabel":"string | null"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.0","typeLabel":"object"},{"type":"null","description":"The sales-tax code for this estimate line, determining whether it is taxable or non-taxable. If set, this overrides any sales-tax codes defined on the parent transaction or the associated item.\n\nDefault codes include \"Non\" (non-taxable) and \"Tax\" (taxable), but custom codes can also be created in QuickBooks Desktop. If QuickBooks Desktop is not set up to charge sales tax (via the \"Do You Charge Sales Tax?\" preference), it assigns the default non-taxable sales-tax code configured in the company file to all sales.","example":{"id":"80000001-1234567890","fullName":"Non"},"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].salesTaxCode","typeLabel":"object | null"},"markupRate":{"oneOf":[{"type":"string","description":"The markup that will be passed on to the customer for this item on this estimate line, represented as a decimal string. `amount = (quantity * rate) * (1 + markupRate)`","example":"0.2","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRate.oneOf.0","typeLabel":"string"},{"type":"null","description":"The markup that will be passed on to the customer for this item on this estimate line, represented as a decimal string. `amount = (quantity * rate) * (1 + markupRate)`","example":"0.2","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRate.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRate","typeLabel":"string | null"},"markupRatePercent":{"oneOf":[{"type":"string","description":"The markup, expressed as a percentage, that will be passed on to the customer for this item on this estimate line. `amount = (quantity * rate) * (1 + markupRatePercent/100)`","example":"20.0","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRatePercent.oneOf.0","typeLabel":"string"},{"type":"null","description":"The markup, expressed as a percentage, that will be passed on to the customer for this item on this estimate line. `amount = (quantity * rate) * (1 + markupRatePercent/100)`","example":"20.0","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRatePercent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].markupRatePercent","typeLabel":"string | null"},"otherCustomField1":{"oneOf":[{"type":"string","description":"A built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField1.oneOf.0","typeLabel":"string"},{"type":"null","description":"A built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Special handling required","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField1.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField1","typeLabel":"string | null"},"otherCustomField2":{"oneOf":[{"type":"string","description":"A second built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Like `otherCustomField1`, developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Always ship with a spare","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField2.oneOf.0","typeLabel":"string"},{"type":"null","description":"A second built-in custom field for additional information specific to this estimate line. Unlike the user-defined fields in the `customFields` array, this is a standard QuickBooks field that exists for all estimate lines for convenience. Like `otherCustomField1`, developers often use this field for tracking information that doesn't fit into other standard QuickBooks fields. Hidden by default in the QuickBooks UI.","example":"Always ship with a spare","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField2.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].otherCustomField2","typeLabel":"string | null"},"customFields":{"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.","example":"Customer Rating","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["amount_type","date_time_type","integer_type","percent_type","price_type","quantity_type","string_1024_type","string_255_type"],"description":"The data type of this custom field.","example":"string_1024_type","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","type","value"],"additionalProperties":false,"title":"The Custom Field object","x-conductor-object-type":"nested","uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields.items.[INDEX]","typeLabel":"The Custom Field object · object"},"description":"The custom fields for the estimate line object, added as user-defined data extensions, not included in the standard QuickBooks object.","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX].customFields","typeLabel":"The Custom Field object · object[]"}},"required":["id","objectType","item","description","quantity","unitOfMeasure","overrideUnitOfMeasureSet","rate","ratePercent","class","amount","inventorySite","inventorySiteLocation","salesTaxCode","markupRate","markupRatePercent","otherCustomField1","otherCustomField2","customFields"],"additionalProperties":false,"title":"The Estimate Line object","x-conductor-object-type":"nested","uniqueKey":"lineGroups.items.[INDEX].lines.items.[INDEX]","typeLabel":"The Estimate Line object · object"},"description":"The estimate line group's line items, each representing a single product or service quoted.","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].lines","typeLabel":"The Estimate Line object · object[]"},"customFields":{"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.","example":"Customer Rating","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["amount_type","date_time_type","integer_type","percent_type","price_type","quantity_type","string_1024_type","string_255_type"],"description":"The data type of this custom field.","example":"string_1024_type","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","type","value"],"additionalProperties":false,"title":"The Custom Field object","x-conductor-object-type":"nested","uniqueKey":"lineGroups.items.[INDEX].customFields.items.[INDEX]","typeLabel":"The Custom Field object · object"},"description":"The custom fields for the estimate line group object, added as user-defined data extensions, not included in the standard QuickBooks object.","isRequired":true,"uniqueKey":"lineGroups.items.[INDEX].customFields","typeLabel":"The Custom Field object · object[]"}},"required":["id","objectType","itemGroup","description","quantity","unitOfMeasure","overrideUnitOfMeasureSet","shouldPrintItemsInGroup","totalAmount","lines","customFields"],"additionalProperties":false,"title":"The Estimate Line Group object","x-conductor-object-type":"nested","uniqueKey":"lineGroups.items.[INDEX]","typeLabel":"The Estimate Line Group object · object"},"description":"The estimate's line item groups, each representing a predefined set of related items.","isRequired":true,"uniqueKey":"lineGroups","typeLabel":"The Estimate Line Group object · object[]"},"customFields":{"type":"array","items":{"type":"object","properties":{"ownerId":{"type":"string","description":"The identifier of the owner of the custom field, which QuickBooks internally calls a \"data extension\". For public custom fields visible in the UI, such as those added by the QuickBooks user, this is always \"0\". For private custom fields that are only visible to the application that created them, this is a valid GUID identifying the owning application. Internally, Conductor always fetches all public custom fields (those with an `ownerId` of \"0\") for all objects.","example":"0","isRequired":true,"uniqueKey":"customFields.items.[INDEX].ownerId","typeLabel":"string"},"name":{"type":"string","description":"The name of the custom field, unique for the specified `ownerId`. For public custom fields, this name is visible as a label in the QuickBooks UI.","example":"Customer Rating","isRequired":true,"uniqueKey":"customFields.items.[INDEX].name","typeLabel":"string"},"type":{"type":"string","enum":["amount_type","date_time_type","integer_type","percent_type","price_type","quantity_type","string_1024_type","string_255_type"],"description":"The data type of this custom field.","example":"string_1024_type","isRequired":true,"uniqueKey":"customFields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"value":{"type":"string","description":"The value of this custom field. The maximum length depends on the field's data type.","example":"Premium","isRequired":true,"uniqueKey":"customFields.items.[INDEX].value","typeLabel":"string"}},"required":["ownerId","name","type","value"],"additionalProperties":false,"title":"The Custom Field object","x-conductor-object-type":"nested","uniqueKey":"customFields.items.[INDEX]","typeLabel":"The Custom Field object · object"},"description":"The custom fields for the estimate object, added as user-defined data extensions, not included in the standard QuickBooks object.","isRequired":true,"uniqueKey":"customFields","typeLabel":"The Custom Field object · object[]"}},"required":["id","objectType","createdAt","updatedAt","revisionNumber","customer","class","documentTemplate","transactionDate","refNumber","billingAddress","shippingAddress","isActive","purchaseOrderNumber","terms","dueDate","salesRepresentative","shipmentOrigin","subtotal","salesTaxItem","salesTaxPercentage","salesTaxTotal","totalAmount","currency","exchangeRate","totalAmountInHomeCurrency","memo","customerMessage","isQueuedForEmail","salesTaxCode","otherCustomField","externalId","linkedTransactions","lines","lineGroups","customFields"],"additionalProperties":false,"title":"The Estimate object","x-conductor-object-type":"transaction","summary":"An estimate is a formal proposal detailing costs and terms for goods or services to a customer. It can be called a \"bid\" or \"proposal\" and uses similar fields to invoices in QuickBooks. As a non-posting transaction, it serves as a planning tool that can be converted to an invoice upon customer acceptance.","uniqueKey":"","typeLabel":"The Estimate object · object"},"examples":{"Example":{"title":"Example","value":{"id":"123ABC-1234567890","objectType":"qbd_estimate","createdAt":"2025-01-01T12:34:56.000Z","updatedAt":"2025-02-01T12:34:56.000Z","revisionNumber":"1721172183","customer":{"id":"80000001-1234567890","fullName":"Acme Corporation"},"class":{"id":"80000001-1234567890","fullName":"Web Development"},"documentTemplate":{"id":"80000001-1234567890","fullName":"Estimate Template"},"transactionDate":"2024-10-01","refNumber":"EST-1234","billingAddress":{"line1":"Conductor Labs Inc.","line2":"540 Market St.","line3":"Suite 100","line4":"","line5":"","city":"San Francisco","state":"CA","postalCode":"94110","country":"United States","note":"Conductor HQ"},"shippingAddress":{"line1":"Conductor Labs Inc.","line2":"540 Market St.","line3":"Suite 100","line4":"","line5":"","city":"San Francisco","state":"CA","postalCode":"94110","country":"United States","note":"Conductor HQ"},"isActive":true,"purchaseOrderNumber":"PO-1234","terms":{"id":"80000001-1234567890","fullName":"Net 30"},"dueDate":"2024-10-31T00:00:00.000Z","salesRepresentative":{"id":"80000001-1234567890","fullName":"Jane Doe"},"shipmentOrigin":"San Francisco, CA","subtotal":"1000.00","salesTaxItem":{"id":"80000001-1234567890","fullName":"State Sales Tax"},"salesTaxPercentage":"0.07","salesTaxTotal":"10.00","totalAmount":"1000.00","currency":{"id":"80000001-1234567890","fullName":"USD"},"exchangeRate":1.2345,"totalAmountInHomeCurrency":"1234.56","memo":"Proposal for website redesign","customerMessage":{"id":"80000001-1234567890","fullName":"Thank you for your business!"},"isQueuedForEmail":true,"salesTaxCode":{"id":"80000001-1234567890","fullName":"Non"},"otherCustomField":"Special handling required","externalId":"12345678-abcd-1234-abcd-1234567890ab","linkedTransactions":[{"id":"123ABC-1234567890","objectType":"qbd_linked_transaction","transactionType":"invoice","transactionDate":"2024-10-01","refNumber":"LINK-1234","linkType":"amount","amount":"1000.00"}],"lines":[{"id":"456DEF-1234567890","objectType":"qbd_estimate_line","item":{"id":"80000001-1234567890","fullName":"Widget A"},"description":"Graphic illustrations for website redesign","quantity":5,"unitOfMeasure":"Each","overrideUnitOfMeasureSet":{"id":"80000001-1234567890","fullName":"Volume Units"},"rate":"10.00","ratePercent":"10.5","class":{"id":"80000001-1234567890","fullName":"Web Development"},"amount":"1000.00","inventorySite":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"inventorySiteLocation":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"salesTaxCode":{"id":"80000001-1234567890","fullName":"Non"},"markupRate":"0.2","markupRatePercent":"20.0","otherCustomField1":"Special handling required","otherCustomField2":"Always ship with a spare","customFields":[{"ownerId":"0","name":"Customer Rating","type":"string_1024_type","value":"Premium"}]}],"lineGroups":[{"id":"456DEF-1234567890","objectType":"qbd_estimate_line_group","itemGroup":{"id":"80000001-1234567890","fullName":"Office Supplies Bundle"},"description":"Standard widget bulk package","quantity":5,"unitOfMeasure":"Each","overrideUnitOfMeasureSet":{"id":"80000001-1234567890","fullName":"Volume Units"},"shouldPrintItemsInGroup":true,"totalAmount":"1000.00","lines":[{"id":"456DEF-1234567890","objectType":"qbd_estimate_line","item":{"id":"80000001-1234567890","fullName":"Widget A"},"description":"Graphic illustrations for website redesign","quantity":5,"unitOfMeasure":"Each","overrideUnitOfMeasureSet":{"id":"80000001-1234567890","fullName":"Volume Units"},"rate":"10.00","ratePercent":"10.5","class":{"id":"80000001-1234567890","fullName":"Web Development"},"amount":"1000.00","inventorySite":{"id":"80000001-1234567890","fullName":"Main Warehouse"},"inventorySiteLocation":{"id":"80000001-1234567890","fullName":"Aisle 3, Shelf B"},"salesTaxCode":{"id":"80000001-1234567890","fullName":"Non"},"markupRate":"0.2","markupRatePercent":"20.0","otherCustomField1":"Special handling required","otherCustomField2":"Always ship with a spare","customFields":[{"ownerId":"0","name":"Customer Rating","type":"string_1024_type","value":"Premium"}]}],"customFields":[{"ownerId":"0","name":"Customer Rating","type":"string_1024_type","value":"Premium"}]}],"customFields":[{"ownerId":"0","name":"Customer Rating","type":"string_1024_type","value":"Premium"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"b7fc009d-1a16-453a-a5b5-da53b28fe6b2":{"BearerAuth":{"type":"http","scheme":"bearer","description":"Your Conductor secret key using Bearer auth (e.g., `\"Authorization: Bearer {{YOUR_SECRET_KEY}}\"`).","scopes":[],"schemeName":"BearerAuth"}}},"servers":{"045cea4d-dfb6-46e4-9c51-52452b7b239b":{"url":"https://api.conductor.is/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Your Conductor secret key using Bearer auth (e.g., `\"Authorization: Bearer {{YOUR_SECRET_KEY}}\"`).","scopes":[],"schemeName":"BearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Your Conductor secret key using Bearer auth (e.g., `\"Authorization: Bearer {{YOUR_SECRET_KEY}}\"`).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"BearerAuth","name":"Authorization"}],"title":"BearerAuth"}]},"originalFileLocation":"openapi.documented.yml"},"subdomain":"conductor","siteName":"Conductor Docs","title":"Create an estimate - Conductor Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-01-27T20:40:22.648Z","originalFileLocation":"api-ref/qbd/estimates/create.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Creates a new estimate.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Conductor Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create an estimate - Conductor Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Creates a new estimate.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Conductor Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.conductor.is/api-ref/qbd/estimates/create\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://conductor.mintlify.app/_mintlify/api/og/v2?division=Estimates\u0026amp;title=Create+an+estimate\u0026amp;description=Creates+a+new+estimate.\u0026amp;theme=25d211cbfbf21e15541a10f2\u0026amp;signature=3ef436c28bf29d6d4ebe286c699893a4aeacebdb6453c39f4b854f9c91f4c06d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create an estimate - Conductor Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Creates a new estimate.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://conductor.mintlify.app/_mintlify/api/og/v2?division=Estimates\u0026amp;title=Create+an+estimate\u0026amp;description=Creates+a+new+estimate.\u0026amp;theme=25d211cbfbf21e15541a10f2\u0026amp;signature=3ef436c28bf29d6d4ebe286c699893a4aeacebdb6453c39f4b854f9c91f4c06d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/conductor/qaSeMwki9K6Ov6WL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Conductor Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9563FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.conductor.is/api-ref/qbd/estimates/create\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-ref/qbd/estimates/create.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.conductor.is/#organization\",\"name\":\"Conductor Docs\",\"url\":\"https://docs.conductor.is\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/conductor/hjDC6C2Dz4sn63AO/logo/light.png?fit=max\u0026auto=format\u0026n=hjDC6C2Dz4sn63AO\u0026q=85\u0026s=43ebf17eb46ef6256a508d4fac23b3bf\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.conductor.is#website\",\"name\":\"Conductor Docs\",\"url\":\"https://docs.conductor.is\",\"publisher\":{\"@id\":\"https://docs.conductor.is/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.conductor.is/api-ref/qbd/estimates/create#webpage\",\"url\":\"https://docs.conductor.is/api-ref/qbd/estimates/create\",\"name\":\"Create an estimate\",\"description\":\"Creates a new estimate.\",\"dateModified\":\"2026-01-27T20:40:22.648Z\",\"isPartOf\":{\"@id\":\"https://docs.conductor.is#website\"},\"breadcrumb\":{\"@id\":\"https://docs.conductor.is/api-ref/qbd/estimates/create#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.conductor.is/api-ref/qbd/estimates/create#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Transactions\",\"item\":\"https://docs.conductor.is/api-ref/qbd/transactions/object\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Estimates\",\"item\":\"https://docs.conductor.is/api-ref/qbd/estimates/object\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create an estimate\",\"item\":\"https://docs.conductor.is/api-ref/qbd/estimates/create\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.conductor.is/api-ref/qbd/estimates/create#apireference\",\"headline\":\"Create an estimate\",\"name\":\"Create an estimate\",\"description\":\"Creates a new estimate.\",\"url\":\"https://docs.conductor.is/api-ref/qbd/estimates/create\",\"mainEntityOfPage\":{\"@id\":\"https://docs.conductor.is/api-ref/qbd/estimates/create#webpage\"},\"dateModified\":\"2026-01-27T20:40:22.648Z\",\"publisher\":{\"@id\":\"https://docs.conductor.is/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.conductor.is#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Conductor Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Conductor Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/quickstart"}]},{"tab":"API Reference","groups":[{"group":"QuickBooks Desktop API","pages":[{"title":"Welcome to Conductor's QuickBooks Desktop API","href":"/api-ref/welcome"},{"title":"SDKs","icon":"code","href":"/api-ref/sdks"},{"title":"Upgrading to Conductor's new Node.js SDK","icon":"up","href":"/api-ref/upgrade-node"},{"title":"Authentication","icon":"lock","href":"/api-ref/authentication"},{"title":"Pagination","icon":"files","href":"/api-ref/pagination"},{"title":"Request IDs","icon":"hashtag","href":"/api-ref/request-ids"},{"title":"Timeouts","icon":"clock","href":"/api-ref/timeouts"},{"title":"The Error object","icon":"triangle-exclamation","href":"/api-ref/errors"},{"title":"OpenAPI","icon":"file-code","href":"/api-ref/openapi"},{"title":"MCP","icon":"robot","href":"/api-ref/mcp"}]},{"group":"Core Resources","pages":[{"group":"Auth Sessions","pages":[{"title":"The Auth Session object","href":"/api-ref/auth-sessions/object"},{"openapi":"POST /auth-sessions","title":"Create an auth session","href":"/api-ref/auth-sessions/create"}]},{"group":"End Users","pages":[{"title":"The End-User object","href":"/api-ref/end-users/object"},{"openapi":"POST /end-users","title":"Create an end-user","href":"/api-ref/end-users/create"},{"openapi":"GET /end-users/{id}","title":"Retrieve an end-user","href":"/api-ref/end-users/retrieve"},{"openapi":"GET /end-users","title":"List all end-users","href":"/api-ref/end-users/list"},{"openapi":"DELETE /end-users/{id}","title":"Delete an end-user","href":"/api-ref/end-users/delete"}]}]},{"group":"Utilities","pages":[{"openapi":"GET /quickbooks-desktop/health-check","title":"Health check","href":"/api-ref/qbd/utilities/health-check"},{"openapi":"POST /end-users/{id}/passthrough/{integrationSlug}","title":"Passthrough","href":"/api-ref/qbd/utilities/passthrough"}]},{"group":"Transactions","pages":[{"group":"All Transactions","pages":[{"title":"The Transaction object","href":"/api-ref/qbd/transactions/object"},{"openapi":"GET /quickbooks-desktop/transactions/{id}","title":"Retrieve a transaction","href":"/api-ref/qbd/transactions/retrieve"},{"openapi":"GET /quickbooks-desktop/transactions","title":"List all transactions","href":"/api-ref/qbd/transactions/list"}]},{"group":"Bill Check Payments","pages":[{"title":"The Bill Check Payment object","href":"/api-ref/qbd/bill-check-payments/object"},{"openapi":"POST /quickbooks-desktop/bill-check-payments","title":"Create a bill check payment","href":"/api-ref/qbd/bill-check-payments/create"},{"openapi":"POST /quickbooks-desktop/bill-check-payments/{id}","title":"Update a bill check payment","href":"/api-ref/qbd/bill-check-payments/update"},{"openapi":"GET /quickbooks-desktop/bill-check-payments/{id}","title":"Retrieve a bill check payment","href":"/api-ref/qbd/bill-check-payments/retrieve"},{"openapi":"GET /quickbooks-desktop/bill-check-payments","title":"List all bill check payments","href":"/api-ref/qbd/bill-check-payments/list"},{"openapi":"POST /quickbooks-desktop/bill-check-payments/{id}/void","title":"Void a bill check payment","href":"/api-ref/qbd/bill-check-payments/void"},{"openapi":"DELETE /quickbooks-desktop/bill-check-payments/{id}","title":"Delete a bill check payment","href":"/api-ref/qbd/bill-check-payments/delete"}]},{"group":"Bill Credit Card Payments","pages":[{"title":"The Bill Credit Card Payment object","href":"/api-ref/qbd/bill-credit-card-payments/object"},{"openapi":"POST /quickbooks-desktop/bill-credit-card-payments","title":"Create a bill credit card payment","href":"/api-ref/qbd/bill-credit-card-payments/create"},{"openapi":"GET /quickbooks-desktop/bill-credit-card-payments/{id}","title":"Retrieve a bill credit card payment","href":"/api-ref/qbd/bill-credit-card-payments/retrieve"},{"openapi":"GET /quickbooks-desktop/bill-credit-card-payments","title":"List all bill credit card payments","href":"/api-ref/qbd/bill-credit-card-payments/list"},{"openapi":"POST /quickbooks-desktop/bill-credit-card-payments/{id}/void","title":"Void a bill credit card payment","href":"/api-ref/qbd/bill-credit-card-payments/void"},{"openapi":"DELETE /quickbooks-desktop/bill-credit-card-payments/{id}","title":"Delete a bill credit card payment","href":"/api-ref/qbd/bill-credit-card-payments/delete"}]},{"group":"Bills","pages":[{"title":"The Bill object","href":"/api-ref/qbd/bills/object"},{"openapi":"POST /quickbooks-desktop/bills","title":"Create a bill","href":"/api-ref/qbd/bills/create"},{"openapi":"POST /quickbooks-desktop/bills/{id}","title":"Update a bill","href":"/api-ref/qbd/bills/update"},{"openapi":"GET /quickbooks-desktop/bills/{id}","title":"Retrieve a bill","href":"/api-ref/qbd/bills/retrieve"},{"openapi":"GET /quickbooks-desktop/bills","title":"List all bills","href":"/api-ref/qbd/bills/list"},{"openapi":"POST /quickbooks-desktop/bills/{id}/void","title":"Void a bill","href":"/api-ref/qbd/bills/void"},{"openapi":"DELETE /quickbooks-desktop/bills/{id}","title":"Delete a bill","href":"/api-ref/qbd/bills/delete"}]},{"group":"Bills to Pay","pages":[{"title":"The Bill To Pay object","href":"/api-ref/qbd/bills-to-pay/object"},{"openapi":"GET /quickbooks-desktop/bills-to-pay","title":"List bills and credits available to pay for a vendor","href":"/api-ref/qbd/bills-to-pay/list"}]},{"group":"Build Assemblies","pages":[{"title":"The Build Assembly object","href":"/api-ref/qbd/build-assemblies/object"},{"openapi":"POST /quickbooks-desktop/build-assemblies","title":"Create a build assembly","href":"/api-ref/qbd/build-assemblies/create"},{"openapi":"POST /quickbooks-desktop/build-assemblies/{id}","title":"Update a build assembly","href":"/api-ref/qbd/build-assemblies/update"},{"openapi":"GET /quickbooks-desktop/build-assemblies/{id}","title":"Retrieve a build assembly","href":"/api-ref/qbd/build-assemblies/retrieve"},{"openapi":"GET /quickbooks-desktop/build-assemblies","title":"List all build assemblies","href":"/api-ref/qbd/build-assemblies/list"},{"openapi":"DELETE /quickbooks-desktop/build-assemblies/{id}","title":"Delete a build assembly","href":"/api-ref/qbd/build-assemblies/delete"}]},{"group":"Checks","pages":[{"title":"The Check object","href":"/api-ref/qbd/checks/object"},{"openapi":"POST /quickbooks-desktop/checks","title":"Create a check","href":"/api-ref/qbd/checks/create"},{"openapi":"POST /quickbooks-desktop/checks/{id}","title":"Update a check","href":"/api-ref/qbd/checks/update"},{"openapi":"GET /quickbooks-desktop/checks/{id}","title":"Retrieve a check","href":"/api-ref/qbd/checks/retrieve"},{"openapi":"GET /quickbooks-desktop/checks","title":"List all checks","href":"/api-ref/qbd/checks/list"},{"openapi":"POST /quickbooks-desktop/checks/{id}/void","title":"Void a check","href":"/api-ref/qbd/checks/void"},{"openapi":"DELETE /quickbooks-desktop/checks/{id}","title":"Delete a check","href":"/api-ref/qbd/checks/delete"}]},{"group":"Credit Card Charges","pages":[{"title":"The Credit Card Charge object","href":"/api-ref/qbd/credit-card-charges/object"},{"openapi":"POST /quickbooks-desktop/credit-card-charges","title":"Create a credit card charge","href":"/api-ref/qbd/credit-card-charges/create"},{"openapi":"POST /quickbooks-desktop/credit-card-charges/{id}","title":"Update a credit card charge","href":"/api-ref/qbd/credit-card-charges/update"},{"openapi":"GET /quickbooks-desktop/credit-card-charges/{id}","title":"Retrieve a credit card charge","href":"/api-ref/qbd/credit-card-charges/retrieve"},{"openapi":"GET /quickbooks-desktop/credit-card-charges","title":"List all credit card charges","href":"/api-ref/qbd/credit-card-charges/list"},{"openapi":"POST /quickbooks-desktop/credit-card-charges/{id}/void","title":"Void a credit card charge","href":"/api-ref/qbd/credit-card-charges/void"},{"openapi":"DELETE /quickbooks-desktop/credit-card-charges/{id}","title":"Delete a credit card charge","href":"/api-ref/qbd/credit-card-charges/delete"}]},{"group":"Credit Card Credits","pages":[{"title":"The Credit Card Credit object","href":"/api-ref/qbd/credit-card-credits/object"},{"openapi":"POST /quickbooks-desktop/credit-card-credits","title":"Create a credit card credit","href":"/api-ref/qbd/credit-card-credits/create"},{"openapi":"POST /quickbooks-desktop/credit-card-credits/{id}","title":"Update a credit card credit","href":"/api-ref/qbd/credit-card-credits/update"},{"openapi":"GET /quickbooks-desktop/credit-card-credits/{id}","title":"Retrieve a credit card credit","href":"/api-ref/qbd/credit-card-credits/retrieve"},{"openapi":"GET /quickbooks-desktop/credit-card-credits","title":"List all credit card credits","href":"/api-ref/qbd/credit-card-credits/list"},{"openapi":"POST /quickbooks-desktop/credit-card-credits/{id}/void","title":"Void a credit card credit","href":"/api-ref/qbd/credit-card-credits/void"},{"openapi":"DELETE /quickbooks-desktop/credit-card-credits/{id}","title":"Delete a credit card credit","href":"/api-ref/qbd/credit-card-credits/delete"}]},{"group":"Credit Card Refunds","pages":[{"title":"The Credit Card Refund object","href":"/api-ref/qbd/credit-card-refunds/object"},{"openapi":"POST /quickbooks-desktop/credit-card-refunds","title":"Create a credit card refund","href":"/api-ref/qbd/credit-card-refunds/create"},{"openapi":"GET /quickbooks-desktop/credit-card-refunds/{id}","title":"Retrieve a credit card refund","href":"/api-ref/qbd/credit-card-refunds/retrieve"},{"openapi":"GET /quickbooks-desktop/credit-card-refunds","title":"List all credit card refunds","href":"/api-ref/qbd/credit-card-refunds/list"},{"openapi":"POST /quickbooks-desktop/credit-card-refunds/{id}/void","title":"Void a credit card refund","href":"/api-ref/qbd/credit-card-refunds/void"},{"openapi":"DELETE /quickbooks-desktop/credit-card-refunds/{id}","title":"Delete a credit card refund","href":"/api-ref/qbd/credit-card-refunds/delete"}]},{"group":"Credit Memos","pages":[{"title":"The Credit Memo object","href":"/api-ref/qbd/credit-memos/object"},{"openapi":"POST /quickbooks-desktop/credit-memos","title":"Create a credit memo","href":"/api-ref/qbd/credit-memos/create"},{"openapi":"POST /quickbooks-desktop/credit-memos/{id}","title":"Update a credit memo","href":"/api-ref/qbd/credit-memos/update"},{"openapi":"GET /quickbooks-desktop/credit-memos/{id}","title":"Retrieve a credit memo","href":"/api-ref/qbd/credit-memos/retrieve"},{"openapi":"GET /quickbooks-desktop/credit-memos","title":"List all credit memos","href":"/api-ref/qbd/credit-memos/list"},{"openapi":"POST /quickbooks-desktop/credit-memos/{id}/void","title":"Void a credit memo","href":"/api-ref/qbd/credit-memos/void"},{"openapi":"DELETE /quickbooks-desktop/credit-memos/{id}","title":"Delete a credit memo","href":"/api-ref/qbd/credit-memos/delete"}]},{"group":"Deleted Transactions","pages":[{"title":"The Deleted Transaction object","href":"/api-ref/qbd/deleted-transactions/object"},{"openapi":"GET /quickbooks-desktop/deleted-transactions","title":"List all deleted transactions","href":"/api-ref/qbd/deleted-transactions/list"}]},{"group":"Deposits","pages":[{"title":"The Deposit object","href":"/api-ref/qbd/deposits/object"},{"openapi":"POST /quickbooks-desktop/deposits","title":"Create a deposit","href":"/api-ref/qbd/deposits/create"},{"openapi":"POST /quickbooks-desktop/deposits/{id}","title":"Update a deposit","href":"/api-ref/qbd/deposits/update"},{"openapi":"GET /quickbooks-desktop/deposits/{id}","title":"Retrieve a deposit","href":"/api-ref/qbd/deposits/retrieve"},{"openapi":"GET /quickbooks-desktop/deposits","title":"List all deposits","href":"/api-ref/qbd/deposits/list"},{"openapi":"POST /quickbooks-desktop/deposits/{id}/void","title":"Void a deposit","href":"/api-ref/qbd/deposits/void"},{"openapi":"DELETE /quickbooks-desktop/deposits/{id}","title":"Delete a deposit","href":"/api-ref/qbd/deposits/delete"}]},{"group":"Estimates","pages":[{"title":"The Estimate object","description":"An estimate is a formal proposal detailing costs and terms for goods or services to a customer. It can be called a \"bid\" or \"proposal\" and uses similar fields to invoices in QuickBooks. As a non-posting transaction, it serves as a planning tool that can be converted to an invoice upon customer acceptance.","href":"/api-ref/qbd/estimates/object"},{"openapi":"POST /quickbooks-desktop/estimates","title":"Create an estimate","href":"/api-ref/qbd/estimates/create"},{"openapi":"POST /quickbooks-desktop/estimates/{id}","title":"Update an estimate","description":"Updates an existing estimate.\n\n**NOTE:** If you include `lines` or `lineGroups`, QuickBooks Desktop replaces each included line list with the array you send, so include unchanged lines you want to keep and use `id: \"-1\"` for new lines.","href":"/api-ref/qbd/estimates/update"},{"openapi":"GET /quickbooks-desktop/estimates/{id}","title":"Retrieve an estimate","href":"/api-ref/qbd/estimates/retrieve"},{"openapi":"GET /quickbooks-desktop/estimates","title":"List all estimates","href":"/api-ref/qbd/estimates/list"},{"openapi":"DELETE /quickbooks-desktop/estimates/{id}","title":"Delete an estimate","href":"/api-ref/qbd/estimates/delete"}]},{"group":"Inventory Adjustments","pages":[{"title":"The Inventory Adjustment object","href":"/api-ref/qbd/inventory-adjustments/object"},{"openapi":"POST /quickbooks-desktop/inventory-adjustments","title":"Create an inventory adjustment","href":"/api-ref/qbd/inventory-adjustments/create"},{"openapi":"POST /quickbooks-desktop/inventory-adjustments/{id}","title":"Update an inventory adjustment","href":"/api-ref/qbd/inventory-adjustments/update"},{"openapi":"GET /quickbooks-desktop/inventory-adjustments/{id}","title":"Retrieve an inventory adjustment","href":"/api-ref/qbd/inventory-adjustments/retrieve"},{"openapi":"GET /quickbooks-desktop/inventory-adjustments","title":"List all inventory adjustments","href":"/api-ref/qbd/inventory-adjustments/list"},{"openapi":"POST /quickbooks-desktop/inventory-adjustments/{id}/void","title":"Void an inventory adjustment","href":"/api-ref/qbd/inventory-adjustments/void"},{"openapi":"DELETE /quickbooks-desktop/inventory-adjustments/{id}","title":"Delete an inventory adjustment","href":"/api-ref/qbd/inventory-adjustments/delete"}]},{"group":"Invoices","pages":[{"title":"The Invoice object","href":"/api-ref/qbd/invoices/object"},{"openapi":"POST /quickbooks-desktop/invoices","title":"Create an invoice","href":"/api-ref/qbd/invoices/create"},{"openapi":"POST /quickbooks-desktop/invoices/{id}","title":"Update an invoice","href":"/api-ref/qbd/invoices/update"},{"openapi":"GET /quickbooks-desktop/invoices/{id}","title":"Retrieve an invoice","href":"/api-ref/qbd/invoices/retrieve"},{"openapi":"GET /quickbooks-desktop/invoices","title":"List all invoices","href":"/api-ref/qbd/invoices/list"},{"openapi":"POST /quickbooks-desktop/invoices/{id}/void","title":"Void an invoice","href":"/api-ref/qbd/invoices/void"},{"openapi":"DELETE /quickbooks-desktop/invoices/{id}","title":"Delete an invoice","href":"/api-ref/qbd/invoices/delete"}]},{"group":"Item Receipts","pages":[{"title":"The Item Receipt object","href":"/api-ref/qbd/item-receipts/object"},{"openapi":"POST /quickbooks-desktop/item-receipts","title":"Create an item receipt","href":"/api-ref/qbd/item-receipts/create"},{"openapi":"POST /quickbooks-desktop/item-receipts/{id}","title":"Update an item receipt","href":"/api-ref/qbd/item-receipts/update"},{"openapi":"GET /quickbooks-desktop/item-receipts/{id}","title":"Retrieve an item receipt","href":"/api-ref/qbd/item-receipts/retrieve"},{"openapi":"GET /quickbooks-desktop/item-receipts","title":"List all item receipts","href":"/api-ref/qbd/item-receipts/list"},{"openapi":"POST /quickbooks-desktop/item-receipts/{id}/void","title":"Void an item receipt","href":"/api-ref/qbd/item-receipts/void"},{"openapi":"DELETE /quickbooks-desktop/item-receipts/{id}","title":"Delete an item receipt","href":"/api-ref/qbd/item-receipts/delete"}]},{"group":"Journal Entries","pages":[{"title":"The Journal Entry object","href":"/api-ref/qbd/journal-entries/object"},{"openapi":"POST /quickbooks-desktop/journal-entries","title":"Create a journal entry","href":"/api-ref/qbd/journal-entries/create"},{"openapi":"POST /quickbooks-desktop/journal-entries/{id}","title":"Update a journal entry","href":"/api-ref/qbd/journal-entries/update"},{"openapi":"GET /quickbooks-desktop/journal-entries/{id}","title":"Retrieve a journal entry","href":"/api-ref/qbd/journal-entries/retrieve"},{"openapi":"GET /quickbooks-desktop/journal-entries","title":"List all journal entries","href":"/api-ref/qbd/journal-entries/list"},{"openapi":"POST /quickbooks-desktop/journal-entries/{id}/void","title":"Void a journal entry","href":"/api-ref/qbd/journal-entries/void"},{"openapi":"DELETE /quickbooks-desktop/journal-entries/{id}","title":"Delete a journal entry","href":"/api-ref/qbd/journal-entries/delete"}]},{"group":"Payments to Deposit","pages":[{"title":"The Payment To Deposit object","href":"/api-ref/qbd/payments-to-deposit/object"},{"openapi":"GET /quickbooks-desktop/payments-to-deposit","title":"List all payments to deposit","href":"/api-ref/qbd/payments-to-deposit/list"}]},{"group":"Purchase Orders","pages":[{"title":"The Purchase Order object","href":"/api-ref/qbd/purchase-orders/object"},{"openapi":"POST /quickbooks-desktop/purchase-orders","title":"Create a purchase order","href":"/api-ref/qbd/purchase-orders/create"},{"openapi":"POST /quickbooks-desktop/purchase-orders/{id}","title":"Update a purchase order","href":"/api-ref/qbd/purchase-orders/update"},{"openapi":"GET /quickbooks-desktop/purchase-orders/{id}","title":"Retrieve a purchase order","href":"/api-ref/qbd/purchase-orders/retrieve"},{"openapi":"GET /quickbooks-desktop/purchase-orders","title":"List all purchase orders","href":"/api-ref/qbd/purchase-orders/list"},{"openapi":"DELETE /quickbooks-desktop/purchase-orders/{id}","title":"Delete a purchase order","href":"/api-ref/qbd/purchase-orders/delete"}]},{"group":"Receive-Payments","pages":[{"title":"The Receive-Payment object","href":"/api-ref/qbd/receive-payments/object"},{"openapi":"POST /quickbooks-desktop/receive-payments","title":"Create a receive-payment","href":"/api-ref/qbd/receive-payments/create"},{"openapi":"POST /quickbooks-desktop/receive-payments/{id}","title":"Update a receive-payment","href":"/api-ref/qbd/receive-payments/update"},{"openapi":"GET /quickbooks-desktop/receive-payments/{id}","title":"Retrieve a receive-payment","href":"/api-ref/qbd/receive-payments/retrieve"},{"openapi":"GET /quickbooks-desktop/receive-payments","title":"List all receive-payments","href":"/api-ref/qbd/receive-payments/list"},{"openapi":"DELETE /quickbooks-desktop/receive-payments/{id}","title":"Delete a receive-payment","href":"/api-ref/qbd/receive-payments/delete"}]},{"group":"Sales Orders","pages":[{"title":"The Sales Order object","href":"/api-ref/qbd/sales-orders/object"},{"openapi":"POST /quickbooks-desktop/sales-orders","title":"Create a sales order","href":"/api-ref/qbd/sales-orders/create"},{"openapi":"POST /quickbooks-desktop/sales-orders/{id}","title":"Update a sales order","href":"/api-ref/qbd/sales-orders/update"},{"openapi":"GET /quickbooks-desktop/sales-orders/{id}","title":"Retrieve a sales order","href":"/api-ref/qbd/sales-orders/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-orders","title":"List all sales orders","href":"/api-ref/qbd/sales-orders/list"},{"openapi":"DELETE /quickbooks-desktop/sales-orders/{id}","title":"Delete a sales order","href":"/api-ref/qbd/sales-orders/delete"}]},{"group":"Sales Receipts","pages":[{"title":"The Sales Receipt object","href":"/api-ref/qbd/sales-receipts/object"},{"openapi":"POST /quickbooks-desktop/sales-receipts","title":"Create a sales receipt","href":"/api-ref/qbd/sales-receipts/create"},{"openapi":"POST /quickbooks-desktop/sales-receipts/{id}","title":"Update a sales receipt","href":"/api-ref/qbd/sales-receipts/update"},{"openapi":"GET /quickbooks-desktop/sales-receipts/{id}","title":"Retrieve a sales receipt","href":"/api-ref/qbd/sales-receipts/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-receipts","title":"List all sales receipts","href":"/api-ref/qbd/sales-receipts/list"},{"openapi":"POST /quickbooks-desktop/sales-receipts/{id}/void","title":"Void a sales receipt","href":"/api-ref/qbd/sales-receipts/void"},{"openapi":"DELETE /quickbooks-desktop/sales-receipts/{id}","title":"Delete a sales receipt","href":"/api-ref/qbd/sales-receipts/delete"}]},{"group":"Sales-Tax Payment Checks","pages":[{"title":"The Sales-Tax Payment Check object","href":"/api-ref/qbd/sales-tax-payment-checks/object"},{"openapi":"POST /quickbooks-desktop/sales-tax-payment-checks","title":"Create a sales-tax payment check","href":"/api-ref/qbd/sales-tax-payment-checks/create"},{"openapi":"POST /quickbooks-desktop/sales-tax-payment-checks/{id}","title":"Update a sales-tax payment check","href":"/api-ref/qbd/sales-tax-payment-checks/update"},{"openapi":"GET /quickbooks-desktop/sales-tax-payment-checks/{id}","title":"Retrieve a sales-tax payment check","href":"/api-ref/qbd/sales-tax-payment-checks/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-tax-payment-checks","title":"List all sales-tax payment checks","href":"/api-ref/qbd/sales-tax-payment-checks/list"},{"openapi":"POST /quickbooks-desktop/sales-tax-payment-checks/{id}/void","title":"Void a sales-tax payment check","href":"/api-ref/qbd/sales-tax-payment-checks/void"},{"openapi":"DELETE /quickbooks-desktop/sales-tax-payment-checks/{id}","title":"Delete a sales-tax payment check","href":"/api-ref/qbd/sales-tax-payment-checks/delete"}]},{"group":"Time Tracking Activities","pages":[{"title":"The Time Tracking Activity object","href":"/api-ref/qbd/time-tracking-activities/object"},{"openapi":"POST /quickbooks-desktop/time-tracking-activities","title":"Create a time tracking activity","href":"/api-ref/qbd/time-tracking-activities/create"},{"openapi":"POST /quickbooks-desktop/time-tracking-activities/{id}","title":"Update a time tracking activity","href":"/api-ref/qbd/time-tracking-activities/update"},{"openapi":"GET /quickbooks-desktop/time-tracking-activities/{id}","title":"Retrieve a time tracking activity","href":"/api-ref/qbd/time-tracking-activities/retrieve"},{"openapi":"GET /quickbooks-desktop/time-tracking-activities","title":"List all time tracking activities","href":"/api-ref/qbd/time-tracking-activities/list"},{"openapi":"DELETE /quickbooks-desktop/time-tracking-activities/{id}","title":"Delete a time tracking activity","href":"/api-ref/qbd/time-tracking-activities/delete"}]},{"group":"Transfers","pages":[{"title":"The Transfer object","href":"/api-ref/qbd/transfers/object"},{"openapi":"POST /quickbooks-desktop/transfers","title":"Create a transfer","href":"/api-ref/qbd/transfers/create"},{"openapi":"POST /quickbooks-desktop/transfers/{id}","title":"Update a transfer","href":"/api-ref/qbd/transfers/update"},{"openapi":"GET /quickbooks-desktop/transfers/{id}","title":"Retrieve a transfer","href":"/api-ref/qbd/transfers/retrieve"},{"openapi":"GET /quickbooks-desktop/transfers","title":"List all transfers","href":"/api-ref/qbd/transfers/list"}]},{"group":"Vendor Credits","pages":[{"title":"The Vendor Credit object","href":"/api-ref/qbd/vendor-credits/object"},{"openapi":"POST /quickbooks-desktop/vendor-credits","title":"Create a vendor credit","href":"/api-ref/qbd/vendor-credits/create"},{"openapi":"POST /quickbooks-desktop/vendor-credits/{id}","title":"Update a vendor credit","href":"/api-ref/qbd/vendor-credits/update"},{"openapi":"GET /quickbooks-desktop/vendor-credits/{id}","title":"Retrieve a vendor credit","href":"/api-ref/qbd/vendor-credits/retrieve"},{"openapi":"GET /quickbooks-desktop/vendor-credits","title":"List all vendor credits","href":"/api-ref/qbd/vendor-credits/list"},{"openapi":"POST /quickbooks-desktop/vendor-credits/{id}/void","title":"Void a vendor credit","href":"/api-ref/qbd/vendor-credits/void"},{"openapi":"DELETE /quickbooks-desktop/vendor-credits/{id}","title":"Delete a vendor credit","href":"/api-ref/qbd/vendor-credits/delete"}]}]},{"group":"General","pages":[{"group":"Account Tax Lines","pages":[{"title":"The Account Tax Line object","href":"/api-ref/qbd/account-tax-lines/object"},{"openapi":"GET /quickbooks-desktop/account-tax-lines","title":"List all account tax lines","href":"/api-ref/qbd/account-tax-lines/list"}]},{"group":"Accounts","pages":[{"title":"The Account object","href":"/api-ref/qbd/accounts/object"},{"openapi":"POST /quickbooks-desktop/accounts","title":"Create an account","href":"/api-ref/qbd/accounts/create"},{"openapi":"POST /quickbooks-desktop/accounts/{id}","title":"Update an account","href":"/api-ref/qbd/accounts/update"},{"openapi":"GET /quickbooks-desktop/accounts/{id}","title":"Retrieve an account","href":"/api-ref/qbd/accounts/retrieve"},{"openapi":"GET /quickbooks-desktop/accounts","title":"List all accounts","href":"/api-ref/qbd/accounts/list"}]},{"group":"Classes","pages":[{"title":"The Class object","href":"/api-ref/qbd/classes/object"},{"openapi":"POST /quickbooks-desktop/classes","title":"Create a class","href":"/api-ref/qbd/classes/create"},{"openapi":"POST /quickbooks-desktop/classes/{id}","title":"Update a class","href":"/api-ref/qbd/classes/update"},{"openapi":"GET /quickbooks-desktop/classes/{id}","title":"Retrieve a class","href":"/api-ref/qbd/classes/retrieve"},{"openapi":"GET /quickbooks-desktop/classes","title":"List all classes","href":"/api-ref/qbd/classes/list"}]},{"group":"Company","pages":[{"title":"The Company object","href":"/api-ref/qbd/company/object"},{"openapi":"GET /quickbooks-desktop/company","title":"Retrieve company file info","href":"/api-ref/qbd/company/retrieve"}]},{"group":"Currencies","pages":[{"title":"The Currency object","href":"/api-ref/qbd/currencies/object"},{"openapi":"POST /quickbooks-desktop/currencies","title":"Create a currency","href":"/api-ref/qbd/currencies/create"},{"openapi":"POST /quickbooks-desktop/currencies/{id}","title":"Update a currency","href":"/api-ref/qbd/currencies/update"},{"openapi":"GET /quickbooks-desktop/currencies/{id}","title":"Retrieve a currency","href":"/api-ref/qbd/currencies/retrieve"},{"openapi":"GET /quickbooks-desktop/currencies","title":"List all currencies","href":"/api-ref/qbd/currencies/list"}]},{"group":"Customer Types","pages":[{"title":"The Customer Type object","href":"/api-ref/qbd/customer-types/object"},{"openapi":"POST /quickbooks-desktop/customer-types","title":"Create a customer type","href":"/api-ref/qbd/customer-types/create"},{"openapi":"GET /quickbooks-desktop/customer-types/{id}","title":"Retrieve a customer type","href":"/api-ref/qbd/customer-types/retrieve"},{"openapi":"GET /quickbooks-desktop/customer-types","title":"List all customer types","href":"/api-ref/qbd/customer-types/list"}]},{"group":"Customers / Jobs","pages":[{"title":"The Customer object","href":"/api-ref/qbd/customers/object"},{"openapi":"POST /quickbooks-desktop/customers","title":"Create a customer","href":"/api-ref/qbd/customers/create"},{"openapi":"POST /quickbooks-desktop/customers/{id}","title":"Update a customer","href":"/api-ref/qbd/customers/update"},{"openapi":"GET /quickbooks-desktop/customers/{id}","title":"Retrieve a customer","href":"/api-ref/qbd/customers/retrieve"},{"openapi":"GET /quickbooks-desktop/customers","title":"List all customers","href":"/api-ref/qbd/customers/list"}]},{"group":"Date-Driven Terms","pages":[{"title":"The Date-Driven Term object","href":"/api-ref/qbd/date-driven-terms/object"},{"openapi":"POST /quickbooks-desktop/date-driven-terms","title":"Create a date-driven term","href":"/api-ref/qbd/date-driven-terms/create"},{"openapi":"GET /quickbooks-desktop/date-driven-terms/{id}","title":"Retrieve a date-driven term","href":"/api-ref/qbd/date-driven-terms/retrieve"},{"openapi":"GET /quickbooks-desktop/date-driven-terms","title":"List all date-driven terms","href":"/api-ref/qbd/date-driven-terms/list"}]},{"group":"Deleted List-Objects","pages":[{"title":"The Deleted List-Object object","href":"/api-ref/qbd/deleted-list-objects/object"},{"openapi":"GET /quickbooks-desktop/deleted-list-objects","title":"List all deleted list-objects","href":"/api-ref/qbd/deleted-list-objects/list"}]},{"group":"Employees","pages":[{"title":"The Employee object","href":"/api-ref/qbd/employees/object"},{"openapi":"POST /quickbooks-desktop/employees","title":"Create an employee","href":"/api-ref/qbd/employees/create"},{"openapi":"POST /quickbooks-desktop/employees/{id}","title":"Update an employee","href":"/api-ref/qbd/employees/update"},{"openapi":"GET /quickbooks-desktop/employees/{id}","title":"Retrieve an employee","href":"/api-ref/qbd/employees/retrieve"},{"openapi":"GET /quickbooks-desktop/employees","title":"List all employees","href":"/api-ref/qbd/employees/list"}]},{"group":"Inventory Sites","pages":[{"title":"The Inventory Site object","href":"/api-ref/qbd/inventory-sites/object"},{"openapi":"POST /quickbooks-desktop/inventory-sites","title":"Create an inventory site","href":"/api-ref/qbd/inventory-sites/create"},{"openapi":"POST /quickbooks-desktop/inventory-sites/{id}","title":"Update an inventory site","href":"/api-ref/qbd/inventory-sites/update"},{"openapi":"GET /quickbooks-desktop/inventory-sites/{id}","title":"Retrieve an inventory site","href":"/api-ref/qbd/inventory-sites/retrieve"},{"openapi":"GET /quickbooks-desktop/inventory-sites","title":"List all inventory sites","href":"/api-ref/qbd/inventory-sites/list"}]},{"group":"Other-Names","pages":[{"title":"The Other-Name object","href":"/api-ref/qbd/other-names/object"},{"openapi":"POST /quickbooks-desktop/other-names","title":"Create an other-name","href":"/api-ref/qbd/other-names/create"},{"openapi":"POST /quickbooks-desktop/other-names/{id}","title":"Update an other-name","href":"/api-ref/qbd/other-names/update"},{"openapi":"GET /quickbooks-desktop/other-names/{id}","title":"Retrieve an other-name","href":"/api-ref/qbd/other-names/retrieve"},{"openapi":"GET /quickbooks-desktop/other-names","title":"List all other-names","href":"/api-ref/qbd/other-names/list"}]},{"group":"Payment Methods","pages":[{"title":"The Payment Method object","href":"/api-ref/qbd/payment-methods/object"},{"openapi":"POST /quickbooks-desktop/payment-methods","title":"Create a payment method","href":"/api-ref/qbd/payment-methods/create"},{"openapi":"GET /quickbooks-desktop/payment-methods/{id}","title":"Retrieve a payment method","href":"/api-ref/qbd/payment-methods/retrieve"},{"openapi":"GET /quickbooks-desktop/payment-methods","title":"List all payment methods","href":"/api-ref/qbd/payment-methods/list"}]},{"group":"Payroll Wage Items","pages":[{"title":"The Payroll Wage Item object","href":"/api-ref/qbd/payroll-wage-items/object"},{"openapi":"POST /quickbooks-desktop/payroll-wage-items","title":"Create a payroll wage item","href":"/api-ref/qbd/payroll-wage-items/create"},{"openapi":"GET /quickbooks-desktop/payroll-wage-items/{id}","title":"Retrieve a payroll wage item","href":"/api-ref/qbd/payroll-wage-items/retrieve"},{"openapi":"GET /quickbooks-desktop/payroll-wage-items","title":"List all payroll wage items","href":"/api-ref/qbd/payroll-wage-items/list"}]},{"group":"Preferences","pages":[{"title":"The Preferences object","href":"/api-ref/qbd/preferences/object"},{"openapi":"GET /quickbooks-desktop/preferences","title":"Retrieve company file preferences","href":"/api-ref/qbd/preferences/retrieve"}]},{"group":"Price Levels","pages":[{"title":"The Price Level object","href":"/api-ref/qbd/price-levels/object"},{"openapi":"POST /quickbooks-desktop/price-levels","title":"Create a price level","href":"/api-ref/qbd/price-levels/create"},{"openapi":"POST /quickbooks-desktop/price-levels/{id}","title":"Update a price level","href":"/api-ref/qbd/price-levels/update"},{"openapi":"GET /quickbooks-desktop/price-levels/{id}","title":"Retrieve a price level","href":"/api-ref/qbd/price-levels/retrieve"},{"openapi":"GET /quickbooks-desktop/price-levels","title":"List all price levels","href":"/api-ref/qbd/price-levels/list"}]},{"group":"Reports","pages":[{"title":"The Report object","href":"/api-ref/qbd/reports/object"},{"openapi":"GET /quickbooks-desktop/reports/general-summary","title":"Retrieve a general summary report","href":"/api-ref/qbd/reports/general-summary"},{"openapi":"GET /quickbooks-desktop/reports/general-detail","title":"Retrieve a general detail report","href":"/api-ref/qbd/reports/general-detail"},{"openapi":"GET /quickbooks-desktop/reports/aging","title":"Retrieve an aging report","href":"/api-ref/qbd/reports/aging"},{"openapi":"GET /quickbooks-desktop/reports/budget-summary","title":"Retrieve a budget summary report","href":"/api-ref/qbd/reports/budget-summary"},{"openapi":"GET /quickbooks-desktop/reports/job","title":"Retrieve a job report","href":"/api-ref/qbd/reports/job"},{"openapi":"GET /quickbooks-desktop/reports/time","title":"Retrieve a time report","href":"/api-ref/qbd/reports/time"},{"openapi":"GET /quickbooks-desktop/reports/custom-detail","title":"Retrieve a custom detail report","href":"/api-ref/qbd/reports/custom-detail"},{"openapi":"GET /quickbooks-desktop/reports/custom-summary","title":"Retrieve a custom summary report","href":"/api-ref/qbd/reports/custom-summary"},{"openapi":"GET /quickbooks-desktop/reports/payroll-detail","title":"Retrieve a payroll detail report","href":"/api-ref/qbd/reports/payroll-detail"},{"openapi":"GET /quickbooks-desktop/reports/payroll-summary","title":"Retrieve a payroll summary report","href":"/api-ref/qbd/reports/payroll-summary"}]},{"group":"Sales Representatives","pages":[{"title":"The Sales Representative object","href":"/api-ref/qbd/sales-representatives/object"},{"openapi":"POST /quickbooks-desktop/sales-representatives","title":"Create a sales representative","href":"/api-ref/qbd/sales-representatives/create"},{"openapi":"POST /quickbooks-desktop/sales-representatives/{id}","title":"Update a sales representative","href":"/api-ref/qbd/sales-representatives/update"},{"openapi":"GET /quickbooks-desktop/sales-representatives/{id}","title":"Retrieve a sales representative","href":"/api-ref/qbd/sales-representatives/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-representatives","title":"List all sales representatives","href":"/api-ref/qbd/sales-representatives/list"}]},{"group":"Sales-Tax Codes","pages":[{"title":"The Sales-Tax Code object","href":"/api-ref/qbd/sales-tax-codes/object"},{"openapi":"POST /quickbooks-desktop/sales-tax-codes","title":"Create a sales-tax code","href":"/api-ref/qbd/sales-tax-codes/create"},{"openapi":"POST /quickbooks-desktop/sales-tax-codes/{id}","title":"Update a sales-tax code","href":"/api-ref/qbd/sales-tax-codes/update"},{"openapi":"GET /quickbooks-desktop/sales-tax-codes/{id}","title":"Retrieve a sales-tax code","href":"/api-ref/qbd/sales-tax-codes/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-tax-codes","title":"List all sales-tax codes","href":"/api-ref/qbd/sales-tax-codes/list"}]},{"group":"Shipping Methods","pages":[{"title":"The Shipping Method object","href":"/api-ref/qbd/shipping-methods/object"},{"openapi":"POST /quickbooks-desktop/shipping-methods","title":"Create a shipping method","href":"/api-ref/qbd/shipping-methods/create"},{"openapi":"GET /quickbooks-desktop/shipping-methods/{id}","title":"Retrieve a shipping method","href":"/api-ref/qbd/shipping-methods/retrieve"},{"openapi":"GET /quickbooks-desktop/shipping-methods","title":"List all shipping methods","href":"/api-ref/qbd/shipping-methods/list"}]},{"group":"Standard Terms","pages":[{"title":"The Standard Term object","href":"/api-ref/qbd/standard-terms/object"},{"openapi":"POST /quickbooks-desktop/standard-terms","title":"Create a standard term","href":"/api-ref/qbd/standard-terms/create"},{"openapi":"GET /quickbooks-desktop/standard-terms/{id}","title":"Retrieve a standard term","href":"/api-ref/qbd/standard-terms/retrieve"},{"openapi":"GET /quickbooks-desktop/standard-terms","title":"List all standard terms","href":"/api-ref/qbd/standard-terms/list"}]},{"group":"Templates","pages":[{"title":"The Template object","href":"/api-ref/qbd/templates/object"},{"openapi":"GET /quickbooks-desktop/templates","title":"List all templates","href":"/api-ref/qbd/templates/list"}]},{"group":"Unit-Of-Measure Sets","pages":[{"title":"The Unit-Of-Measure Set object","href":"/api-ref/qbd/unit-of-measure-sets/object"},{"openapi":"POST /quickbooks-desktop/unit-of-measure-sets","title":"Create an unit-of-measure set","href":"/api-ref/qbd/unit-of-measure-sets/create"},{"openapi":"GET /quickbooks-desktop/unit-of-measure-sets/{id}","title":"Retrieve an unit-of-measure set","href":"/api-ref/qbd/unit-of-measure-sets/retrieve"},{"openapi":"GET /quickbooks-desktop/unit-of-measure-sets","title":"List all unit-of-measure sets","href":"/api-ref/qbd/unit-of-measure-sets/list"}]},{"group":"Vendors","pages":[{"title":"The Vendor object","href":"/api-ref/qbd/vendors/object"},{"openapi":"POST /quickbooks-desktop/vendors","title":"Create a vendor","href":"/api-ref/qbd/vendors/create"},{"openapi":"POST /quickbooks-desktop/vendors/{id}","title":"Update a vendor","href":"/api-ref/qbd/vendors/update"},{"openapi":"GET /quickbooks-desktop/vendors/{id}","title":"Retrieve a vendor","href":"/api-ref/qbd/vendors/retrieve"},{"openapi":"GET /quickbooks-desktop/vendors","title":"List all vendors","href":"/api-ref/qbd/vendors/list"}]}]},{"group":"Items","pages":[{"group":"Discount Items","pages":[{"title":"The Discount Item object","href":"/api-ref/qbd/discount-items/object"},{"openapi":"POST /quickbooks-desktop/discount-items","title":"Create a discount item","href":"/api-ref/qbd/discount-items/create"},{"openapi":"POST /quickbooks-desktop/discount-items/{id}","title":"Update a discount item","href":"/api-ref/qbd/discount-items/update"},{"openapi":"GET /quickbooks-desktop/discount-items/{id}","title":"Retrieve a discount item","href":"/api-ref/qbd/discount-items/retrieve"},{"openapi":"GET /quickbooks-desktop/discount-items","title":"List all discount items","href":"/api-ref/qbd/discount-items/list"}]},{"group":"Inventory Assembly Items","pages":[{"title":"The Inventory Assembly Item object","href":"/api-ref/qbd/inventory-assembly-items/object"},{"openapi":"POST /quickbooks-desktop/inventory-assembly-items","title":"Create an inventory assembly item","href":"/api-ref/qbd/inventory-assembly-items/create"},{"openapi":"POST /quickbooks-desktop/inventory-assembly-items/{id}","title":"Update an inventory assembly item","href":"/api-ref/qbd/inventory-assembly-items/update"},{"openapi":"GET /quickbooks-desktop/inventory-assembly-items/{id}","title":"Retrieve an inventory assembly item","href":"/api-ref/qbd/inventory-assembly-items/retrieve"},{"openapi":"GET /quickbooks-desktop/inventory-assembly-items","title":"List all inventory assembly items","href":"/api-ref/qbd/inventory-assembly-items/list"}]},{"group":"Inventory Items","pages":[{"title":"The Inventory Item object","href":"/api-ref/qbd/inventory-items/object"},{"openapi":"POST /quickbooks-desktop/inventory-items","title":"Create an inventory item","href":"/api-ref/qbd/inventory-items/create"},{"openapi":"POST /quickbooks-desktop/inventory-items/{id}","title":"Update an inventory item","href":"/api-ref/qbd/inventory-items/update"},{"openapi":"GET /quickbooks-desktop/inventory-items/{id}","title":"Retrieve an inventory item","href":"/api-ref/qbd/inventory-items/retrieve"},{"openapi":"GET /quickbooks-desktop/inventory-items","title":"List all inventory items","href":"/api-ref/qbd/inventory-items/list"}]},{"group":"Item Groups","pages":[{"title":"The Item Group object","href":"/api-ref/qbd/item-groups/object"},{"openapi":"POST /quickbooks-desktop/item-groups","title":"Create an item group","href":"/api-ref/qbd/item-groups/create"},{"openapi":"POST /quickbooks-desktop/item-groups/{id}","title":"Update an item group","href":"/api-ref/qbd/item-groups/update"},{"openapi":"GET /quickbooks-desktop/item-groups/{id}","title":"Retrieve an item group","href":"/api-ref/qbd/item-groups/retrieve"},{"openapi":"GET /quickbooks-desktop/item-groups","title":"List all item groups","href":"/api-ref/qbd/item-groups/list"}]},{"group":"Item Sites","pages":[{"title":"The Item Site object","href":"/api-ref/qbd/item-sites/object"},{"openapi":"GET /quickbooks-desktop/item-sites/{id}","title":"Retrieve an item site","href":"/api-ref/qbd/item-sites/retrieve"},{"openapi":"GET /quickbooks-desktop/item-sites","title":"List all item sites","href":"/api-ref/qbd/item-sites/list"}]},{"group":"Non-Inventory Items","pages":[{"title":"The Non-Inventory Item object","href":"/api-ref/qbd/non-inventory-items/object"},{"openapi":"POST /quickbooks-desktop/non-inventory-items","title":"Create a non-inventory item","href":"/api-ref/qbd/non-inventory-items/create"},{"openapi":"POST /quickbooks-desktop/non-inventory-items/{id}","title":"Update a non-inventory item","href":"/api-ref/qbd/non-inventory-items/update"},{"openapi":"GET /quickbooks-desktop/non-inventory-items/{id}","title":"Retrieve a non-inventory item","href":"/api-ref/qbd/non-inventory-items/retrieve"},{"openapi":"GET /quickbooks-desktop/non-inventory-items","title":"List all non-inventory items","href":"/api-ref/qbd/non-inventory-items/list"}]},{"group":"Other Charge Items","pages":[{"title":"The Other Charge Item object","href":"/api-ref/qbd/other-charge-items/object"},{"openapi":"POST /quickbooks-desktop/other-charge-items","title":"Create an other charge item","href":"/api-ref/qbd/other-charge-items/create"},{"openapi":"POST /quickbooks-desktop/other-charge-items/{id}","title":"Update an other charge item","href":"/api-ref/qbd/other-charge-items/update"},{"openapi":"GET /quickbooks-desktop/other-charge-items/{id}","title":"Retrieve an other charge item","href":"/api-ref/qbd/other-charge-items/retrieve"},{"openapi":"GET /quickbooks-desktop/other-charge-items","title":"List all other charge items","href":"/api-ref/qbd/other-charge-items/list"}]},{"group":"Sales-Tax Group Items","pages":[{"title":"The Sales-Tax Group Item object","href":"/api-ref/qbd/sales-tax-group-items/object"},{"openapi":"POST /quickbooks-desktop/sales-tax-group-items","title":"Create a sales-tax group item","href":"/api-ref/qbd/sales-tax-group-items/create"},{"openapi":"POST /quickbooks-desktop/sales-tax-group-items/{id}","title":"Update a sales-tax group item","href":"/api-ref/qbd/sales-tax-group-items/update"},{"openapi":"GET /quickbooks-desktop/sales-tax-group-items/{id}","title":"Retrieve a sales-tax group item","href":"/api-ref/qbd/sales-tax-group-items/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-tax-group-items","title":"List all sales-tax group items","href":"/api-ref/qbd/sales-tax-group-items/list"}]},{"group":"Sales-Tax Items","pages":[{"title":"The Sales-Tax Item object","href":"/api-ref/qbd/sales-tax-items/object"},{"openapi":"POST /quickbooks-desktop/sales-tax-items","title":"Create a sales-tax item","href":"/api-ref/qbd/sales-tax-items/create"},{"openapi":"POST /quickbooks-desktop/sales-tax-items/{id}","title":"Update a sales-tax item","href":"/api-ref/qbd/sales-tax-items/update"},{"openapi":"GET /quickbooks-desktop/sales-tax-items/{id}","title":"Retrieve a sales-tax item","href":"/api-ref/qbd/sales-tax-items/retrieve"},{"openapi":"GET /quickbooks-desktop/sales-tax-items","title":"List all sales-tax items","href":"/api-ref/qbd/sales-tax-items/list"}]},{"group":"Service Items","pages":[{"title":"The Service Item object","href":"/api-ref/qbd/service-items/object"},{"openapi":"POST /quickbooks-desktop/service-items","title":"Create a service item","href":"/api-ref/qbd/service-items/create"},{"openapi":"POST /quickbooks-desktop/service-items/{id}","title":"Update a service item","href":"/api-ref/qbd/service-items/update"},{"openapi":"GET /quickbooks-desktop/service-items/{id}","title":"Retrieve a service item","href":"/api-ref/qbd/service-items/retrieve"},{"openapi":"GET /quickbooks-desktop/service-items","title":"List all service items","href":"/api-ref/qbd/service-items/list"}]},{"group":"Subtotal Items","pages":[{"title":"The Subtotal Item object","href":"/api-ref/qbd/subtotal-items/object"},{"openapi":"POST /quickbooks-desktop/subtotal-items","title":"Create a subtotal item","href":"/api-ref/qbd/subtotal-items/create"},{"openapi":"POST /quickbooks-desktop/subtotal-items/{id}","title":"Update a subtotal item","href":"/api-ref/qbd/subtotal-items/update"},{"openapi":"GET /quickbooks-desktop/subtotal-items/{id}","title":"Retrieve a subtotal item","href":"/api-ref/qbd/subtotal-items/retrieve"},{"openapi":"GET /quickbooks-desktop/subtotal-items","title":"List all subtotal items","href":"/api-ref/qbd/subtotal-items/list"}]}]},{"group":"More","pages":[{"title":"Missing QBD types","href":"/api-ref/missing-qbd-types"}]}]},{"tab":"Help","pages":[{"title":"Help","href":"/help/faq/end-user-faq"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/overview"}]}]},"title":"Create an estimate - Conductor Docs","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","Page-CBCH2P7b.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","clsx-Cs6nMGht.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-zbf22OZA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-C_fs-y5n.js"]}