GET/companies/{ticker}/balance-sheet

Pro: API access to this route needs a Pro plan (a free key gets 403; on Free, use /data/metrics). Get balance sheet data including assets, liabilities, and stockholders' equity. Supports quarterly, annual, and TTM data.

Example Request

https://api.metricduck.com/api/v1/companies/AAPL/balance-sheet?period=quarterly&years=1

Path Parameters

ParameterTypeDescription
tickerrequired
stringStock ticker symbol (e.g., AAPL, MSFT, GOOGL)

Query Parameters

ParameterTypeDescription
period
stringReporting period: "quarterly", "annual", or "ttm" (trailing twelve months)
years
integerYears of history to return (1–10)
vantage_date
stringAs-of date (YYYY-MM-DD): returns only periods filed on or before it and cites the filing of that era. Values are the latest filed, so a later restatement or recast is served; revised_after_vantage flags only a later amendment of the period's own filing. Omit for the latest.

Response

Returns company info and an array of balance sheet periods. All monetary values are in USD.

Data Fields

FieldTypeDescription
period_end
string
End date of the reporting period (YYYY-MM-DD)
period_type
string
Period type: "quarterly" or "annual"
cash_and_equivalents
numbernullable
Cash and cash equivalents
short_term_investments
numbernullable
Short-term marketable securities
accounts_receivable
numbernullable
Accounts receivable, net
inventory
numbernullable
Inventory
total_current_assets
numbernullable
Total current assets
property_plant_equipment
numbernullable
Property, plant and equipment, net
goodwill
numbernullable
Goodwill
intangible_assets
numbernullable
Intangible assets, net
total_assets
numbernullable
Total assets
accounts_payable
numbernullable
Accounts payable
short_term_debt
numbernullable
Short-term debt and current portion of long-term debt
total_current_liabilities
numbernullable
Total current liabilities
long_term_debt
numbernullable
Long-term debt
total_liabilities
numbernullable
Total liabilities
common_stock
numbernullable
Common stock
retained_earnings
numbernullable
Retained earnings
total_equity
numbernullable
Total stockholders' equity

Example Response

{
  "company_name": "Apple Inc.",
  "ticker": "AAPL",
  "cik": "0000320193",
  "data": [
    {
      "period_end": "2024-09-30",
      "period_type": "quarterly",
      "cash_and_equivalents": 29943000000,
      "short_term_investments": 35228000000,
      "accounts_receivable": 33410000000,
      "inventory": 7286000000,
      "total_current_assets": 152987000000,
      "property_plant_equipment": 45680000000,
      "goodwill": 0,
      "intangible_assets": 0,
      "total_assets": 364980000000,
      "accounts_payable": 68960000000,
      "short_term_debt": 10912000000,
      "total_current_liabilities": 176392000000,
      "long_term_debt": 85750000000,
      "total_liabilities": 308030000000,
      "common_stock": 83276000000,
      "retained_earnings": -19154000000,
      "total_equity": 56950000000
    }
  ],
  "count": 1,
  "has_more": true
}

Code Examples

Python

import requests

API_KEY = "your_api_key_here"
BASE_URL = "https://api.metricduck.com/api/v1"

# Get the last year of quarterly balance sheets
response = requests.get(
    f"{BASE_URL}/companies/AAPL/balance-sheet",
    headers={"X-API-Key": API_KEY},
    params={"period": "quarterly", "years": 1}
)

data = response.json()
print(f"Company: {data['company_name']}")

for period in data['data']:
    assets = period['total_assets']
    equity = period['total_equity']
    print(f"{period['period_end']}: Assets ${assets:,.0f}, Equity ${equity:,.0f}")

JavaScript

const API_KEY = 'your_api_key_here';
const BASE_URL = 'https://api.metricduck.com/api/v1';

// Get the last year of quarterly balance sheets
const response = await fetch(
  `${BASE_URL}/companies/AAPL/balance-sheet?` +
  new URLSearchParams({ period: 'quarterly', years: '1' }),
  {
    headers: {
      'X-API-Key': API_KEY
    }
  }
);

const data = await response.json();
console.log(`Company: ${data.company_name}`);

data.data.forEach(period => {
  const assets = period.total_assets?.toLocaleString() ?? 'N/A';
  const equity = period.total_equity?.toLocaleString() ?? 'N/A';
  console.log(`${period.period_end}: Assets $${assets}, Equity $${equity}`);
});

Notes

  • - All monetary values are in USD (not scaled)
  • - Balance sheet data is point-in-time (as of period_end date)
  • - Some fields may be null if not reported by the company
  • - Data is sourced directly from SEC XBRL filings