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: $.