Stripe · Capability

Stripe Prices API — Prices

Stripe Prices API — Prices. 5 operations. Lead operation: Prices. Self-contained Naftiko capability covering one Stripe business surface.

Run with Naftiko StripePrices

What You Can Do

GET
Getprices

Returns a list of your active prices, excluding inline prices. For the list of inactive prices, set active to false.

/v1/v1/prices
POST
Postprices

Creates a new price for an existing product. The price can be recurring or one-time.

/v1/v1/prices
GET
Getpricessearch

Search for prices you’ve previously created using Stripe’s Search Query Language.

/v1/v1/prices/search
GET
Getpricesprice

Retrieves the price with the given ID.

/v1/v1/prices/{price}
POST
Postpricesprice

Updates the specified price by setting the values of the parameters passed. Any parameters not provided are left unchanged.

/v1/v1/prices/{price}

MCP Tools

p-returns-list-your-active-prices

Returns a list of your active prices, excluding inline prices. For the list of inactive prices, set active to false.

read-only idempotent
p-creates-new-price-existing-product

Creates a new price for an existing product. The price can be recurring or one-time.

p-search-prices-you-ve-previously-created

Search for prices you’ve previously created using Stripe’s Search Query Language.

read-only idempotent
p-retrieves-price-given-id-p

Retrieves the price with the given ID.

read-only idempotent
p-updates-specified-price-setting-values

Updates the specified price by setting the values of the parameters passed. Any parameters not provided are left unchanged.

Capability Spec

prices-prices.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Stripe Prices API — Prices
  description: 'Stripe Prices API — Prices. 5 operations. Lead operation: Prices. Self-contained Naftiko capability covering
    one Stripe business surface.'
  tags:
  - Stripe
  - Prices
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    STRIPE_API_KEY: STRIPE_API_KEY
capability:
  consumes:
  - type: http
    namespace: prices-prices
    baseUri: https://api.stripe.com
    description: Stripe Prices API — Prices business capability. Self-contained, no shared references.
    resources:
    - name: v1-prices
      path: /v1/prices
      operations:
      - name: getprices
        method: GET
        description: <p>Returns a list of your active prices, excluding <a href="/docs/products-prices/pricing-models#inline-pricing">inline
          prices</a>. For the list of inactive prices, set <code>active</code> to false.</p>
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: active
          in: query
          type: boolean
          description: Only return prices that are active or inactive (e.g., pass `false` to list all inactive prices).
        - name: created
          in: query
          type: string
          description: 'A filter on the list, based on the object `created` field. The value can be a string with an integer
            Unix timestamp, or it can be a dictionary with a number of '
        - name: currency
          in: query
          type: string
          description: Only return prices for the given currency.
        - name: ending_before
          in: query
          type: string
          description: A cursor for use in pagination. `ending_before` is an object ID that defines your place in the list.
            For instance, if you make a list request and receive 100 ob
        - name: expand
          in: query
          type: array
          description: Specifies which fields in the response should be expanded.
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 10.
        - name: lookup_keys
          in: query
          type: array
          description: Only return the price with these lookup_keys, if any exist.
        - name: product
          in: query
          type: string
          description: Only return prices for the given product.
        - name: recurring
          in: query
          type: object
          description: Only return prices with these recurring fields.
        - name: starting_after
          in: query
          type: string
          description: A cursor for use in pagination. `starting_after` is an object ID that defines your place in the list.
            For instance, if you make a list request and receive 100 o
        - name: type
          in: query
          type: string
          description: Only return prices of type `recurring` or `one_time`.
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: postprices
        method: POST
        description: <p>Creates a new price for an existing product. The price can be recurring or one-time.</p>
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v1-prices-search
      path: /v1/prices/search
      operations:
      - name: getpricessearch
        method: GET
        description: <p>Search for prices you’ve previously created using Stripe’s <a href="/docs/search#search-query-language">Search
          Query Language</a>.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: expand
          in: query
          type: array
          description: Specifies which fields in the response should be expanded.
        - name: limit
          in: query
          type: integer
          description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default
            is 10.
        - name: page
          in: query
          type: string
          description: A cursor for pagination across multiple pages of results. Don't include this parameter on the first
            call. Use the next_page value returned in a previous respons
        - name: query
          in: query
          type: string
          description: The search query string. See [search query language](https://stripe.com/docs/search#search-query-language)
            and the list of supported [query fields for prices](h
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: v1-prices-price
      path: /v1/prices/{price}
      operations:
      - name: getpricesprice
        method: GET
        description: <p>Retrieves the price with the given ID.</p>
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: expand
          in: query
          type: array
          description: Specifies which fields in the response should be expanded.
        - name: price
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: postpricesprice
        method: POST
        description: <p>Updates the specified price by setting the values of the parameters passed. Any parameters not provided
          are left unchanged.</p>
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: price
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: bearer
      token: '{{env.STRIPE_API_KEY}}'
  exposes:
  - type: rest
    namespace: prices-prices-rest
    port: 8080
    description: REST adapter for Stripe Prices API — Prices. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/v1/prices
      name: v1-prices
      description: REST surface for v1-prices.
      operations:
      - method: GET
        name: getprices
        description: <p>Returns a list of your active prices, excluding <a href="/docs/products-prices/pricing-models#inline-pricing">inline
          prices</a>. For the list of inactive prices, set <code>active</code> to false.</p>
        call: prices-prices.getprices
        with:
          active: rest.active
          created: rest.created
          currency: rest.currency
          ending_before: rest.ending_before
          expand: rest.expand
          limit: rest.limit
          lookup_keys: rest.lookup_keys
          product: rest.product
          recurring: rest.recurring
          starting_after: rest.starting_after
          type: rest.type
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postprices
        description: <p>Creates a new price for an existing product. The price can be recurring or one-time.</p>
        call: prices-prices.postprices
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/prices/search
      name: v1-prices-search
      description: REST surface for v1-prices-search.
      operations:
      - method: GET
        name: getpricessearch
        description: <p>Search for prices you’ve previously created using Stripe’s <a href="/docs/search#search-query-language">Search
          Query Language</a>.
        call: prices-prices.getpricessearch
        with:
          expand: rest.expand
          limit: rest.limit
          page: rest.page
          query: rest.query
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v1/prices/{price}
      name: v1-prices-price
      description: REST surface for v1-prices-price.
      operations:
      - method: GET
        name: getpricesprice
        description: <p>Retrieves the price with the given ID.</p>
        call: prices-prices.getpricesprice
        with:
          expand: rest.expand
          price: rest.price
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postpricesprice
        description: <p>Updates the specified price by setting the values of the parameters passed. Any parameters not provided
          are left unchanged.</p>
        call: prices-prices.postpricesprice
        with:
          price: rest.price
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: prices-prices-mcp
    port: 9090
    transport: http
    description: MCP adapter for Stripe Prices API — Prices. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: p-returns-list-your-active-prices
      description: <p>Returns a list of your active prices, excluding <a href="/docs/products-prices/pricing-models#inline-pricing">inline
        prices</a>. For the list of inactive prices, set <code>active</code> to false.</p>
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prices-prices.getprices
      with:
        active: tools.active
        created: tools.created
        currency: tools.currency
        ending_before: tools.ending_before
        expand: tools.expand
        limit: tools.limit
        lookup_keys: tools.lookup_keys
        product: tools.product
        recurring: tools.recurring
        starting_after: tools.starting_after
        type: tools.type
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: p-creates-new-price-existing-product
      description: <p>Creates a new price for an existing product. The price can be recurring or one-time.</p>
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: prices-prices.postprices
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: p-search-prices-you-ve-previously-created
      description: <p>Search for prices you’ve previously created using Stripe’s <a href="/docs/search#search-query-language">Search
        Query Language</a>.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prices-prices.getpricessearch
      with:
        expand: tools.expand
        limit: tools.limit
        page: tools.page
        query: tools.query
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: p-retrieves-price-given-id-p
      description: <p>Retrieves the price with the given ID.</p>
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: prices-prices.getpricesprice
      with:
        expand: tools.expand
        price: tools.price
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: p-updates-specified-price-setting-values
      description: <p>Updates the specified price by setting the values of the parameters passed. Any parameters not provided
        are left unchanged.</p>
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: prices-prices.postpricesprice
      with:
        price: tools.price
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.