Wise · Capability

Wise Platform API — card

Wise Platform API — card. 8 operations. Lead operation: List cards for a profile. Self-contained Naftiko capability covering one Wise business surface.

Run with Naftiko Wisecard

What You Can Do

GET
Cardlist — List cards for a profile
/v1/v3/spend/profiles/{profileid}/cards
GET
Cardget — Get card details
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}
PUT
Cardphonenumberupdate — Update phone number
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/phone-number
POST
Cardpincountreset — Reset PIN count
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/reset-pin-count
GET
Cardpermissionsget — Get card spending permissions
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/spending-permissions
PATCH
Cardpermissionsupdate — Update a single card permission
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/spending-permissions
PUT
Cardstatusupdate — Update card status
/v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/status
PATCH
Cardpermissionsbulkupdate — Bulk update card permissions
/v1/v4/spend/profiles/{profileid}/cards/{cardtoken}/spending-permissions

MCP Tools

list-cards-profile

List cards for a profile

read-only idempotent
get-card-details

Get card details

read-only idempotent
update-phone-number

Update phone number

idempotent
reset-pin-count

Reset PIN count

get-card-spending-permissions

Get card spending permissions

read-only idempotent
update-single-card-permission

Update a single card permission

idempotent
update-card-status

Update card status

idempotent
bulk-update-card-permissions

Bulk update card permissions

idempotent

Capability Spec

platform-card.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Wise Platform API — card
  description: 'Wise Platform API — card. 8 operations. Lead operation: List cards for a profile. Self-contained Naftiko capability
    covering one Wise business surface.'
  tags:
  - Wise
  - card
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WISE_API_KEY: WISE_API_KEY
capability:
  consumes:
  - type: http
    namespace: platform-card
    baseUri: https://api.wise.com
    description: Wise Platform API — card business capability. Self-contained, no shared references.
    resources:
    - name: v3-spend-profiles-profileId-cards
      path: /v3/spend/profiles/{profileId}/cards
      operations:
      - name: cardlist
        method: GET
        description: List cards for a profile
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile to retrieve cards for.
          required: true
        - name: pageSize
          in: query
          type: integer
          description: The maximum number of cards to return per page. Must be between 10 and 100.
        - name: pageNumber
          in: query
          type: integer
          description: The page number to retrieve. Must be greater than or equal to 1.
    - name: v3-spend-profiles-profileId-cards-cardToken
      path: /v3/spend/profiles/{profileId}/cards/{cardToken}
      operations:
      - name: cardget
        method: GET
        description: Get card details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
    - name: v3-spend-profiles-profileId-cards-cardToken-phone-number
      path: /v3/spend/profiles/{profileId}/cards/{cardToken}/phone-number
      operations:
      - name: cardphonenumberupdate
        method: PUT
        description: Update phone number
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: Your profile ID.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The card token.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-spend-profiles-profileId-cards-cardToken-reset-pin-count
      path: /v3/spend/profiles/{profileId}/cards/{cardToken}/reset-pin-count
      operations:
      - name: cardpincountreset
        method: POST
        description: Reset PIN count
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
    - name: v3-spend-profiles-profileId-cards-cardToken-spending-permissions
      path: /v3/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions
      operations:
      - name: cardpermissionsget
        method: GET
        description: Get card spending permissions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
      - name: cardpermissionsupdate
        method: PATCH
        description: Update a single card permission
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v3-spend-profiles-profileId-cards-cardToken-status
      path: /v3/spend/profiles/{profileId}/cards/{cardToken}/status
      operations:
      - name: cardstatusupdate
        method: PUT
        description: Update card status
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v4-spend-profiles-profileId-cards-cardToken-spending-permissions
      path: /v4/spend/profiles/{profileId}/cards/{cardToken}/spending-permissions
      operations:
      - name: cardpermissionsbulkupdate
        method: PATCH
        description: Bulk update card permissions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: profileId
          in: path
          type: integer
          description: The ID of the profile that owns the card.
          required: true
        - name: cardToken
          in: path
          type: string
          description: The unique token identifying the card.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.WISE_API_KEY}}'
  exposes:
  - type: rest
    namespace: platform-card-rest
    port: 8080
    description: REST adapter for Wise Platform API — card. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/v3/spend/profiles/{profileid}/cards
      name: v3-spend-profiles-profileid-cards
      description: REST surface for v3-spend-profiles-profileId-cards.
      operations:
      - method: GET
        name: cardlist
        description: List cards for a profile
        call: platform-card.cardlist
        with:
          profileId: rest.profileId
          pageSize: rest.pageSize
          pageNumber: rest.pageNumber
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/spend/profiles/{profileid}/cards/{cardtoken}
      name: v3-spend-profiles-profileid-cards-cardtoken
      description: REST surface for v3-spend-profiles-profileId-cards-cardToken.
      operations:
      - method: GET
        name: cardget
        description: Get card details
        call: platform-card.cardget
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/phone-number
      name: v3-spend-profiles-profileid-cards-cardtoken-phone-number
      description: REST surface for v3-spend-profiles-profileId-cards-cardToken-phone-number.
      operations:
      - method: PUT
        name: cardphonenumberupdate
        description: Update phone number
        call: platform-card.cardphonenumberupdate
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/reset-pin-count
      name: v3-spend-profiles-profileid-cards-cardtoken-reset-pin-count
      description: REST surface for v3-spend-profiles-profileId-cards-cardToken-reset-pin-count.
      operations:
      - method: POST
        name: cardpincountreset
        description: Reset PIN count
        call: platform-card.cardpincountreset
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/spending-permissions
      name: v3-spend-profiles-profileid-cards-cardtoken-spending-permissions
      description: REST surface for v3-spend-profiles-profileId-cards-cardToken-spending-permissions.
      operations:
      - method: GET
        name: cardpermissionsget
        description: Get card spending permissions
        call: platform-card.cardpermissionsget
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: cardpermissionsupdate
        description: Update a single card permission
        call: platform-card.cardpermissionsupdate
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v3/spend/profiles/{profileid}/cards/{cardtoken}/status
      name: v3-spend-profiles-profileid-cards-cardtoken-status
      description: REST surface for v3-spend-profiles-profileId-cards-cardToken-status.
      operations:
      - method: PUT
        name: cardstatusupdate
        description: Update card status
        call: platform-card.cardstatusupdate
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v4/spend/profiles/{profileid}/cards/{cardtoken}/spending-permissions
      name: v4-spend-profiles-profileid-cards-cardtoken-spending-permissions
      description: REST surface for v4-spend-profiles-profileId-cards-cardToken-spending-permissions.
      operations:
      - method: PATCH
        name: cardpermissionsbulkupdate
        description: Bulk update card permissions
        call: platform-card.cardpermissionsbulkupdate
        with:
          profileId: rest.profileId
          cardToken: rest.cardToken
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: platform-card-mcp
    port: 9090
    transport: http
    description: MCP adapter for Wise Platform API — card. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-cards-profile
      description: List cards for a profile
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-card.cardlist
      with:
        profileId: tools.profileId
        pageSize: tools.pageSize
        pageNumber: tools.pageNumber
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-details
      description: Get card details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-card.cardget
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
      outputParameters:
      - type: object
        mapping: $.
    - name: update-phone-number
      description: Update phone number
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-card.cardphonenumberupdate
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: reset-pin-count
      description: Reset PIN count
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: platform-card.cardpincountreset
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-spending-permissions
      description: Get card spending permissions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: platform-card.cardpermissionsget
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
      outputParameters:
      - type: object
        mapping: $.
    - name: update-single-card-permission
      description: Update a single card permission
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-card.cardpermissionsupdate
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: update-card-status
      description: Update card status
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-card.cardstatusupdate
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: bulk-update-card-permissions
      description: Bulk update card permissions
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: platform-card.cardpermissionsbulkupdate
      with:
        profileId: tools.profileId
        cardToken: tools.cardToken
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.