Prices

List Prices

Retrieve all prices for the authenticated merchant, optionally filtered by plan. Prices define how customers are charged for plans—they can be recurring (monthly/yearly), one-time, usage-based, seat-based, or tiered. Each price is associated with a specific plan version and currency.

GET
/prices

Authorization

bearerAuth
AuthorizationBearer <token>

Use your secret API key as the bearer token

In: header

Query Parameters

planId?string

Filter prices by plan version ID. If provided, only returns prices associated with that plan. If omitted, returns all prices for the merchant.

Match^pln_[a-z0-9]+$

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://api.getlumen.dev/v1/prices?planId=pln_01hrwzqrz4ytkwv07syv8k7g3z"

{
  "prices": [
    {
      "id": "prc_01hrwzqrz4ytkwv07syv8k7g3z",
      "planId": "pln_01hrx123",
      "merchantId": "mrc_01hptv3p6xj173pfv96pxd5pke",
      "currency": "USD",
      "pricingData": {
        "type": "recurring",
        "interval": "month",
        "intervalCount": 1,
        "amountCents": 2999
      },
      "isOverridePrice": false,
      "clonedFromPriceId": null,
      "createdAt": "2024-12-01T10:00:00.000Z",
      "deletedAt": null
    },
    {
      "id": "prc_01hrx456",
      "planId": "pln_01hrx123",
      "currency": "USD",
      "pricingData": {
        "type": "recurring",
        "interval": "year",
        "intervalCount": 1,
        "amountCents": 29900
      },
      "isOverridePrice": false,
      "createdAt": "2024-12-01T10:00:00.000Z"
    }
  ]
}

{
  "error": "Empty planId provided. Provide a planId or remove the query parameter"
}
{
  "error": "Plan not found. If you have multiple accounts, are you using the right API key?"
}
{
  "error": "Failed to list prices"
}