Income Statement API
The Income Statement API returns income statement data for any public company listed in the United States, including revenue, gross profit, operating income, net income, earnings per share, and detailed expense breakdowns (cost of revenue, R&D, sales & marketing, G&A, stock-based compensation, and more). All data is sourced from official SEC filings (10-Q, 10-K).
Need the full picture in one call? See the Earnings API. For other statements, see the Balance Sheet API and Cash Flow API.
From 5,707 users
Applications using this API
API Status
API Response Times
Average | P50 | P75 | P90 | P95 |
|---|---|---|---|---|
| 363ms | 396ms | 431ms | 723ms | 1079ms |
Similar APIs
Didn't find what you were looking for? Suggest an improvement
/v1/incomestatement GET
https://api.api-ninjas.com/v1/incomestatement
Returns income statement data for a specific company, period, and year. You can identify the company using either a ticker symbol or CIK (Central Index Key).
Q1, Q2, and Q3 figures are sourced from 10-Q filings. Q4 figures are derived from the 10-K filing by subtracting the Q1, Q2, and Q3 income statements from the 10-K full-year totals.
Parameters
If you do not specify a year or period, the API will return the most recent income statement.
tickeroptionalCompany ticker symbol (e.g.,
ADBE). Eithertickerorcikmust be provided.cikoptionalCompany Central Index Key (e.g.,
796343). Eithertickerorcikmust be provided.periodoptionalFiscal period. Must be one of:
q1,q2,q3,q4, orfy(full year). If set,yearmust also be set.yearoptionalFiscal year. E.g.
2025. Must be a valid year after 2000. For historical data before 2025, you must have a premium subscription. If set,periodmust also be set.
Headers
X-Api-KeyrequiredAPI Key associated with your account.
Response
A JSON object with the following fields or an error if the request is unsuccessful.
company_infoCompany filing information including ticker, CIK, company name, fiscal year, and fiscal quarter.
income_statementIncome statement figures:
total_revenue,cost_of_revenue,gross_profit,operating_income,net_income,earnings_per_share_basic,earnings_per_share_diluted,weighted_average_shares_basic,weighted_average_shares_diluted,research_and_development,sales_and_marketing,general_and_administrative,stock_based_compensation,depreciation_and_amortization,interest_expense, andtax_provision.filing_infoSEC filing metadata including filing type, filing date, and period end date.
Sample Request Live Demo!
Try our APIs in the API playground
Sign up for a free API key to get started — no credit card required.
https://api.api-ninjas.com/v1/incomestatement?ticker=ADBE&year=2025&period=q2Headers
X-Api-KeyLog in or sign up to get your API KeySample Response
Code Examples
1
2
curl -X GET "https://api.api-ninjas.com/v1/incomestatement?ticker=ADBE&year=2025&period=q2" \
-H "X-Api-Key: YOUR_API_KEY"If your programming language is not listed in the Code Example above, you can still make API calls by using a HTTP request library written in your programming language and following the above documentation.
Frequently Asked Questions
Can I use the Income Statement API for commercial purposes?
Yes, but you must have a premium subscription. Commercial use of the Income Statement API is not permitted on the free tier. See our pricing page to choose a plan that fits your needs.How do I get an API key and start using the Income Statement API?
Sign up for a free account to instantly get your API key, then pass it in theX-Api-Keyheader on every request. The documentation above includes ready-to-run examples in cURL, Python, JavaScript, Node.js, and more.What happens if I exceed my quota for the month?
Your API requests will simply be denied once you hit your monthly quota — you will never be charged more than the plan you signed up for. To increase your quota, you can upgrade your plan any time on our pricing page.What happens if a request to the Income Statement API fails?
The API responds with a standard HTTP status code and a JSON error message describing the problem. See our error codes reference for the full list of codes and how to resolve each one, or contact support if you need help.How do I look up a specific company, period, and year with the Income Statement API?
Identify the company with either aticker(e.g.ADBE) or acik, and optionally passyeartogether withperiod(one ofq1,q2,q3,q4, orfyfor full year). If you omityearandperiodthe API returns the most recent income statement; note that historical data before the current year requires a premium subscription.What financial fields does the response include?
Each response contains acompany_infoobject, afiling_infoobject with SEC filing metadata, and anincome_statementobject with figures such astotal_revenue,cost_of_revenue,gross_profit,operating_income,net_income,earnings_per_share_basic,earnings_per_share_diluted,research_and_development,sales_and_marketing,stock_based_compensation, andtax_provision. For full statement coverage you can pair this with the Balance Sheet API and Cash Flow API.Where does the income statement data come from, and how are quarterly figures derived?
All data is sourced from official SEC filings (10-Q and 10-K) for public companies listed in the United States. Q1, Q2, and Q3 figures come directly from 10-Q filings, while Q4 figures are derived by subtracting the Q1, Q2, and Q3 income statements from the 10-K full-year totals; related filing data is also available via the SEC API.What are some use cases for the Income Statement API?
It is useful for building stock screeners, financial dashboards, valuation models, and earnings analysis tools that need revenue, profitability, and EPS data for US public companies. Combine it with the Earnings API for reported results and estimates, or browse all available APIs at API Ninjas.