Binance · Capability

Binance Sub-Account API — Sub-Account Assets

Binance Sub-Account API — Sub-Account Assets. 3 operations. Lead operation: Universal transfer. Self-contained Naftiko capability covering one Binance business surface.

Run with Naftiko BinanceSub-Account Assets

What You Can Do

POST
Universaltransfer — Universal transfer
/v1/sapi/v1/sub-account/universaltransfer
GET
Getuniversaltransferhistory — Query universal transfer history
/v1/sapi/v1/sub-account/universaltransfer
GET
Getsubaccountassets — Query sub-account assets
/v1/sapi/v3/sub-account/assets

MCP Tools

universal-transfer

Universal transfer

query-universal-transfer-history

Query universal transfer history

read-only idempotent
query-sub-account-assets

Query sub-account assets

read-only idempotent

Capability Spec

sub-account-sub-account-assets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Binance Sub-Account API — Sub-Account Assets
  description: 'Binance Sub-Account API — Sub-Account Assets. 3 operations. Lead operation: Universal transfer. Self-contained
    Naftiko capability covering one Binance business surface.'
  tags:
  - Binance
  - Sub-Account Assets
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    BINANCE_API_KEY: BINANCE_API_KEY
capability:
  consumes:
  - type: http
    namespace: sub-account-sub-account-assets
    baseUri: https://api.binance.com
    description: Binance Sub-Account API — Sub-Account Assets business capability. Self-contained, no shared references.
    resources:
    - name: sapi-v1-sub-account-universalTransfer
      path: /sapi/v1/sub-account/universalTransfer
      operations:
      - name: universaltransfer
        method: POST
        description: Universal transfer
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fromEmail
          in: query
          type: string
        - name: toEmail
          in: query
          type: string
        - name: fromAccountType
          in: query
          type: string
          required: true
        - name: toAccountType
          in: query
          type: string
          required: true
        - name: clientTranId
          in: query
          type: string
        - name: asset
          in: query
          type: string
          required: true
        - name: amount
          in: query
          type: string
          required: true
        - name: recvWindow
          in: query
          type: integer
        - name: timestamp
          in: query
          type: integer
          required: true
        - name: signature
          in: query
          type: string
          required: true
      - name: getuniversaltransferhistory
        method: GET
        description: Query universal transfer history
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fromEmail
          in: query
          type: string
        - name: toEmail
          in: query
          type: string
        - name: clientTranId
          in: query
          type: string
        - name: startTime
          in: query
          type: integer
        - name: endTime
          in: query
          type: integer
        - name: page
          in: query
          type: integer
        - name: limit
          in: query
          type: integer
        - name: recvWindow
          in: query
          type: integer
        - name: timestamp
          in: query
          type: integer
          required: true
        - name: signature
          in: query
          type: string
          required: true
    - name: sapi-v3-sub-account-assets
      path: /sapi/v3/sub-account/assets
      operations:
      - name: getsubaccountassets
        method: GET
        description: Query sub-account assets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: email
          in: query
          type: string
          required: true
        - name: recvWindow
          in: query
          type: integer
        - name: timestamp
          in: query
          type: integer
          required: true
        - name: signature
          in: query
          type: string
          required: true
    authentication:
      type: apikey
      key: X-MBX-APIKEY
      value: '{{env.BINANCE_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: sub-account-sub-account-assets-rest
    port: 8080
    description: REST adapter for Binance Sub-Account API — Sub-Account Assets. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/sapi/v1/sub-account/universaltransfer
      name: sapi-v1-sub-account-universaltransfer
      description: REST surface for sapi-v1-sub-account-universalTransfer.
      operations:
      - method: POST
        name: universaltransfer
        description: Universal transfer
        call: sub-account-sub-account-assets.universaltransfer
        with:
          fromEmail: rest.fromEmail
          toEmail: rest.toEmail
          fromAccountType: rest.fromAccountType
          toAccountType: rest.toAccountType
          clientTranId: rest.clientTranId
          asset: rest.asset
          amount: rest.amount
          recvWindow: rest.recvWindow
          timestamp: rest.timestamp
          signature: rest.signature
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: getuniversaltransferhistory
        description: Query universal transfer history
        call: sub-account-sub-account-assets.getuniversaltransferhistory
        with:
          fromEmail: rest.fromEmail
          toEmail: rest.toEmail
          clientTranId: rest.clientTranId
          startTime: rest.startTime
          endTime: rest.endTime
          page: rest.page
          limit: rest.limit
          recvWindow: rest.recvWindow
          timestamp: rest.timestamp
          signature: rest.signature
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/sapi/v3/sub-account/assets
      name: sapi-v3-sub-account-assets
      description: REST surface for sapi-v3-sub-account-assets.
      operations:
      - method: GET
        name: getsubaccountassets
        description: Query sub-account assets
        call: sub-account-sub-account-assets.getsubaccountassets
        with:
          email: rest.email
          recvWindow: rest.recvWindow
          timestamp: rest.timestamp
          signature: rest.signature
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: sub-account-sub-account-assets-mcp
    port: 9090
    transport: http
    description: MCP adapter for Binance Sub-Account API — Sub-Account Assets. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: universal-transfer
      description: Universal transfer
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sub-account-sub-account-assets.universaltransfer
      with:
        fromEmail: tools.fromEmail
        toEmail: tools.toEmail
        fromAccountType: tools.fromAccountType
        toAccountType: tools.toAccountType
        clientTranId: tools.clientTranId
        asset: tools.asset
        amount: tools.amount
        recvWindow: tools.recvWindow
        timestamp: tools.timestamp
        signature: tools.signature
      outputParameters:
      - type: object
        mapping: $.
    - name: query-universal-transfer-history
      description: Query universal transfer history
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sub-account-sub-account-assets.getuniversaltransferhistory
      with:
        fromEmail: tools.fromEmail
        toEmail: tools.toEmail
        clientTranId: tools.clientTranId
        startTime: tools.startTime
        endTime: tools.endTime
        page: tools.page
        limit: tools.limit
        recvWindow: tools.recvWindow
        timestamp: tools.timestamp
        signature: tools.signature
      outputParameters:
      - type: object
        mapping: $.
    - name: query-sub-account-assets
      description: Query sub-account assets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sub-account-sub-account-assets.getsubaccountassets
      with:
        email: tools.email
        recvWindow: tools.recvWindow
        timestamp: tools.timestamp
        signature: tools.signature
      outputParameters:
      - type: object
        mapping: $.