Synctera · Capability

Synctera API — Cards

Synctera API — Cards. 21 operations. Lead operation: List Cards. Self-contained Naftiko capability covering one Synctera business surface.

Run with Naftiko SyncteraCards

What You Can Do

GET
Listcards — List Cards
/v1/cards
POST
Issuecard — Issue a Card
/v1/cards
POST
Activatecard — Activate a card
/v1/cards/activate
GET
Getcardwidgeturl — Get card widget URL
/v1/cards/card-widget-url
GET
Listgateways — List Gateways
/v1/cards/gateways
POST
Creategateway — Create Gateway
/v1/cards/gateways
GET
Getgateway — Get Gateway
/v1/cards/gateways/{gateway-id}
PATCH
Updategateway — Update Gateway
/v1/cards/gateways/{gateway-id}
GET
Listcardimagedetails — List Card Image Details
/v1/cards/images
POST
Createcardimage — Create Card Image
/v1/cards/images
GET
Getcardimagedetails — Get Card Image Details
/v1/cards/images/{card-image-id}
PATCH
Updatecardimagedetails — Update Card Image Details
/v1/cards/images/{card-image-id}
GET
Getcardimagedata — Get Card Image Data
/v1/cards/images/{card-image-id}/data
POST
Uploadcardimagedata — Upload Card Image
/v1/cards/images/{card-image-id}/data
GET
Listcardproducts — List Card Products
/v1/cards/products
POST
Getclientsingleusetoken — Get single-use token
/v1/cards/single-use-token
GET
Getcard — Get Card
/v1/cards/{card-id}
PATCH
Updatecard — Update Card
/v1/cards/{card-id}
GET
Getcardbarcode — Get Card Barcode
/v1/cards/{card-id}/barcodes
GET
Listchanges — List Card Changes
/v1/cards/{card-id}/changes
POST
Getclientaccesstoken — Get a client token
/v1/cards/{card-id}/client-token

MCP Tools

list-cards

List Cards

read-only idempotent
issue-card

Issue a Card

activate-card

Activate a card

get-card-widget-url

Get card widget URL

read-only idempotent
list-gateways

List Gateways

read-only idempotent
create-gateway

Create Gateway

get-gateway

Get Gateway

read-only idempotent
update-gateway

Update Gateway

idempotent
list-card-image-details

List Card Image Details

read-only idempotent
create-card-image

Create Card Image

get-card-image-details

Get Card Image Details

read-only idempotent
update-card-image-details

Update Card Image Details

idempotent
get-card-image-data

Get Card Image Data

read-only idempotent
upload-card-image

Upload Card Image

list-card-products

List Card Products

read-only idempotent
get-single-use-token

Get single-use token

read-only
get-card

Get Card

read-only idempotent
update-card

Update Card

idempotent
get-card-barcode

Get Card Barcode

read-only idempotent
list-card-changes

List Card Changes

read-only idempotent
get-client-token

Get a client token

read-only

Capability Spec

synctera-cards.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Synctera API — Cards
  description: 'Synctera API — Cards. 21 operations. Lead operation: List Cards. Self-contained Naftiko capability covering
    one Synctera business surface.'
  tags:
  - Synctera
  - Cards
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SYNCTERA_API_KEY: SYNCTERA_API_KEY
capability:
  consumes:
  - type: http
    namespace: synctera-cards
    baseUri: https://api.synctera.com/v0
    description: Synctera API — Cards business capability. Self-contained, no shared references.
    resources:
    - name: cards
      path: /cards
      operations:
      - name: listcards
        method: GET
        description: List Cards
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: issuecard
        method: POST
        description: Issue a Card
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-activate
      path: /cards/activate
      operations:
      - name: activatecard
        method: POST
        description: Activate a card
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-card_widget_url
      path: /cards/card_widget_url
      operations:
      - name: getcardwidgeturl
        method: GET
        description: Get card widget URL
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: widget_type
          in: query
          type: string
          description: The type of widget for which to construct the URL
          required: true
        - name: customer_id
          in: query
          type: string
          required: true
        - name: account_id
          in: query
          type: string
          required: true
        - name: card_id
          in: query
          type: string
          description: The ID of the card (required for set PIN widget)
    - name: cards-gateways
      path: /cards/gateways
      operations:
      - name: listgateways
        method: GET
        description: List Gateways
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: creategateway
        method: POST
        description: Create Gateway
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-gateways-gateway_id
      path: /cards/gateways/{gateway_id}
      operations:
      - name: getgateway
        method: GET
        description: Get Gateway
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updategateway
        method: PATCH
        description: Update Gateway
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-images
      path: /cards/images
      operations:
      - name: listcardimagedetails
        method: GET
        description: List Card Image Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createcardimage
        method: POST
        description: Create Card Image
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-images-card_image_id
      path: /cards/images/{card_image_id}
      operations:
      - name: getcardimagedetails
        method: GET
        description: Get Card Image Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatecardimagedetails
        method: PATCH
        description: Update Card Image Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-images-card_image_id-data
      path: /cards/images/{card_image_id}/data
      operations:
      - name: getcardimagedata
        method: GET
        description: Get Card Image Data
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: uploadcardimagedata
        method: POST
        description: Upload Card Image
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-products
      path: /cards/products
      operations:
      - name: listcardproducts
        method: GET
        description: List Card Products
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: cards-single_use_token
      path: /cards/single_use_token
      operations:
      - name: getclientsingleusetoken
        method: POST
        description: Get single-use token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-card_id
      path: /cards/{card_id}
      operations:
      - name: getcard
        method: GET
        description: Get Card
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatecard
        method: PATCH
        description: Update Card
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: cards-card_id-barcodes
      path: /cards/{card_id}/barcodes
      operations:
      - name: getcardbarcode
        method: GET
        description: Get Card Barcode
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: cards-card_id-changes
      path: /cards/{card_id}/changes
      operations:
      - name: listchanges
        method: GET
        description: List Card Changes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: cards-card_id-client_token
      path: /cards/{card_id}/client_token
      operations:
      - name: getclientaccesstoken
        method: POST
        description: Get a client token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      token: '{{env.SYNCTERA_API_KEY}}'
  exposes:
  - type: rest
    namespace: synctera-cards-rest
    port: 8080
    description: REST adapter for Synctera API — Cards. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/cards
      name: cards
      description: REST surface for cards.
      operations:
      - method: GET
        name: listcards
        description: List Cards
        call: synctera-cards.listcards
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: issuecard
        description: Issue a Card
        call: synctera-cards.issuecard
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/activate
      name: cards-activate
      description: REST surface for cards-activate.
      operations:
      - method: POST
        name: activatecard
        description: Activate a card
        call: synctera-cards.activatecard
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/card-widget-url
      name: cards-card-widget-url
      description: REST surface for cards-card_widget_url.
      operations:
      - method: GET
        name: getcardwidgeturl
        description: Get card widget URL
        call: synctera-cards.getcardwidgeturl
        with:
          widget_type: rest.widget_type
          customer_id: rest.customer_id
          account_id: rest.account_id
          card_id: rest.card_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/gateways
      name: cards-gateways
      description: REST surface for cards-gateways.
      operations:
      - method: GET
        name: listgateways
        description: List Gateways
        call: synctera-cards.listgateways
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: creategateway
        description: Create Gateway
        call: synctera-cards.creategateway
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/gateways/{gateway-id}
      name: cards-gateways-gateway-id
      description: REST surface for cards-gateways-gateway_id.
      operations:
      - method: GET
        name: getgateway
        description: Get Gateway
        call: synctera-cards.getgateway
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updategateway
        description: Update Gateway
        call: synctera-cards.updategateway
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/images
      name: cards-images
      description: REST surface for cards-images.
      operations:
      - method: GET
        name: listcardimagedetails
        description: List Card Image Details
        call: synctera-cards.listcardimagedetails
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcardimage
        description: Create Card Image
        call: synctera-cards.createcardimage
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/images/{card-image-id}
      name: cards-images-card-image-id
      description: REST surface for cards-images-card_image_id.
      operations:
      - method: GET
        name: getcardimagedetails
        description: Get Card Image Details
        call: synctera-cards.getcardimagedetails
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatecardimagedetails
        description: Update Card Image Details
        call: synctera-cards.updatecardimagedetails
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/images/{card-image-id}/data
      name: cards-images-card-image-id-data
      description: REST surface for cards-images-card_image_id-data.
      operations:
      - method: GET
        name: getcardimagedata
        description: Get Card Image Data
        call: synctera-cards.getcardimagedata
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: uploadcardimagedata
        description: Upload Card Image
        call: synctera-cards.uploadcardimagedata
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/products
      name: cards-products
      description: REST surface for cards-products.
      operations:
      - method: GET
        name: listcardproducts
        description: List Card Products
        call: synctera-cards.listcardproducts
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/single-use-token
      name: cards-single-use-token
      description: REST surface for cards-single_use_token.
      operations:
      - method: POST
        name: getclientsingleusetoken
        description: Get single-use token
        call: synctera-cards.getclientsingleusetoken
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/{card-id}
      name: cards-card-id
      description: REST surface for cards-card_id.
      operations:
      - method: GET
        name: getcard
        description: Get Card
        call: synctera-cards.getcard
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updatecard
        description: Update Card
        call: synctera-cards.updatecard
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/{card-id}/barcodes
      name: cards-card-id-barcodes
      description: REST surface for cards-card_id-barcodes.
      operations:
      - method: GET
        name: getcardbarcode
        description: Get Card Barcode
        call: synctera-cards.getcardbarcode
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/{card-id}/changes
      name: cards-card-id-changes
      description: REST surface for cards-card_id-changes.
      operations:
      - method: GET
        name: listchanges
        description: List Card Changes
        call: synctera-cards.listchanges
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/cards/{card-id}/client-token
      name: cards-card-id-client-token
      description: REST surface for cards-card_id-client_token.
      operations:
      - method: POST
        name: getclientaccesstoken
        description: Get a client token
        call: synctera-cards.getclientaccesstoken
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: synctera-cards-mcp
    port: 9090
    transport: http
    description: MCP adapter for Synctera API — Cards. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-cards
      description: List Cards
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.listcards
      outputParameters:
      - type: object
        mapping: $.
    - name: issue-card
      description: Issue a Card
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: synctera-cards.issuecard
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: activate-card
      description: Activate a card
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: synctera-cards.activatecard
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-widget-url
      description: Get card widget URL
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getcardwidgeturl
      with:
        widget_type: tools.widget_type
        customer_id: tools.customer_id
        account_id: tools.account_id
        card_id: tools.card_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-gateways
      description: List Gateways
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.listgateways
      outputParameters:
      - type: object
        mapping: $.
    - name: create-gateway
      description: Create Gateway
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: synctera-cards.creategateway
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-gateway
      description: Get Gateway
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getgateway
      outputParameters:
      - type: object
        mapping: $.
    - name: update-gateway
      description: Update Gateway
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: synctera-cards.updategateway
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-card-image-details
      description: List Card Image Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.listcardimagedetails
      outputParameters:
      - type: object
        mapping: $.
    - name: create-card-image
      description: Create Card Image
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: synctera-cards.createcardimage
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-image-details
      description: Get Card Image Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getcardimagedetails
      outputParameters:
      - type: object
        mapping: $.
    - name: update-card-image-details
      description: Update Card Image Details
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: synctera-cards.updatecardimagedetails
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-image-data
      description: Get Card Image Data
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getcardimagedata
      outputParameters:
      - type: object
        mapping: $.
    - name: upload-card-image
      description: Upload Card Image
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: synctera-cards.uploadcardimagedata
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: list-card-products
      description: List Card Products
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.listcardproducts
      outputParameters:
      - type: object
        mapping: $.
    - name: get-single-use-token
      description: Get single-use token
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: synctera-cards.getclientsingleusetoken
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card
      description: Get Card
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getcard
      outputParameters:
      - type: object
        mapping: $.
    - name: update-card
      description: Update Card
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: synctera-cards.updatecard
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-card-barcode
      description: Get Card Barcode
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.getcardbarcode
      outputParameters:
      - type: object
        mapping: $.
    - name: list-card-changes
      description: List Card Changes
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: synctera-cards.listchanges
      outputParameters:
      - type: object
        mapping: $.
    - name: get-client-token
      description: Get a client token
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: synctera-cards.getclientaccesstoken
      outputParameters:
      - type: object
        mapping: $.