---
title: "List Stripe prices"
method: GET
path: "/api/apps/{app_id}/payments/stripe/prices"
---

# List Stripe prices

`GET /api/apps/{app_id}/payments/stripe/prices`

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns prices from every product in the configured Stripe account, unless narrowed to one product with `product_id`. A product can have more than one price, such as separate monthly and annual prices for the same plan.

Uses the Stripe account selected by the app's stored credentials. Live keys select the live catalog and test keys select the test catalog. Products and prices belong to that Stripe account, so multiple apps configured with the same account share the same catalog.

Returns a single batch, with no indication that more results exist. This operation cannot retrieve a complete catalog larger than the requested limit.

Requires read access to the app.

## Path parameters

- `app_id` string, required — ID of the Base44 app.

## Query parameters

- `product_id` string, nullable — Stripe product ID to filter by. Defaults to no product filter.
- `active` boolean, nullable — Filter by active status. Stripe defaults to active-only prices when this is omitted. Pass `false` to list inactive prices instead.
- `limit` integer — Maximum number of prices in this batch. Use 1 through 100. Defaults to 100. There is no cursor for another batch.

## Response `200`

The operation result.

- StripeCatalogPrice[]
  - `id` string, required — Stripe price ID.
  - `product` string, required — Stripe product ID this price belongs to.
  - `unit_amount` integer, nullable, required — Amount in the currency's smallest unit, or `null` for pricing without a fixed integer unit amount.
  - `currency` string, required — Currency as a lowercase three-letter ISO 4217 code.
  - `active` boolean, required — Whether the price is active.
  - `metadata` object, required — Metadata stored on the price.
  - `recurring` StripeCatalogRecurring, required — The recurring billing schedule of a Stripe price.
    - `interval` string, required — Billing interval. Either `day`, `week`, `month`, or `year`.
    - `interval_count` integer, required — Number of intervals between bills.
    - `usage_type` string, required — Usage model. Either `licensed` or `metered`.

## Other responses

- `400` — Stripe keys are missing, or the app's test sandbox has expired.
- `401` — Missing or invalid credentials.
- `403` — The credential is not permitted or you don't have the required app access. A missing app also fails the app access check.
- `404` — The app is outside the credential's granted workspace.
- `409` — The workspace requires an unlocked SSO session.
- `422` — Validation Error

## Changes

> 18 revisions in range; 1 not diffed.

- **2026-09-16** `ca10c5ce328c` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/adexad/apis/base44-app-management-api/changes/api/apps/:app_id/payments/stripe/prices/get.md)

---

[API](https://skmtc.dev/adexad/apis/base44-app-management-api.md) · [All operations](https://skmtc.dev/adexad/apis/base44-app-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adexad/apis/base44-app-management-api/revisions/28fc82924122?raw)
