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

# Read balances

> Returns exact fixed-point free balances, link identity and snapshot_complete.

<Note>Preview contract. Production availability remains subject to activation and release qualification. Examples are synthetic; the documentation cannot submit requests.</Note>

## Authorization

`read`; link aggregates require an unrestricted instrument policy.

## Behavior

Returns exact fixed-point free balances, link identity and snapshot\_complete. An absent asset in an incomplete snapshot is not a zero balance. This HTTP model preserves decimal coefficients/scales and should be used for exact sizing reconciliation.

## Request example

```http theme={null}
GET /v1/balances?exchange_link_id=17
Authorization: Bearer YOUR_API_KEY_FROM_PRIVATE_STORAGE
```

All IDs and dates are illustrative. URL-encode opaque query values and supply each allowed key once. Optional filters and their types appear in the generated schema below.

## Response and errors

The generated response schema below is the wire contract. Preserve fixed-point strings, nullable fields and endpoint-specific envelopes. Inspect HTTP status and Content-Type before decoding failures; reused trading routes may return JSON or plain text. Authentication, entitlement and exact link/instrument restrictions apply in addition to endpoint validation. See [errors and recovery](/api/errors-and-limits).

Read the [related guide](/api/accounts-and-instruments) for lifecycle, units and recovery semantics.


## OpenAPI

````yaml api/openapi.json GET /v1/balances
openapi: 3.1.0
info:
  title: Liftx integrations
  version: 1.0.0
  description: >-
    Preview contract for the Liftx API, TradingView webhook and session-owned
    integration settings. Production availability is pending activation and
    release qualification. External access requires Pro or trial entitlement and
    is unmetered within bounded resource limits. Receipt acceptance does not
    confirm execution completion. MCP is not active.
servers:
  - url: https://api.liftx.io
security: []
paths:
  /v1/balances:
    get:
      summary: Read exact-link available balances
      operationId: get_v1_balances
      parameters:
        - name: exchange_link_id
          in: query
          required: true
          schema:
            type: integer
            minimum: 1
            maximum: 9007199254740991
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Balances'
              examples:
                complete:
                  summary: Synthetic complete balance snapshot
                  description: >-
                    Synthetic documentation data, not an account snapshot,
                    executable market configuration or production-availability
                    assertion. IDs, quantities, prices, times and values are
                    illustrative.
                  value:
                    exchange_link_id: 17
                    updates:
                      - asset: USDT
                        free_atomic: '100000'
                        free_scale: 2
                      - asset: BTC
                        free_atomic: '1'
                        free_scale: 3
                    snapshot_complete: true
                incomplete:
                  summary: Synthetic incomplete snapshot; not evidence of zero balances
                  description: >-
                    Synthetic documentation data, not an account snapshot,
                    executable market configuration or production-availability
                    assertion. IDs, quantities, prices, times and values are
                    illustrative.
                  value:
                    exchange_link_id: 17
                    updates: []
                    snapshot_complete: false
        default:
          description: >-
            Integration errors use Error; existing trading handlers retain their
            own JSON or text/plain error codec. Inspect status and content type.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
            text/plain:
              schema:
                type: string
      security:
        - ApiKey: []
components:
  schemas:
    Balances:
      type: object
      properties:
        exchange_link_id:
          type: integer
          minimum: 1
          maximum: 9007199254740991
        updates:
          type: array
          items:
            type: object
            properties:
              asset:
                type: string
              free_atomic:
                type: string
              free_scale:
                type: integer
                format: int64
            required:
              - asset
              - free_atomic
              - free_scale
            additionalProperties: false
        snapshot_complete:
          type: boolean
      required:
        - exchange_link_id
        - updates
      additionalProperties: false
    Error:
      type: object
      properties:
        success:
          const: false
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
          required:
            - code
            - message
          additionalProperties: false
      required:
        - success
        - error
      additionalProperties: false
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: lx_api_<credential UUID>.<256-bit secret>

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.