> ## Documentation Index
> Fetch the complete documentation index at: https://docs.priceos.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Products

> List latest non-archived products for the project.



## OpenAPI

````yaml GET /v1/products
openapi: 3.1.0
info:
  title: PriceOS Public API
  version: 1.0.0
servers: []
security: []
paths:
  /v1/products:
    get:
      summary: List Products
      description: List latest non-archived products for the project.
      parameters:
        - schema:
            type: string
            description: API key from your PriceOS dashboard.
          required: true
          description: API key from your PriceOS dashboard.
          name: x-api-key
          in: header
      responses:
        '200':
          description: Product list
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: string
                      description: Product ID.
                    key:
                      type: string
                      description: Product key.
                    name:
                      type: string
                      description: Product name.
                    type:
                      type: string
                      enum:
                        - stripe
                        - custom
                      description: Product type.
                    isDefault:
                      type: boolean
                      description: Whether this is the default custom product.
                    version:
                      type: number
                      description: Product version number.
                    stripeProductId:
                      type:
                        - string
                        - 'null'
                      description: Stripe product ID (Stripe products only).
                    prices:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            type: string
                            description: Price ID.
                          stripePriceId:
                            type: string
                            description: Stripe price ID.
                          currency:
                            type:
                              - string
                              - 'null'
                            description: ISO currency code.
                          unitAmount:
                            type:
                              - number
                              - 'null'
                            description: Unit amount in the smallest currency unit.
                          recurringInterval:
                            type:
                              - string
                              - 'null'
                            description: Recurring interval, if any.
                          recurringIntervalCount:
                            type:
                              - number
                              - 'null'
                            description: Recurring interval count, if any.
                          isActive:
                            type: boolean
                            description: Whether the price is active.
                          isDefault:
                            type: boolean
                            description: Whether this is the default price.
                        required:
                          - id
                          - stripePriceId
                          - currency
                          - unitAmount
                          - recurringInterval
                          - recurringIntervalCount
                          - isActive
                          - isDefault
                      description: Stripe prices linked to the product.
                    featureAccess:
                      type: array
                      items:
                        type: object
                        properties:
                          featureKey:
                            type: string
                            description: Feature key.
                          name:
                            type: string
                            description: Feature name.
                          type:
                            type: string
                            enum:
                              - boolean
                              - limit
                            description: Feature access type.
                          hasAccess:
                            type: boolean
                            description: Whether the product grants access to the feature.
                          limit:
                            type:
                              - number
                              - 'null'
                            description: Configured limit value for limit features.
                          isUnlimited:
                            type: boolean
                            description: Whether the limit feature is unlimited.
                        required:
                          - featureKey
                          - name
                          - type
                          - hasAccess
                      description: Feature access entries configured for this product.
                  required:
                    - id
                    - key
                    - name
                    - type
                    - isDefault
                    - version
                    - stripeProductId
                    - prices
                    - featureAccess
                description: Product list.
              example:
                - id: prod_123
                  key: starter
                  name: Starter
                  type: stripe
                  isDefault: false
                  version: 2
                  stripeProductId: prod_stripe_123
                  prices:
                    - id: price_row_123
                      stripePriceId: price_monthly_starter
                      currency: usd
                      unitAmount: 2900
                      recurringInterval: month
                      recurringIntervalCount: 1
                      isActive: true
                      isDefault: true
                    - id: price_row_124
                      stripePriceId: price_yearly_starter
                      currency: usd
                      unitAmount: 29000
                      recurringInterval: year
                      recurringIntervalCount: 1
                      isActive: true
                      isDefault: false
                  featureAccess:
                    - featureKey: api_calls
                      name: API Calls
                      type: limit
                      hasAccess: true
                      limit: 10000
                      isUnlimited: false
                    - featureKey: priority_support
                      name: Priority Support
                      type: boolean
                      hasAccess: true
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message.
                required:
                  - error
        '500':
          description: Server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message.
                required:
                  - error

````