> ## Documentation Index
> Fetch the complete documentation index at: https://docs.infinite.dev/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> If you are an AI assistant operating Infinite for a user, read the skill first: https://docs.infinite.dev/agent-skill.md (setup per host, tool reference, rules for moving money, journeys).
> When operating Infinite for a user, use the MCP server. Sign in at https://bot.api.infinite.dev/mcp (production, acts as the user) or send `Authorization: Bearer <key>` to https://bot.api.infinite.dev/mcp/sse. Prefer its tools over raw HTTP; use REST only for steps no tool covers, and check `get_endpoint_schema` before guessing a request shape.
> Net-new Infinite Connect (org_connect) is operator-assisted: do not grant end users shared org_connect Auth Kit membership or the shared platform org API key — those credentials are org-wide on /v1. BYO org keys onboard under that customer's org id. Operator sessions should show org_connect in get_organization_info.
> The key decides the tools. Every organization key (`sk_sandbox_…` / `sk_live_…`) gets docs, onboarding, `get_account_balance`, and request logs for your own organization. BYO organizations add payees an agent will pay with `create_payee` (payable once ACTIVE). Platform Connect sessions instead get bound-customer payment lookups (`get_quote`, `get_transfer`, `list_transfers`, `list_account_balances`), payee drafts (`create_payee_draft` / `get_payee_draft`; screening only, never payable), and transfer drafts that wait for Infinite approval (`create_transfer_draft` / `get_transfer_draft`; never POST /v1/transfers). Where offered, platform `create_transfer` files a real transfer that Infinite holds in review before funding; it cannot be submitted from DRAFT.
> An agent key (`sk_sandbox_agent_…` / `sk_live_agent_…`) moves money within that agent's limits: `create_transfer` → `submit_transfer` → `wait_for_transfer`.
> On sandbox organization-key sessions, `sandbox_approve_customer` (makes the capabilities you pass READY, and related ones may turn READY too; `request_capabilities` is not needed), `sandbox_fund_account`, and `sandbox_complete_transfer` stand in for verification, funding, and settlement, so a whole flow runs from MCP. BYO keys can pass `customerId` on each call without binding; platform sessions must bind a customer first (`create_business_customer` auto-binds, or send `X-Infinite-On-Behalf-Of`).
> When searching documentation without a key, use the docs MCP at https://docs.infinite.dev/mcp.
> Start in sandbox (https://sandbox.api.infinite.dev). Do not use production unless the user explicitly asks.
> Confirm amount, currency, and payee with the user before any payment is submitted. Pass the invoice number as `reference` on `create_transfer`; the summary says what the payee will see.
> REST amounts are integer minor units (`"4000"` = 40.00 USD). MCP payment tools take exact decimal strings (`"40.00"`). Never mix them.
> Agent denials return `403 { denial: { code, message, window, limit, used, remaining, attemptedAmount, currency }, hint }` with decimal amounts; per-transfer denials omit `used` and `remaining`. Report them to the user; do not work around them.

# Get customer treasury balances

> Retrieve treasury balances grouped by treasury and wallet. Ideal for portfolio views showing accounts and sub-accounts. Transaction wallets are excluded.



## OpenAPI

````yaml get /v1/customers/{customerId}/treasury
openapi: 3.0.0
info:
  title: Infinite API
  description: API for Infinite
  version: '1.0'
  contact: {}
servers:
  - url: https://sandbox.api.infinite.dev
    description: Sandbox
  - url: https://api.infinite.dev
    description: Production
security: []
tags:
  - name: Accounts
    description: Virtual and external account management
  - name: Customers
    description: Customer identity management
  - name: Documents
    description: Document upload and management
  - name: Fixed Routes
    description: Fixed route management
  - name: External Bank Accounts
    description: External bank account management
  - name: External Wallets
    description: External wallet management
  - name: Infinite Wallets
    description: Infinite Wallet management
  - name: Organizations
    description: Organization management
  - name: Quotes
    description: Quote creation and management
  - name: Transfers
    description: Money movement and transaction tracking
  - name: Verification
    description: Identity verification workflows
  - name: Terms of Service
    description: Terms of Service acceptance
  - name: Health
    description: System health and monitoring
  - name: Sandbox
    description: Sandbox utilities
paths:
  /v1/customers/{customerId}/treasury:
    get:
      tags:
        - Customers
      summary: Get customer treasury balances
      description: >-
        Retrieve treasury balances grouped by treasury and wallet. Ideal for
        portfolio views showing accounts and sub-accounts. Transaction wallets
        are excluded.
      operationId: CustomersController_getCustomerTreasury_v1
      parameters:
        - name: X-API-Key
          in: header
          description: API key
          required: false
          schema:
            type: string
        - name: customerId
          required: true
          in: path
          description: Customer ID
          schema:
            type: string
            example: cus_abc123
        - name: treasuryId
          required: false
          in: query
          description: Treasury ID to filter to a specific treasury
          schema:
            example: trs_abc123
            type: string
        - name: view
          required: false
          in: query
          description: >-
            Treasury response shape. PORTFOLIO returns wallet-group treasuries.
            OVERVIEW may include provider-backed treasury entries for the
            treasury page.
          schema:
            enum:
              - PORTFOLIO
              - OVERVIEW
            type: string
      responses:
        '200':
          description: Treasury balances grouped by treasury and wallet
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CustomerTreasuryResponseDto'
        '401':
          description: Unauthorized - Invalid or missing authentication credentials
      security:
        - bearer: []
      x-codeSamples:
        - lang: bash
          label: CLI
          source: >-
            # Requires: npm i -g @infinite_dev/cli && export
            INFINITE_API_KEY=sk_sandbox_...

            # Escape hatch for any endpoint: infinite api <METHOD> <path>

            infinite api GET /v1/customers/cus_abc123/treasury \
              --query treasuryId=trs_abc123
        - lang: text
          label: MCP
          source: >-
            Get customer treasury balances (cus_abc123, treasuryId trs_abc123,
            view PORTFOLIO).
components:
  schemas:
    CustomerTreasuryResponseDto:
      type: object
      properties:
        customerId:
          type: string
          description: Customer ID
          example: cus_abc123
        treasuries:
          description: Customer treasuries with wallet balances
          type: array
          items:
            $ref: '#/components/schemas/TreasuryDto'
      required:
        - customerId
        - treasuries
    TreasuryDto:
      type: object
      properties:
        id:
          type: string
          description: Treasury ID
          example: trs_abc123
        name:
          type: string
          description: Treasury name
          example: Main Treasury
        provider:
          type: string
          description: Provider backing this treasury
          example: INFINITE
        balances:
          type: object
          description: Balances held in this treasury keyed by currency code
          additionalProperties:
            $ref: '#/components/schemas/TreasuryBalanceDto'
        fundingMethods:
          description: Funding methods that can pay into this treasury
          type: array
          items:
            $ref: '#/components/schemas/TreasuryFundingMethodDto'
        wallets:
          description: Wallets in this treasury
          type: array
          items:
            $ref: '#/components/schemas/TreasuryWalletDto'
      required:
        - id
        - balances
        - fundingMethods
        - wallets
    TreasuryBalanceDto:
      type: object
      properties:
        available:
          description: Available balance for this currency
          allOf:
            - $ref: '#/components/schemas/MoneyOutputDto'
        pending:
          description: Pending balance for this currency
          allOf:
            - $ref: '#/components/schemas/MoneyOutputDto'
      required:
        - available
    TreasuryFundingMethodDto:
      type: object
      properties:
        id:
          type: string
          description: Funding method ID
          example: vba_abc123
        type:
          type: string
          description: Funding method type
          enum:
            - BANK_ACCOUNT
            - CRYPTO_ADDRESS
          example: BANK_ACCOUNT
        provider:
          type: string
          description: Provider backing this treasury funding method
          example: INFINITE
        currency:
          type: string
          description: Primary currency accepted by this funding method
          example: USD
        currencyCodes:
          description: Currencies accepted by this funding method
          example:
            - USDC
          type: array
          items:
            type: string
        rail:
          type: string
          description: Inbound payment rail or network
          example: ACH
        rails:
          description: Supported inbound payment rails
          example:
            - ACH
            - WIRE
          type: array
          items:
            type: string
        bankName:
          type: string
          description: Bank name for bank funding methods
          example: Infinite Bank
        beneficiaryName:
          type: string
          description: Beneficiary name for bank funding methods
          example: Acme Treasury
        accountNumber:
          type: string
          description: Bank account number for bank funding methods
          example: '1234567890'
        routingNumber:
          type: string
          description: Routing number for bank funding methods
          example: '021000021'
        iban:
          type: string
          description: IBAN for bank funding methods
          example: GB82WEST12345698765432
        swiftBic:
          type: string
          description: SWIFT/BIC code for bank funding methods
          example: CHASUS33
        address:
          type: string
          description: Deposit address for crypto funding methods
          example: '0x1234567890abcdef1234567890abcdef12345678'
        addressType:
          type: string
          description: Address type for crypto funding methods
          enum:
            - EVM
            - TRON
            - BITCOIN
            - SOLANA
          example: EVM
        chains:
          type: array
          description: Supported chains for crypto funding methods
          example:
            - ETHEREUM
            - BASE
          items:
            type: string
            enum:
              - ETHEREUM
              - BASE
              - POLYGON
              - SOLANA
              - TRON
              - BITCOIN
              - ARBITRUM
              - ROBINHOOD
      required:
        - id
        - type
        - provider
    TreasuryWalletDto:
      type: object
      properties:
        accountId:
          type: string
          description: >-
            Infinite wallet account id (`inw_…`). Use as transfer
            `source.accountId` and as a fixed-route `sweepTargetAccountId`.
          example: inw_abc123
        address:
          type: string
          description: Wallet address
          example: '0x1234567890abcdef1234567890abcdef12345678'
        addressType:
          type: string
          description: Address type
          enum:
            - EVM
            - TRON
            - BITCOIN
            - SOLANA
          example: EVM
        balances:
          description: Token balances on this wallet
          type: array
          items:
            $ref: '#/components/schemas/WalletTokenBalanceDto'
      required:
        - accountId
        - address
        - addressType
        - balances
    MoneyOutputDto:
      type: object
      properties:
        currency:
          type: string
          description: Currency code
          example: USD
        exponent:
          type: number
          description: >-
            Number of decimal places for this currency (e.g., 2 for USD, 6 for
            USDC)
          example: 2
        value:
          type: string
          description: Amount in smallest unit as a string
          example: '12345'
        displayValue:
          type: string
          description: Human-readable decimal value
          example: '123.45'
      required:
        - currency
        - exponent
        - value
        - displayValue
    WalletTokenBalanceDto:
      type: object
      properties:
        currency:
          type: string
          description: Currency symbol
          example: USDC
        balance:
          description: Balance amount
          allOf:
            - $ref: '#/components/schemas/MoneyOutputDto'
        chain:
          type: string
          description: Chain name
          example: ETHEREUM
      required:
        - currency
        - balance
        - chain
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: API Key
      type: http
      description: API Key in Bearer format (e.g., Bearer sk_test_...)

````

## Related topics

- [Get customer by ID](/api-reference/customers/get-customer-by-id.md)
- [Agents](/concepts/agents.md)
- [Balance Accounts](/guides/balance-accounts.md)
- [Simulate transfer lifecycle](/api-reference/sandbox/simulate-transfer-lifecycle.md)
- [Fund transfer from Infinite Wallet balance](/api-reference/transfers/fund-transfer-from-infinite-wallet-balance.md)
