Paystack · Capability

Paystack Products and Payment Pages API — Page

Paystack Products and Payment Pages API. 11 operations. Lead operation: Paystack Create Product. Self-contained Naftiko capability covering one Paystack business surface.

Paystack Products and Payment Pages API — Page is a Naftiko capability published by Paystack, one of 13 capabilities the APIs.io network indexes for this provider. It bundles 11 operations across the GET, POST, PUT, and DELETE methods.

The capability includes 5 read-only operations and 6 state-changing operations. Lead operation: Paystack Create Product. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Paystack, Page, and Product.

Run with Naftiko PaystackPageProduct

What You Can Do

POST
Productcreate — Paystack Create Product
/v1/product
GET
Productlist — Paystack List Products
/v1/product
GET
Productfetch — Paystack Fetch Product
/v1/product/{id}
PUT
Productupdate — Paystack Update Product
/v1/product/{id}
DELETE
Productdelete — Paystack Delete Product
/v1/product/{id}
POST
Pagecreate — Paystack Create Page
/v1/page
GET
Pagelist — Paystack List Pages
/v1/page
GET
Pagefetch — Paystack Fetch Page
/v1/page/{id}
PUT
Pageupdate — Paystack Update Page
/v1/page/{id}
GET
Pagecheckslugavailability — Paystack Check Slug Availability
/v1/page/check_slug_availability/{slug}
POST
Pageaddproducts — Paystack Add Products
/v1/page/{id}/product

MCP Tools

paystack-create-product

Paystack Create Product

paystack-list-products

Paystack List Products

read-only idempotent
paystack-fetch-product

Paystack Fetch Product

read-only idempotent
paystack-update-product

Paystack Update Product

idempotent
paystack-delete-product

Paystack Delete Product

idempotent
paystack-create-page

Paystack Create Page

paystack-list-pages

Paystack List Pages

read-only idempotent
paystack-fetch-page

Paystack Fetch Page

read-only idempotent
paystack-update-page

Paystack Update Page

idempotent
paystack-check-slug-availability

Paystack Check Slug Availability

read-only idempotent
paystack-add-products

Paystack Add Products

Capability Spec

products-pages.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: "Paystack Products and Payment Pages API \u2014 Page"
  description: 'Paystack Products and Payment Pages API. 11 operations. Lead operation: Paystack Create Product. Self-contained
    Naftiko capability covering one Paystack business surface.'
  tags:
  - Paystack
  - Page
  - Product
  created: '2026-05-24'
  modified: '2026-05-24'
binds:
- namespace: env
  keys:
    PAYSTACK_SECRET_KEY: PAYSTACK_SECRET_KEY
capability:
  consumes:
  - type: http
    namespace: products-pages-product
    baseUri: https://api.paystack.co
    description: Paystack Products and Payment Pages API business capability. Self-contained, no shared references.
    resources:
    - name: product
      path: /product
      operations:
      - name: productcreate
        method: POST
        description: Paystack Create Product
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body.
          required: true
      - name: productlist
        method: GET
        description: Paystack List Products
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: product
      path: /product/{id}
      operations:
      - name: productfetch
        method: GET
        description: Paystack Fetch Product
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: productupdate
        method: PUT
        description: Paystack Update Product
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body.
          required: true
      - name: productdelete
        method: DELETE
        description: Paystack Delete Product
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: page
      path: /page
      operations:
      - name: pagecreate
        method: POST
        description: Paystack Create Page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body.
          required: true
      - name: pagelist
        method: GET
        description: Paystack List Pages
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: page
      path: /page/{id}
      operations:
      - name: pagefetch
        method: GET
        description: Paystack Fetch Page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: pageupdate
        method: PUT
        description: Paystack Update Page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body.
          required: true
    - name: page-check-slug-availability
      path: /page/check_slug_availability/{slug}
      operations:
      - name: pagecheckslugavailability
        method: GET
        description: Paystack Check Slug Availability
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: page-product
      path: /page/{id}/product
      operations:
      - name: pageaddproducts
        method: POST
        description: Paystack Add Products
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body.
          required: true
    authentication:
      type: bearer
      value: '{{env.PAYSTACK_SECRET_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: products-pages-product-rest
    port: 8080
    description: REST adapter for Paystack Products and Payment Pages API. One resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/product
      name: product
      description: REST surface for product.
      operations:
      - method: POST
        name: productcreate
        description: Paystack Create Product
        call: products-pages-product.productcreate
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
      - method: GET
        name: productlist
        description: Paystack List Products
        call: products-pages-product.productlist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/product/{id}
      name: product
      description: REST surface for product.
      operations:
      - method: GET
        name: productfetch
        description: Paystack Fetch Product
        call: products-pages-product.productfetch
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: productupdate
        description: Paystack Update Product
        call: products-pages-product.productupdate
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
      - method: DELETE
        name: productdelete
        description: Paystack Delete Product
        call: products-pages-product.productdelete
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/page
      name: page
      description: REST surface for page.
      operations:
      - method: POST
        name: pagecreate
        description: Paystack Create Page
        call: products-pages-product.pagecreate
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
      - method: GET
        name: pagelist
        description: Paystack List Pages
        call: products-pages-product.pagelist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/page/{id}
      name: page
      description: REST surface for page.
      operations:
      - method: GET
        name: pagefetch
        description: Paystack Fetch Page
        call: products-pages-product.pagefetch
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: pageupdate
        description: Paystack Update Page
        call: products-pages-product.pageupdate
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
    - path: /v1/page/check_slug_availability/{slug}
      name: page-check-slug-availability
      description: REST surface for page-check-slug-availability.
      operations:
      - method: GET
        name: pagecheckslugavailability
        description: Paystack Check Slug Availability
        call: products-pages-product.pagecheckslugavailability
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/page/{id}/product
      name: page-product
      description: REST surface for page-product.
      operations:
      - method: POST
        name: pageaddproducts
        description: Paystack Add Products
        call: products-pages-product.pageaddproducts
        outputParameters:
        - type: object
          mapping: $.
        with:
          body: rest.body
  - type: mcp
    namespace: products-pages-product-mcp
    port: 9090
    transport: http
    description: MCP adapter for Paystack Products and Payment Pages API. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: paystack-create-product
      description: Paystack Create Product
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: products-pages-product.productcreate
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: paystack-list-products
      description: Paystack List Products
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: products-pages-product.productlist
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-fetch-product
      description: Paystack Fetch Product
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: products-pages-product.productfetch
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-update-product
      description: Paystack Update Product
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: products-pages-product.productupdate
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: paystack-delete-product
      description: Paystack Delete Product
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: products-pages-product.productdelete
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-create-page
      description: Paystack Create Page
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: products-pages-product.pagecreate
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: paystack-list-pages
      description: Paystack List Pages
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: products-pages-product.pagelist
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-fetch-page
      description: Paystack Fetch Page
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: products-pages-product.pagefetch
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-update-page
      description: Paystack Update Page
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: products-pages-product.pageupdate
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body
    - name: paystack-check-slug-availability
      description: Paystack Check Slug Availability
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: products-pages-product.pagecheckslugavailability
      outputParameters:
      - type: object
        mapping: $.
    - name: paystack-add-products
      description: Paystack Add Products
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: products-pages-product.pageaddproducts
      outputParameters:
      - type: object
        mapping: $.
      with:
        body: tools.body