Properties
| Name | Type | Description |
|---|---|---|
| CurrencyRef | object | Reference to the currency in which all amounts on the associated transaction are expressed. This must be defined if multicurrency is enabled for the company. Multicurrency is enabled for the company i |
| VendorRef | object | Reference to the vendor for this transaction. Query the Vendor name list resource to determine the appropriate Vendor object for this reference. Use Vendor.Id and Vendor.Name from that object for Vend |
| Line | array | The minimum line item required for the request. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/quickbooks/json-schema/quickbooks-billrequest-schema.json",
"title": "billrequest",
"x-generated": "2026-11-10",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/quickbooks-bill-api-openapi.yml#/components/schemas/billrequest",
"type": "object",
"properties": {
"CurrencyRef": {
"type": "object",
"x-intuit-type": "CurrencyRefType",
"description": "Reference to the currency in which all amounts on the associated transaction are expressed. This must be defined if multicurrency is enabled for the company.\n\nMulticurrency is enabled for the company if Preferences.MultiCurrencyEnabled is set to true. Read more about multicurrency support here. Required if multicurrency is enabled for the company.",
"x-intuit-required": "Conditionally required"
},
"VendorRef": {
"allOf": [
{
"$ref": "#/$defs/referencetype"
}
],
"description": "Reference to the vendor for this transaction. Query the Vendor name list resource to determine the appropriate Vendor object for this reference. Use Vendor.Id and Vendor.Name from that object for VendorRef.value and VendorRef.name, respectively.",
"x-intuit-required": "Required",
"x-intuit-filterable": true
},
"Line": {
"type": "array",
"items": {
"$ref": "#/$defs/line"
},
"description": "The minimum line item required for the request.",
"x-intuit-required": "Required"
}
},
"required": [
"Line",
"VendorRef"
],
"$defs": {
"line": {
"type": "object",
"title": "line",
"properties": {
"Received": {
"type": "string",
"description": "Supported for Purchase Order only. The amount/quantity received of the line, which depends on the type of the line. It can represent the received amount or received quantity based on the line type detail. Applies to existing and new entities."
},
"LinkedTxn": {
"type": "array",
"items": {},
"description": "Transaction to which the current entity is related. For example, an invoice line may link to a sales order or estimate.",
"x-intuit-required": "Optional"
},
"Description": {
"type": "string",
"description": "Free form text description of the line item that appears in the printed record.",
"x-intuit-required": "Optional"
},
"ProjectRef": {
"allOf": [
{
"$ref": "#/$defs/referencetype"
}
],
"description": "Reference to the Project ID associated with this transaction.",
"x-intuit-required": "Conditionally required"
},
"LineNum": {
"type": "number",
"description": "Specifies the position of the line in the collection of transaction lines. Positive integer",
"x-intuit-required": "Optional"
},
"Amount": {
"type": "number",
"description": "The amount of the line item.",
"x-intuit-required": "Required"
},
"Id": {
"type": "string",
"description": "The Id of the line item. Its use in requests is as folllows:\nIf\nIdis greater than zero and exists for the company, the request is considered an update operation for a line item.\n\nIf no\nIdis provided, the\nIdprovided is less than or equal to zero, or the\nIdprovided is greater than zero and does not exist for the company then the request is considered a create operation for a line item.\n\nAvailable in all objects that use lines and support the update operation.",
"x-intuit-required": "Required for update"
}
},
"required": [
"Amount"
]
},
"referencetype": {
"type": "object",
"title": "referencetype",
"properties": {
"name": {
"type": "string",
"description": "An identifying name for the object being referenced by value and is derived from the field that holds the common name of that object. This varies by context and specific type of object referenced. For example, references to a Customer object use Customer.DisplayName to populate this field. Optionally returned in responses, implementation dependent.",
"x-intuit-required": "Optional"
},
"value": {
"type": "string",
"description": "The ID for the referenced object as found in the Id field of the object payload. The context is set by the type of reference and is specific to the QuickBooks company file.",
"x-intuit-required": "Required"
}
},
"required": [
"value"
]
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/quickbooks-billrequest"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.