---
title: "List Products"
method: GET
path: "/api/v1/products"
tags: ["Products"]
---

# List Products

`GET /api/v1/products`

## Query parameters

- `cursor` string
- `limit` string

## Response `200`

Successful response

- ProductsPaginatedList
  - `data` ProductClientSelectSchema[], required
    - `id` string, required
    - `createdAt` integer, required — Epoch milliseconds.
    - `updatedAt` integer, required — Epoch milliseconds.
    - `livemode` boolean, required
    - `name` string, required
    - `description` string, nullable, required
    - `imageURL` string, nullable, required
    - `organizationId` string, required
    - `active` boolean, required
    - `singularQuantityLabel` string, nullable, required
    - `pluralQuantityLabel` string, nullable, required
    - `pricingModelId` string, required
    - `default` boolean, required
    - `slug` string, nullable, required
  - `currentCursor` string
  - `nextCursor` string
  - `hasMore` boolean, required
  - `total` number, required

## Other responses

- `400` — Invalid input data
- `401` — Authorization not provided
- `403` — Insufficient access
- `404` — Not found
- `500` — Internal server error

## Changes

- **2025-10-18** `a1eeb4fac4d6` — 11 breaking, 7 info
  - response property `data/items/createdAt` list-of-types was widened by adding types `integer` to media type `application/json` of response `200`
  - response property `data/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `data/items/imageURL` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `data/items/pluralQuantityLabel` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - …14 more
- **2025-06-25** `0cf7bce0c17d` — 2 info
  - added the required property `data/items/default` to the response with the `200` status
  - added the required property `data/items/slug` to the response with the `200` status
- **2025-04-28** `00982324965d` — 2 info
  - added the required property `data/items/createdByCommit` to the response with the `200` status
  - added the required property `data/items/updatedByCommit` to the response with the `200` status
- **2025-03-24** `085889adb3c1` — 1 info
  - added the required property `data/items/catalogId` to the response with the `200` status
- …earlier changes not shown

[Full history](https://skmtc.dev/flowglad/apis/flowglad-api/changes/api/v1/products/get.md)

---

[API](https://skmtc.dev/flowglad/apis/flowglad-api.md) · [All operations](https://skmtc.dev/flowglad/apis/flowglad-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/flowglad/flowglad-api/revisions/06c4dd78e137/schema)
