---
updatedAt: 2026-06-29T20:33:19.000Z
agentTools:
  projectIndex: https://developer.bill.com/llms.txt
---

# Get list of items

Get a list of item objects. By default, you get 20 results on one page of results. Set `max` in your request to get up to 100 results on one page.

See [Search operations with lists](https://developer.bill.com/docs/search-op-with-lists) in the Guides section for filtering, sorting, and pagination examples.

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "BILL v3 API",
    "description": "BILL is a cloud-based financial operations platform for an organization's accounts payable (AP), accounts receivable (AR), and spend & expense (S&E) automation.\n\nThe BILL v3 API gives you access to the same infrastructure that powers the AP, AR, and S&E products. In addition, you can receive real-time event notifications with webhooks.\n\nThe BILL Developer Documentation is available at [developer.bill.com](https://developer.bill.com/docs/home).\n\n## Quickstart\nSign-up and generate a developer key for working with the BILL v3 API. With this key, you can build with the AP, AR, BILL network, and webhook workflows. See [Sandbox API sign up](https://developer.bill.com/docs/api-sandbox-sign-up) for more information.\n\n### Spend & Expense API\nAn API token is required for working with the Spend & Expense API. See [Authentication with Spend & Expense API token](https://developer.bill.com/docs/authentication-with-api-token) for more information.\n\n### BILL v3 API in Postman\nWith this collection, you have access to the BILL v3 API in Postman. When you save your sandbox API credentials as environment variables in Postman, you can simply refer to the variables when you are testing with the BILL v3 API. See [BILL v3 API in Postman](https://developer.bill.com/docs/bill-v3-api-in-postman) for more information.",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://gateway.stage.bill.com/connect",
      "description": "sandbox"
    }
  ],
  "paths": {
    "/v3/classifications/items": {
      "get": {
        "tags": [
          "classifications"
        ],
        "summary": "Get list of items",
        "description": "Get a list of item objects. By default, you get 20 results on one page of results. Set `max` in your request to get up to 100 results on one page.\n\nSee [Search operations with lists](https://developer.bill.com/docs/search-op-with-lists) in the Guides section for filtering, sorting, and pagination examples.",
        "operationId": "listClassificationItems",
        "parameters": [
          {
            "name": "sessionId",
            "in": "header",
            "schema": {
              "type": "string",
              "description": "API session ID generated with `/v3/login`",
              "nullable": true,
              "example": "{{session_id}}"
            }
          },
          {
            "name": "devKey",
            "in": "header",
            "schema": {
              "type": "string",
              "description": "Developer key generated with your BILL developer account",
              "nullable": true,
              "example": "{{developer_key}}"
            }
          },
          {
            "name": "max",
            "in": "query",
            "schema": {
              "maximum": 100,
              "minimum": 1,
              "type": "integer",
              "description": "Maximum number of results",
              "format": "int32",
              "nullable": true,
              "example": 10
            }
          },
          {
            "name": "sort",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Field name and sort order. Both simple and compound sorting is available.\n\nThe format is `sort={field_01}:{sort_order},{field_02}:{sort_order}`.\n\n**NOTE**: Sorting occurs in the specified order.",
              "nullable": true,
              "example": "createdTime:desc"
            }
          },
          {
            "name": "filters",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Field name, operator, and value. Both simple and compound filtering is available.\n\nThe format is `filters={field_01}:{op}:{value},{field_02}:{op}:{value}`.",
              "nullable": true,
              "example": "id:eq:{{item_id}}"
            }
          },
          {
            "name": "page",
            "in": "query",
            "schema": {
              "type": "string",
              "description": "Next page of results.\n\nWhen a list has multiple pages, the `nextPage` and `prevPage` values in the response enable you to navigate between the pages of results. Set `page` as the `nextPage` or `prevPage` value for navigation.",
              "nullable": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Get list of items response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListClassificationItemResponseDto"
                }
              }
            }
          },
          "4XX": {
            "description": "List of errors.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BdcError"
                  }
                }
              }
            }
          },
          "5XX": {
            "description": "List of errors.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BdcError"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "BdcError": {
        "required": [
          "category",
          "code",
          "severity",
          "timestamp"
        ],
        "type": "object",
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "code": {
            "type": "string"
          },
          "severity": {
            "$ref": "#/components/schemas/Severity"
          },
          "category": {
            "$ref": "#/components/schemas/Category"
          },
          "message": {
            "type": "string"
          },
          "params": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Param"
            }
          },
          "detail": {
            "type": "string"
          },
          "help": {
            "type": "string"
          }
        }
      },
      "Category": {
        "type": "string",
        "enum": [
          "REQUEST",
          "APPLICATION",
          "SERVER",
          "DOWNSTREAM"
        ]
      },
      "ClassificationItemResponseDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "BILL-generated ID of the item. The value begins with `0ii`."
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ItemTypeResponse"
              },
              {
                "description": "Item type"
              }
            ]
          },
          "shortName": {
            "type": "string",
            "description": "Item short name"
          },
          "name": {
            "type": "string",
            "description": "Item name"
          },
          "description": {
            "type": "string",
            "description": "Item description"
          },
          "archived": {
            "type": "boolean",
            "description": "Set as `true` if the item is archived"
          },
          "parentId": {
            "type": "string",
            "description": "BILL-generated ID of the parent item. You can set this field if this item is a child object."
          },
          "price": {
            "type": "number",
            "description": "Item price"
          },
          "expenseChartOfAccountId": {
            "type": "string",
            "description": "BILL-generated ID of the chart of accounts for the item when it is used for bills or purchases in your accounting system. The value begins with `0ca`."
          },
          "purchaseDescription": {
            "type": "string",
            "description": "Item description when it is used for bills or purchases in your accounting system"
          },
          "purchaseCost": {
            "type": "number",
            "description": "Item purchase cost set in your accounting system"
          },
          "chartOfAccountId": {
            "type": "string",
            "description": "BILL-generated ID of the chart of accounts for the item. The value begins with `0ca`."
          },
          "taxable": {
            "type": "boolean",
            "description": "Set as `true` if the item is taxable"
          },
          "percentage": {
            "type": "number",
            "description": "Item tax percentage"
          },
          "createdTime": {
            "type": "string",
            "description": "Created date and time",
            "format": "date-time"
          },
          "updatedTime": {
            "type": "string",
            "description": "Updated date and time",
            "format": "date-time"
          }
        },
        "description": "CategoryItem response Dto."
      },
      "ItemTypeResponse": {
        "type": "string",
        "description": "Item type response.",
        "enum": [
          "UNDEFINED",
          "UNKNOWN",
          "SERVICE",
          "INVENTORY",
          "NON_INVENTORY",
          "PAYMENT",
          "DISCOUNT",
          "SALES_TAX",
          "SUBTOTAL",
          "OTHER_CHARGE",
          "INVENTORY_ASSEMBLY",
          "GROUP",
          "SALES_TAX_GROUP",
          "FIXED_ASSET",
          "CATEGORY",
          "EXPENSE"
        ]
      },
      "ListClassificationItemResponseDto": {
        "type": "object",
        "description": "Response from a list API request with paging references.",
        "allOf": [
          {
            "$ref": "#/components/schemas/ListResponseDto_ClassificationItemResponseDto_"
          }
        ]
      },
      "ListResponseDto_ClassificationItemResponseDto_": {
        "type": "object",
        "properties": {
          "nextPage": {
            "type": "string"
          },
          "prevPage": {
            "type": "string"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ClassificationItemResponseDto"
            }
          }
        },
        "description": "Response from a list API request with paging references."
      },
      "Param": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "additional": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "value": {
            "minLength": 1,
            "type": "string"
          }
        }
      },
      "Severity": {
        "type": "string",
        "enum": [
          "ERROR",
          "WARNING",
          "INFORMATION"
        ]
      }
    }
  }
}
```