List all price levels
Changed onReturns a list of price levels.
NOTE: QuickBooks Desktop does not support pagination for price levels; hence, there is no cursor parameter. Users typically have few price levels.
Request
- Base URLhttps://api.conductor.is/v1
- AuthHTTP bearer
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Query parameters
Filter for specific price levels by their QuickBooks-assigned unique identifier(s).
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
[ "80000001-1234567890" ]
Filter for specific price levels by their name(s), case-insensitive. Like id, name is a unique identifier for a price level.
IMPORTANT: If you include this parameter, QuickBooks will ignore all other query parameters for this request.
NOTE: If any of the values you specify in this parameter are not found, the request will return an error.
[ "Wholesale 20% Discount" ]
The maximum number of objects to return.
IMPORTANT: QuickBooks Desktop does not support cursor-based pagination for price levels, so this parameter only limits the response size.
When this parameter is omitted, the endpoint returns all price levels without limit, unlike paginated endpoints which default to 150 records.
Filter for price levels that are active, inactive, or both.
Filter for price levels updated on or after this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the start of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T00:00:00).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for price levels updated on or before this date/time. Accepts the following ISO 8601 formats:
- date-only (YYYY-MM-DD) - QuickBooks Desktop interprets the date as the end of the specified day in the local timezone of the end-user's computer (e.g., 2025-01-01 → 2025-01-01T23:59:59).
- datetime without timezone (YYYY-MM-DDTHH:mm:ss) - QuickBooks Desktop interprets the timestamp in the local timezone of the end-user's computer.
- datetime with timezone (YYYY-MM-DDTHH:mm:ss±HH:mm) - QuickBooks Desktop interprets the timestamp using the specified timezone.
Filter for price levels whose name contains this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameStartsWith or nameEndsWith.
Filter for price levels whose name starts with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameEndsWith.
Filter for price levels whose name ends with this substring, case-insensitive.
NOTE: If you use this parameter, you cannot also use nameContains or nameStartsWith.
Filter for price levels whose name sorts at or after this value (inclusive), compared case-insensitively in QuickBooks' sort order: punctuation first, then digits, then letters.
IMPORTANT: Even when you set nameFrom or nameTo, QuickBooks does not return price levels sorted by name: it returns fixed-percentage price levels first, then per-item price levels, each group sorted by name. Do not use these parameters to page through price levels.
NOTE: If you use this parameter, you cannot also use nameContains, nameStartsWith, or nameEndsWith.
Filter for price levels whose name sorts at or before this value (inclusive), compared case-insensitively in QuickBooks' sort order: punctuation first, then digits, then letters. If you also set nameFrom, it must not sort after this value, or QuickBooks returns an error.
IMPORTANT: Even when you set nameFrom or nameTo, QuickBooks does not return price levels sorted by name: it returns fixed-percentage price levels first, then per-item price levels, each group sorted by name. Do not use these parameters to page through price levels.
NOTE: If you use this parameter, you cannot also use nameContains, nameStartsWith, or nameEndsWith.
Filter for price levels containing this item. QuickBooks Desktop accepts only one item for this filter.
Filter for price levels in these currencies.
[ "80000001-1234567890" ]
Headers
The ID of the End-User to receive this request.
Response
Returns a list of price levels.
Example response
{
"objectType": "list",
"url": "/v1/quickbooks-desktop/price-levels",
"data": [
{
"id": "80000001-1234567890",
"objectType": "qbd_price_level",
"createdAt": "2025-01-01T12:34:56+00:00",
"updatedAt": "2025-02-01T12:34:56+00:00",
"revisionNumber": "1721172183",
"name": "Wholesale 20% Discount",
"isActive": true,
"priceLevelType": "fixed_percentage",
"fixedPercentage": "-10.0",
"perItemPriceLevels": [
{
"item": {
"id": "80000001-1234567890",
"fullName": "Widget A"
},
"customPrice": "19.99",
"customPricePercent": "15.0"
}
],
"currency": {
"id": "80000001-1234567890",
"fullName": "USD"
}
}
]
}Changes
- warning
deleted the
queryrequest parameteritemIds - info
added the new optional
queryrequest parameteritemId
- warning
- breaking
for the
queryrequest parameterstatus, default valueactivewas added
- breaking