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

# Get EndUser balance

> Get balance for given EndUser on a daily and account granularity



## OpenAPI

````yaml https://app.herondata.io/swagger get /api/end_users/balance
openapi: 3.0.0
info:
  contact:
    email: support@herondata.io
    name: Support
  title: Heron Data API
  version: '2021-07-19'
servers:
  - description: Production
    url: https://app.herondata.io
security:
  - ApiKeyAuth:
      - key_XXX
externalDocs:
  description: Read Tutorial
  url: https://docs.herondata.io/
paths:
  /api/end_users/balance:
    get:
      tags:
        - EndUserCalculations
      summary: Get EndUser balance
      description: Get balance for given EndUser on a daily and account granularity
      parameters:
        - description: >-
            end_user_id for statistics; either end_user_id or end_user_heron_id
            is required
          in: query
          name: end_user_id
          required: false
          schema:
            example: your_end_user_id
            nullable: true
            type: string
        - description: >-
            Heron-generated id for end user; either end_user_id or
            end_user_heron_id is required
          in: query
          name: end_user_heron_id
          required: false
          schema:
            example: eus_MCKzx7acyMJqmQSeNcCaBr
            nullable: true
            type: string
        - description: ISO 4217 currency code to convert to
          in: query
          name: to_currency
          required: false
          schema:
            enum:
              - GBP
              - USD
              - EUR
              - CAD
              - AUD
              - null
            example: USD
            nullable: true
            type: string
        - description: >-
            Deprecated (use date_min instead). Filter for transactions with
            timestamp after the input value
          in: query
          name: timestamp_min
          required: false
          schema:
            example: '2026-07-08T22:04:45.628777'
            format: date-time
            nullable: true
            type: string
        - description: >-
            Filter for transactions with timestamp after the input value
            (inclusive). It has precedence over timestamp_min
          in: query
          name: date_min
          required: false
          schema:
            example: '2026-07-08'
            format: date
            nullable: true
            type: string
        - description: >-
            Deprecated (use date_max instead). Filter for transactions with
            timestamp earlier than the input value
          in: query
          name: timestamp_max
          required: false
          schema:
            example: '2026-07-07T22:04:45.628826'
            format: date-time
            nullable: true
            type: string
        - description: >-
            Filter for transactions with date earlier than the input value
            (inclusive). It has precedence over timestamp_max
          in: query
          name: date_max
          required: false
          schema:
            example: '2026-07-07'
            format: date
            nullable: true
            type: string
        - description: If true, forecasts the balances of each account
          in: query
          name: include_forecast
          required: false
          schema:
            default: false
            type: boolean
        - description: Filter by specific account reference IDs
          explode: true
          in: query
          name: account_ids
          required: false
          schema:
            default: []
            example:
              - '1234'
              - '5678'
            items:
              type: string
            type: array
          style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndUserBalanceOutputSchema'
          description: >-
            OK. Empty balances include a warning reason when no balance data is
            available.
        '404':
          description: EndUser not found or inaccessible
      security:
        - ApiKeyAuth: []
components:
  schemas:
    EndUserBalanceOutputSchema:
      properties:
        daily_balances:
          items:
            $ref: '#/components/schemas/EndUserDailyBalance'
          type: array
        forecasted:
          items:
            $ref: '#/components/schemas/EndUserAccountBalanceForecast'
          type: array
        summary:
          $ref: '#/components/schemas/EndUserDailyBalance'
        warnings:
          description: >-
            Empty-balance reason codes. Populated responses return an empty
            list.
          items:
            enum:
              - no_transactions_present
              - transactions_present_but_not_enriched
              - transactions_enriched_but_no_balance_data
            type: string
          type: array
      type: object
    EndUserDailyBalance:
      properties:
        accounts:
          items:
            $ref: '#/components/schemas/EndUserAccountBalance'
          type: array
        accounts_not_converted:
          items:
            $ref: '#/components/schemas/EndUserAccountBalance'
          type: array
        balance:
          description: Balance amount
          type: number
        currency:
          description: ISO 4217 currency code for balance
          example: USD
          maxLength: 3
          minLength: 3
          nullable: true
          type: string
        date:
          description: Date of balance
          format: date
          type: string
      type: object
    EndUserAccountBalanceForecast:
      properties:
        account_id:
          type: string
        balances:
          items:
            $ref: '#/components/schemas/EndUserBalanceForecast'
          type: array
        currency:
          type: string
      type: object
    EndUserAccountBalance:
      properties:
        account_id:
          description: Account associated with balance
          type: string
        account_info:
          $ref: '#/components/schemas/EndUserAccountInfo'
        balance:
          description: Balance amount
          type: number
        balance_converted:
          description: Converted balance amount in target currency
          type: number
        currency:
          description: ISO 4217 currency code for balance
          example: USD
          maxLength: 3
          minLength: 3
          nullable: true
          type: string
        currency_converted:
          description: Conversion currency code. ISO 4217 currency code for balance
          example: USD
          maxLength: 3
          minLength: 3
          nullable: true
          type: string
        display_account_id:
          description: >-
            Human-readable account label for display: the last four digits of
            the account number (falling back to the account name). Not unique
            and not a key; use account_id to join.
          example: '7505'
          nullable: true
          type: string
        is_computed:
          description: Whether the balance has been imputed using forward fill
          type: boolean
        is_latest:
          description: Whether the date is the latest non-imputed balance for the account
          type: boolean
        timestamp:
          description: Timestamp of the latest transaction
          format: date-time
          type: string
      type: object
    EndUserBalanceForecast:
      properties:
        date:
          description: Forecast date at specified date granularity
          example: '2026-07-08'
          type: string
        predicted:
          description: Predicted converted balance
          example: 42.42
          type: number
        predicted_lower:
          description: Predict amount lower bound
          example: 4.24
          type: number
        predicted_upper:
          description: Predicted amount upper bound
          example: 420.42
          type: number
      type: object
    EndUserAccountInfo:
      properties:
        currency:
          description: ISO 4217 currency code
          example: USD
          maxLength: 3
          minLength: 3
          nullable: true
          type: string
        heron_id:
          description: Heron ID of the data source account
          example: dsa_nm7QoneEkLuBYBdLmQTWBS
          type: string
        institution_name:
          description: Name of the institution
          example: Chase
          type: string
        name:
          description: Name of the account
          example: Checking Account
          type: string
        number:
          description: Number of the account
          example: '123456789'
          type: string
        owner_name:
          description: Name of the account owner
          example: John Doe
          type: string
        type:
          description: Type of the account
          example: Checking
          type: string
      type: object
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: x-api-key
      type: apiKey

````