Suger · Capability

Suger API — Buyer

Suger API — Buyer. 10 operations. Lead operation: List Buyers. Self-contained Naftiko capability covering one Suger business surface.

Run with Naftiko SugerBuyer

What You Can Do

GET
Listbuyers — List Buyers
/v1/org/{orgid}/buyer
POST
Createbuyer — Create Buyer
/v1/org/{orgid}/buyer
GET
Getbuyer — Get Buyer
/v1/org/{orgid}/buyer/{buyerid}
PATCH
Updatebuyer — Update Buyer
/v1/org/{orgid}/buyer/{buyerid}
GET
Listbuyerwallets — List Buyer's Wallets
/v1/org/{orgid}/buyer/{buyerid}/wallet
POST
Createcreditwallet — Create Credit Wallet
/v1/org/{orgid}/buyer/{buyerid}/wallet
DELETE
Deletebuyerwallet — Delete Buyer Wallet
/v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}
PATCH
Updatecreditwallet — Update Credit Wallet
/v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}
PATCH
Closecreditwallet — Close Credit Wallet
/v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}/close
PATCH
Setbuyerdefaultwallet — Set Buyer Default Wallet
/v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}/default

MCP Tools

list-buyers

List Buyers

read-only idempotent
create-buyer

Create Buyer

get-buyer

Get Buyer

read-only idempotent
update-buyer

Update Buyer

idempotent
list-buyer-s-wallets

List Buyer's Wallets

read-only idempotent
create-credit-wallet

Create Credit Wallet

delete-buyer-wallet

Delete Buyer Wallet

idempotent
update-credit-wallet

Update Credit Wallet

idempotent
close-credit-wallet

Close Credit Wallet

idempotent
set-buyer-default-wallet

Set Buyer Default Wallet

idempotent

Capability Spec

suger-buyer.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Suger API — Buyer
  description: 'Suger API — Buyer. 10 operations. Lead operation: List Buyers. Self-contained Naftiko capability covering
    one Suger business surface.'
  tags:
  - Suger
  - Buyer
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SUGER_API_KEY: SUGER_API_KEY
capability:
  consumes:
  - type: http
    namespace: suger-buyer
    baseUri: https://api.suger.cloud
    description: Suger API — Buyer business capability. Self-contained, no shared references.
    resources:
    - name: org-orgId-buyer
      path: /org/{orgId}/buyer
      operations:
      - name: listbuyers
        method: GET
        description: List Buyers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: partner
          in: query
          type: string
          description: filter by partner
        - name: contactId
          in: query
          type: string
          description: filter by contactId
        - name: awsAccountId
          in: query
          type: string
          description: filter by awsAccountId
        - name: limit
          in: query
          type: integer
          description: List pagination size, default 1000, max value is 1000
        - name: offset
          in: query
          type: integer
          description: List pagination offset, default 0
      - name: createbuyer
        method: POST
        description: Create Buyer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: org-orgId-buyer-buyerId
      path: /org/{orgId}/buyer/{buyerId}
      operations:
      - name: getbuyer
        method: GET
        description: Get Buyer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
      - name: updatebuyer
        method: PATCH
        description: Update Buyer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: org-orgId-buyer-buyerId-wallet
      path: /org/{orgId}/buyer/{buyerId}/wallet
      operations:
      - name: listbuyerwallets
        method: GET
        description: List Buyer's Wallets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
      - name: createcreditwallet
        method: POST
        description: Create Credit Wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
    - name: org-orgId-buyer-buyerId-wallet-walletId
      path: /org/{orgId}/buyer/{buyerId}/wallet/{walletId}
      operations:
      - name: deletebuyerwallet
        method: DELETE
        description: Delete Buyer Wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
        - name: walletId
          in: path
          type: string
          description: Wallet ID
          required: true
      - name: updatecreditwallet
        method: PATCH
        description: Update Credit Wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
        - name: walletId
          in: path
          type: string
          description: Wallet ID
          required: true
    - name: org-orgId-buyer-buyerId-wallet-walletId-close
      path: /org/{orgId}/buyer/{buyerId}/wallet/{walletId}/close
      operations:
      - name: closecreditwallet
        method: PATCH
        description: Close Credit Wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
        - name: walletId
          in: path
          type: string
          description: Wallet ID
          required: true
    - name: org-orgId-buyer-buyerId-wallet-walletId-default
      path: /org/{orgId}/buyer/{buyerId}/wallet/{walletId}/default
      operations:
      - name: setbuyerdefaultwallet
        method: PATCH
        description: Set Buyer Default Wallet
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: orgId
          in: path
          type: string
          description: Organization ID
          required: true
        - name: buyerId
          in: path
          type: string
          description: Buyer ID
          required: true
        - name: walletId
          in: path
          type: string
          description: Wallet ID
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.SUGER_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: suger-buyer-rest
    port: 8080
    description: REST adapter for Suger API — Buyer. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/org/{orgid}/buyer
      name: org-orgid-buyer
      description: REST surface for org-orgId-buyer.
      operations:
      - method: GET
        name: listbuyers
        description: List Buyers
        call: suger-buyer.listbuyers
        with:
          orgId: rest.orgId
          partner: rest.partner
          contactId: rest.contactId
          awsAccountId: rest.awsAccountId
          limit: rest.limit
          offset: rest.offset
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createbuyer
        description: Create Buyer
        call: suger-buyer.createbuyer
        with:
          orgId: rest.orgId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/org/{orgid}/buyer/{buyerid}
      name: org-orgid-buyer-buyerid
      description: REST surface for org-orgId-buyer-buyerId.
      operations:
      - method: GET
        name: getbuyer
        description: Get Buyer
        call: suger-buyer.getbuyer
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatebuyer
        description: Update Buyer
        call: suger-buyer.updatebuyer
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/org/{orgid}/buyer/{buyerid}/wallet
      name: org-orgid-buyer-buyerid-wallet
      description: REST surface for org-orgId-buyer-buyerId-wallet.
      operations:
      - method: GET
        name: listbuyerwallets
        description: List Buyer's Wallets
        call: suger-buyer.listbuyerwallets
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcreditwallet
        description: Create Credit Wallet
        call: suger-buyer.createcreditwallet
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}
      name: org-orgid-buyer-buyerid-wallet-walletid
      description: REST surface for org-orgId-buyer-buyerId-wallet-walletId.
      operations:
      - method: DELETE
        name: deletebuyerwallet
        description: Delete Buyer Wallet
        call: suger-buyer.deletebuyerwallet
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
          walletId: rest.walletId
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatecreditwallet
        description: Update Credit Wallet
        call: suger-buyer.updatecreditwallet
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
          walletId: rest.walletId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}/close
      name: org-orgid-buyer-buyerid-wallet-walletid-close
      description: REST surface for org-orgId-buyer-buyerId-wallet-walletId-close.
      operations:
      - method: PATCH
        name: closecreditwallet
        description: Close Credit Wallet
        call: suger-buyer.closecreditwallet
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
          walletId: rest.walletId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/org/{orgid}/buyer/{buyerid}/wallet/{walletid}/default
      name: org-orgid-buyer-buyerid-wallet-walletid-default
      description: REST surface for org-orgId-buyer-buyerId-wallet-walletId-default.
      operations:
      - method: PATCH
        name: setbuyerdefaultwallet
        description: Set Buyer Default Wallet
        call: suger-buyer.setbuyerdefaultwallet
        with:
          orgId: rest.orgId
          buyerId: rest.buyerId
          walletId: rest.walletId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: suger-buyer-mcp
    port: 9090
    transport: http
    description: MCP adapter for Suger API — Buyer. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-buyers
      description: List Buyers
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: suger-buyer.listbuyers
      with:
        orgId: tools.orgId
        partner: tools.partner
        contactId: tools.contactId
        awsAccountId: tools.awsAccountId
        limit: tools.limit
        offset: tools.offset
      outputParameters:
      - type: object
        mapping: $.
    - name: create-buyer
      description: Create Buyer
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: suger-buyer.createbuyer
      with:
        orgId: tools.orgId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-buyer
      description: Get Buyer
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: suger-buyer.getbuyer
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
      outputParameters:
      - type: object
        mapping: $.
    - name: update-buyer
      description: Update Buyer
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: suger-buyer.updatebuyer
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-buyer-s-wallets
      description: List Buyer's Wallets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: suger-buyer.listbuyerwallets
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
      outputParameters:
      - type: object
        mapping: $.
    - name: create-credit-wallet
      description: Create Credit Wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: suger-buyer.createcreditwallet
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-buyer-wallet
      description: Delete Buyer Wallet
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: suger-buyer.deletebuyerwallet
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
        walletId: tools.walletId
      outputParameters:
      - type: object
        mapping: $.
    - name: update-credit-wallet
      description: Update Credit Wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: suger-buyer.updatecreditwallet
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
        walletId: tools.walletId
      outputParameters:
      - type: object
        mapping: $.
    - name: close-credit-wallet
      description: Close Credit Wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: suger-buyer.closecreditwallet
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
        walletId: tools.walletId
      outputParameters:
      - type: object
        mapping: $.
    - name: set-buyer-default-wallet
      description: Set Buyer Default Wallet
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: suger-buyer.setbuyerdefaultwallet
      with:
        orgId: tools.orgId
        buyerId: tools.buyerId
        walletId: tools.walletId
      outputParameters:
      - type: object
        mapping: $.