⚡ Financial API

SEC Financial Data,
Ready for Your Code

Pull Income Statements, Balance Sheets, and Cash Flow Statements for 3,500+ US-listed companies directly into your Python models — sourced from SEC EDGAR and normalized for instant analysis.

3,500+ US-Listed Stocks
3 Statement Types
10+ Years of History
Free To Get Started

Features

Everything You Need to Build with Financial Data

One endpoint. Three statement types. Normalized line items across every ticker — so your models don't break when one company calls it "Net Sales" and another calls it "Revenue."

📄

Three Statement Types

Pull Income Statements, Balance Sheets, and Cash Flow Statements with a single parameter. Annual and quarterly cadences both supported.

🔄

Normalized Line Items

The simple mode maps company-specific labels to standardized names across all tickers — no more per-ticker string matching in your pipeline.

🏛️

SEC EDGAR Source

All data is sourced directly from official SEC EDGAR filings — the same primary source used by institutional investors and quant funds.

📅

Flexible Date Ranges

Filter results by start and end date to pull exactly the history your model needs, without over-fetching or post-processing on your end.

🐍

Python-Friendly JSON

Responses are clean JSON arrays that load directly into a pandas DataFrame in two lines. No parsing gymnastics required.

🔑

Key + Secret Auth

Simple API key and secret authentication passed as query parameters — easy to integrate into any HTTP client, script, or workflow tool.


API Reference

Documentation

🆕
What's New: The financialstatement parameter now accepts a simple value. It uses YouDomo mapping logic to standardize line item names across all tickers — so AAPL's "Net Sales" and ADBE's "Revenue" both return as "Revenue", making cross-ticker analysis seamless.

🔗 Base URL

https://youdomo-api-live.onrender.com/api/statements

📥 Query Parameters

Parameter Required Description
ticker Required Stock ticker symbol (e.g., AAPL, MSFT, TSLA).
financialstatement Required Statement type. Choose from income, balancesheet, cashflow, or simple (normalized line items).
api_key Required Your unique API key for authentication.
api_secret Required Your API secret for secure access.
start_date Optional Filter results from this date. Format: YYYY-MM-DD.
end_date Optional Filter results up to this date. Format: YYYY-MM-DD.
isannual Optional Set to Y for annual statements. Default: Y.
isquarterly Optional Set to Y for quarterly statements. Default: N.

🧠 Example Request

HTTP
GET https://youdomo-api-live.onrender.com/api/statements
  ?ticker=AAPL
  &financialstatement=income
  &api_key=your_key
  &api_secret=your_secret
  &start_date=2022-01-01
  &end_date=2025-01-01
  &isannual=Y
  &isquarterly=N

🐍 Example Request in Python

Python
import requests
import pandas as pd

# The YouDomo API endpoint
url = "https://youdomo-api-live.onrender.com/api/statements"

# Query parameters
params = {
    "ticker":             "AAPL",
    "financialstatement": "income",
    "api_key":            "your_key_here",
    "api_secret":         "your_secret_here",
    "start_date":         "2022-01-01",
    "end_date":           "2025-01-01",
    "isannual":           "Y",
    "isquarterly":        "N",
}

# Make GET request
response = requests.get(url, params=params)

# Raise error if something went wrong
response.raise_for_status()

# Convert JSON response to DataFrame
data = response.json()
df   = pd.DataFrame(data)
df

💡 Example Response

JSON
[
  {
    "statementpk":        22199928,
    "ticker":             "AAPL",
    "date":               "2024-09-28",
    "datekey":            20240928,
    "shareunits":         "Thousands",
    "units":              "Millions",
    "lineitem":           "basic in dollars per share",
    "value":              6,
    "lineitemorder":      13,
    "financialstatement": "income",
    "isannual":           "Y",
    "isquarterly":        "N",
    "datasource":         "SEC EDGAR",
    "loadtimestamp":      "2025-11-01 22:50:55",
    "filingdate":         "2025-10-31 00:00:00"
  },
  {
    "statementpk":        22199931,
    "ticker":             "AAPL",
    "date":               "2024-09-28",
    "datekey":            20240928,
    "shareunits":         "Thousands",
    "units":              "Millions",
    "lineitem":           "basic in shares",
    "value":              15343783,
    "lineitemorder":      16,
    "financialstatement": "income",
    "isannual":           "Y",
    "isquarterly":        "N",
    "datasource":         "SEC EDGAR",
    "loadtimestamp":      "2025-11-01 22:50:55",
    "filingdate":         "2025-10-31 00:00:00"
  },
  ...
]
🛠️

Support

Found incorrect financial data or have a feature suggestion? Reach out to the YouDomo team at hello@youdomo.com and we'll get back to you.


From API Key to DataFrame in 3 Steps

01

Get Your API Key

Create a free YouDomo account to receive your API key and secret. Both are passed as query parameters — no OAuth flow, no headers to configure.

02

Make a GET Request

Pass your ticker, statement type, date range, and credentials to the endpoint. Use simple mode to get normalized line item names across all tickers.

03

Load into Your Model

The JSON response drops straight into a pandas DataFrame. Annual or quarterly cadence, up to 10+ years of history — ready for any analysis or model you're building.


FAQ

Common Questions About the Financial API

The simple option applies YouDomo's mapping logic to standardize line item names across all companies. For example, Apple reports "Net Sales" while Adobe reports "Revenue." Passing simple returns both as "Revenue," making cross-ticker comparisons and multi-stock models much easier to build.
All data is sourced directly from SEC EDGAR filings — the official primary source used by institutional investors. YouDomo normalizes and enriches the data to enable consistent, comparable analysis across all 3,500+ US-listed stocks.
Yes. Use the isannual and isquarterly parameters to select your cadence. Annual is the default. You can combine date filters with either cadence to retrieve exactly the window of history your model needs.
Yes — free accounts include API access. Higher request limits and access to additional statement types are available on the Pro plan.
No. The YouDomo Financial API is a data and research tool. All data returned is for informational purposes only and does not constitute investment advice or a recommendation to buy or sell any security. Always do your own due diligence.

Start Building with Financial Data Today

Free to start. No credit card required. 3,500+ stocks and 10+ years of history.

Get Your API Key Free → View Pro Features

Other YouDomo Tools