# Feed balance summary by feed

Retrieves a report of feed and ledger balances for a specific feed within a fund, including aggregate counts of how many accounts are balanced, unbalanced, or have no data.

Endpoint: GET /f/{businessCode}/{fundCode}/feed-data/balance-summary/{feedId}
Version: 1.0.0
Security: Class_oAuth

## Security:

  - `Class_oAuth` (unknown)
    oauth2 scopes: fund.details.read

## Path parameters:

  - `businessCode` (string, required)
    Class business code

  - `fundCode` (string, required)
    Class entity code

  - `feedId` (string, required)
    The unique GUID identifier of the feed to retrieve balance data for.

## Query parameters:

  - `includeHoldingBalance` (boolean)
    Include holding balance details in the response.

  - `asAtDate` (string)
    The date for which to retrieve balance data.

## Response 200:

  - `200` (unknown)
    Success (Ok)

## Response 200 fields (application/json):

  - `Data` (array, required)

  - `Data.FeedId` (string, required)
    The unique GUID identifier of the feed.
    Example: b4c9e23d-5c6f-5d70-ae8f-9a0b1b2c3d4f

  - `Data.DefaultDisplayName` (string, required)
    The default display name of the feed as configured in Class.
    Example: CBA Cash - demo-fund

  - `Data.BalancedAccounts` (integer, required)
    The number of holding accounts where the ledger balance matches the feed balance.
    Example: 3

  - `Data.UnbalancedAccounts` (integer, required)
    The number of holding accounts where the ledger balance does not match the feed balance.
    Example: 1

  - `Data.OtherAccounts` (integer, required)
    The number of holding accounts with no feed data or in an indeterminate reconciliation state.
    Example: 0

  - `Data.Status` (string, required)
    The overall reconciliation status of a feed. An empty string indicates the status has not yet been determined.
    Enum: "", "Balanced", "Unbalanced", "NoData"

  - `Data.Balances` (array | null, required)
    A list of individual holding account balance details for this feed.

  - `Data.Balances.SecurityIssueCode` (string, required)
    The ASX or exchange code identifying the security associated with this holding.
    Example: CASH

  - `Data.Balances.HoldingAccountCode` (string, required)
    The unique code identifying the holding account within the fund.
    Example: ha-cba-001

  - `Data.Balances.HoldingAccountId` (string, required)
    The unique GUID identifier of the holding account.
    Example: a3f8d12c-4b5e-4c6f-9d7e-8f9a0b1c2d3e

  - `Data.Balances.HoldingAccountDescription` (string, required)
    A human-readable description of the holding account.
    Example: CBA Cash Account

  - `Data.Balances.LedgerBalance` (number, required)
    The balance recorded in the Class ledger for this holding.
    Example: 152500

  - `Data.Balances.LedgerBalanceDate` (string, required)
    The date as of which the ledger balance was recorded.
    Example: 2025-03-15

  - `Data.Balances.FeedBalance` (number | null)
    The balance reported by the data feed provider for this holding.
    Example: 152500

  - `Data.Balances.FeedBalanceDate` (string | null)
    The date as of which the feed balance was reported by the provider.
    Example: 2025-03-15

  - `Data.Balances.Status` (string, required)
    Enum: "NoData", "Balanced", "Unbalanced"

  - `Errors` (array, required)

  - `Errors.Code` (string, required)

  - `Errors.Message` (string, required)

## Response 400:

  - `400` (unknown)
    Error Message

## Response 400 fields (application/json):

  - `Errors` (array)
    A list of validation or request errors.

  - `Errors.code` (string | null)

  - `Errors.message` (string | null)

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `Errors` (array)
    A list of authorization errors.

  - `Errors.Code` (string)
    Example: API_NOT_AUTHORISED

  - `Errors.Message` (string)
    Example: Not authorised

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 fields (application/json):

  - `Errors` (array)
    A list of forbidden access errors.

  - `Errors.Code` (string)
    Example: FORBIDDEN

  - `Errors.Message` (string)
    Example: You do not have permission to access this resource.

## Response 404:

  - `404` (unknown)
    Resource not available or user does not have access to the fund

## Response 404 fields (application/json):

  - `Errors` (array)
    A list of resource not found errors.

  - `Errors.Code` (string)
    Example: API_NOT_FOUND

  - `Errors.Message` (string)
    Example: Resource not available or user does not have access to the fund.

## Response 500:

  - `500` (unknown)
    Internal Server Error

## Response 500 fields (application/json):

  - `Errors` (array)
    A list of internal server errors.

  - `Errors.Code` (string)
    Example: API_INTERNAL_ERROR

  - `Errors.Message` (string)
    Example: An unexpected error occurred on the server. Please try again later.

## Response default:

  - `default` (unknown)
    Unexpected error

## Response default fields (application/json):

  - `Errors` (array)
    A list of unexpected errors.

  - `Errors.Code` (string)
    Example: API_INTERNAL_ERROR

  - `Errors.Message` (string)
    Example: An unexpected error occurred on the server. Please try again later.

## Response 200 examples:

  - `includeHoldingBalance=true` (unknown)

  - `includeHoldingBalance=false` (unknown)

