---
title: "List all products"
method: GET
path: "/ext/v2/products/"
tags: ["Catalog"]
---

# List all products

`GET /ext/v2/products/`

## Request

- Base URL: `https://connect.vetcove.com`
- URL: `https://connect.vetcove.com/ext/v2/products/`
- Auth: HTTP bearer

Returns a list of all catalog products. The products are sorted by creation date, with the most recent products appearing first. When using modified filters, results are sorted in descending modification date instead.

A **product** represents a specific formulation or variant within a product line (e.g., "Heartgard Plus Chewables for Dogs"). Each product belongs to a product line and contains one or more items (individual SKUs).

## Query parameters

- `ids` integer[], nullable: When provided, filters to objects with these IDs.
- `ending_before` integer, nullable: A cursor used for pagination. Fetches the page of results ending immediately before the object with the given ID. Cannot be used at the same time as `starting_after`.
- `starting_after` integer, nullable: A cursor used for pagination. Fetches the page of results starting immediately after the given ID. Cannot be used at the same time as `ending_before`.
- `limit` integer: The maximum number of items to return per page.
- `cursor` string, nullable: A cursor token used for pagination. This token contains encoded information about the last seen record in order to continue pagination. Cannot be used with `starting_after` or `ending_before` parameters.
- `modified__gte` string, date-time, nullable: Filters to objects modified on or after this datetime (ISO8601 UTC, e.g. 2025-08-25T10:30:00Z). Cannot be used with `starting_after` or `ending_before` parameters.
- `modified__lte` string, date-time, nullable: Filters to objects modified on or before this datetime (ISO8601 UTC, e.g. 2025-08-25T10:30:00Z). Cannot be used with `starting_after` or `ending_before` parameters.

## Response `200`

OK

- ExternalProductListSchemaList
  - `data` ExternalProductListSchema[], required: A single page of data contained within this list.
    - `alt_image_url` string, nullable: Alternative URL to the product's image
    - `created` string, date-time, required: The datetime this object was created.
    - `default_sig` string, nullable, required: The default directions for the Product, if available
    - `full_name` string, required: Complete name of the Product
    - `id` integer, required: Unique identifier for the product
    - `image_url` string, nullable: URL to the product's image
    - `modified` string, date-time, required: The datetime this object was last modified; changes to related entities will not update this field.
    - `name` string, required: Name of the Product itself. For the complete name of the Product, see the full_name field.
    - `product_line_id` integer, required: ID of the associated product line
  - `has_more` boolean: Whether there are more pages or data in this list.
  - `next_page` string, required: A URL linking to the next page of this list.
  - `type` string: Type of this object. Always `list`.

---

[API](https://skmtc.dev/vetcove/apis/ninjaapi.md) - [All operations](https://skmtc.dev/vetcove/apis/ninjaapi/llms.txt) - [OpenAPI document](https://skmtc.dev/vetcove/apis/ninjaapi/revisions/4ceaed956e15?raw)
