Balance Sheet Statements
Retrieves the balance sheet statement data for the specified tickers. The balance sheet statement is a financial statement that provides a snapshot of a company’s financial position at a specific point in time. It shows the company’s assets, liabilities, and shareholders’ equity. The balance sheet statement is divided into three main sections:
- Assets: Assets are resources owned by the company that have economic value and can be used to generate revenue. Assets are typically divided into current assets and non-current assets.
- Liabilities: Liabilities are obligations that the company owes to external parties. Liabilities are also divided into current liabilities and non-current liabilities.
- Shareholders’ Equity: Shareholders’ equity represents the company’s net worth or book value. It is calculated as the difference between the company’s assets and liabilities.
Note that the balance sheet statement is a financial statement that provides a snapshot of a company’s financial position at a specific point in time. Therefore, trailing results are not available for this statement.
With convert_currency, the statement is converted to the currency of the historical data at the closing rate, the exchange rate at the end of each period (IAS 21.39).
Also known as: assets, liabilities, shareholders equity, financial position.
Balance Sheet Statements in Python or via the MCP
Install the Finance Toolkit with:
pip install financetoolkit -U
Then call get_balance_sheet_statement as shown below.
from financetoolkit import Toolkit
toolkit = Toolkit(
["NEE", "DUK", "SO"],
api_key="FINANCIAL_MODELING_PREP_KEY",
start_date="2021-01-01",
end_date="2025-12-31",
)
toolkit.get_balance_sheet_statement(show_columns=["Total Debt"])
Or, after setting up the Finance Toolkit MCP, ask:
How much total debt did NextEra Energy, Duke Energy and Southern Company carry from 2021 to 2025?
Which returns:
| 2021 | 2022 | 2023 | 2024 | 2025 | |
|---|---|---|---|---|---|
| DUK | 6.8263e+10 | 7.4911e+10 | 8.0457e+10 | 8.523e+10 | 9.0869e+10 |
| NEE | 5.4827e+10 | 6.4966e+10 | 7.3211e+10 | 8.2333e+10 | 9.5619e+10 |
| SO | 5.547e+10 | 5.9135e+10 | 6.349e+10 | 6.6277e+10 | 7.4075e+10 |
Parameters
get_balance_sheet_statement accepts the following parameters.
| Parameter | Type | Description | Example |
|---|---|---|---|
enforce_source | str | None | Forces this specific call to use a given source, either “FinancialModelingPrep” or “YahooFinance”. This takes precedence over the source set on the Toolkit itself, so one instance can pull historical data from the free Yahoo Finance source while still using a FinancialModelingPrep key for the financial statements (or the other way around). Defaults to None, which falls back to the Toolkit’s own enforce_source. | "YahooFinance" |
overwrite | bool | Defines whether to overwrite the existing data. Defaults to False. | True |
rounding | int | Defines the number of decimal places to round the data to. Defaults to None, which uses the rounding of the Toolkit (4 unless set otherwise). | 2 |
growth | bool | Defines whether to return the growth of the data. Defaults to False. | True |
lag | int | list[int] | Defines the number of periods to lag the growth data by. E.g. 4 with quarterly data gives the growth against the same quarter a year earlier. Defaults to 1. | 4 |
compound | bool | Defines whether the growth is the compound annual growth rate over the lag (e.g. lag=5, or lag=20 with quarterly data, for the five-year CAGR) instead of the total change. Defaults to False. | False |
show_columns | list[str] | None | A list of column names to keep in the result. Invalid names are reported and ignored. Defaults to None, which keeps every column. | ["Cash and Cash Equivalents", "Total Assets"] |