Financial Statements
Retrieve income statements, balance sheets, and cash flow data via the API.
Prerequisites
- An edgar.tools API key with Professional tier access
- A company ticker or CIK number
1. Get an income statement
Retrieve annual income statement data for a company. The response includes revenue, expenses, and net income across reporting periods.
curl -H "Authorization: Bearer etk_your_key_here" \
"https://api.edgar.tools/v1/companies/AAPL/income-statement"response = requests.get(
"https://api.edgar.tools/v1/companies/AAPL/income-statement",
headers={"Authorization": "Bearer etk_your_key_here"},
)
income = response.json()2. Get a balance sheet
Fetch balance sheet data including assets, liabilities, and stockholders' equity for each reporting period.
curl -H "Authorization: Bearer etk_your_key_here" \
"https://api.edgar.tools/v1/companies/AAPL/balance-sheet"response = requests.get(
"https://api.edgar.tools/v1/companies/AAPL/balance-sheet",
headers={"Authorization": "Bearer etk_your_key_here"},
)
balance = response.json()3. Get cash flow data
Access cash flow statements covering operating, investing, and financing activities.
curl -H "Authorization: Bearer etk_your_key_here" \
"https://api.edgar.tools/v1/companies/AAPL/cash-flow"response = requests.get(
"https://api.edgar.tools/v1/companies/AAPL/cash-flow",
headers={"Authorization": "Bearer etk_your_key_here"},
)
cash_flow = response.json()4. Switch to quarterly data
By default, financial endpoints return annual data. Add period_type=quarterly to retrieve quarterly figures.
curl -H "Authorization: Bearer etk_your_key_here" \
"https://api.edgar.tools/v1/companies/AAPL/income-statement?period_type=quarterly"response = requests.get(
"https://api.edgar.tools/v1/companies/AAPL/income-statement",
params={"period_type": "quarterly"},
headers={"Authorization": "Bearer etk_your_key_here"},
)
quarterly = response.json()5. Get trailing twelve months (TTM)
The TTM endpoint aggregates the most recent four quarters, giving an up-to-date annual view without waiting for the next 10-K. Use the statement parameter to fetch a single statement type.
curl -H "Authorization: Bearer etk_your_key_here" \
"https://api.edgar.tools/v1/companies/AAPL/financials/ttm?statement=income_statement"response = requests.get(
"https://api.edgar.tools/v1/companies/AAPL/financials/ttm",
params={"statement": "income_statement"},
headers={"Authorization": "Bearer etk_your_key_here"},
)
ttm = response.json()
for item in ttm["statements"]["income_statement"]["line_items"]:
print(f"{item['label']}: ${item['value']:,.0f}")Flexible identifiers. Financial endpoints accept both ticker symbols (AAPL) and CIK numbers (0000320193) as the company identifier.
To summarize
- Three statement endpoints share the same response structure
- Response includes periods, line-item rows with values, and source filing metadata
- Use
period_type=quarterlyfor quarterly data (annual by default) - TTM rolls up the latest 4 quarters for an up-to-date annual view
- Requires Professional tier access
Related guides
- Companies — search for companies and retrieve profiles
- Material Events — monitor 8-K material events
- Insider Trades — track insider buying and selling activity