Contents

GET [/instances/$INSTANCE]/private/products#

This is used to return the list of all items in the inventory.

Required permission: products-read

Request:

Query Parameters:
  • limitOptional. At most return the given number of results. Negative for descending by row ID, positive for ascending by row ID. Default is 20. Since protocol v12.

  • offsetOptional. Starting product_serial_id for an iteration. Since protocol v12.

  • category_filterOptional. Only returns products that are in a category where the category name contains the given text as a substring. Matching is case-insensitive. Since protocol v23.

  • name_filterOptional. Only returns products where the product name contains the given text as a substring. Matching is case-insensitive. Since protocol v23.

  • description_filterOptional. Only returns products where the product description contains the given text as a substring. Matching is case-insensitive. Since protocol v23.

  • product_group_serialOptional. Only returns products where the product group serial matches the given value. Since protocol v25.

Response:

200 OK:

The backend has successfully returned the inventory. Returns a InventorySummaryResponse.

404 Not found:

The backend has does not know about the instance.

Details:

interface InventorySummaryResponse {
  // List of products that are present in the inventory.
  products: InventoryEntry[];
}

The InventoryEntry object describes an item in the inventory. It has the following structure:

interface InventoryEntry {
  // Product identifier, as found in the product.
  product_id: string;

  // product_serial_id of the product in the database.
  product_serial: Integer;

}