NewConnect Claude, Gemini, ChatGPT, and other AI agents to API Ninjas via our MCP server

Earnings Calendar API

The Earnings Calendar API provides access to earnings results and upcoming earning dates for all major companies.

Available endpoints:

(4.7)

From 8,223 users

600+

Applications using this API

API Status

Online - All Systems Operational

API Response Times

Average
P50
P75
P90
P95
380ms422ms479ms685ms1184ms

Didn't find what you were looking for? Suggest an improvement


/v1/earningscalendar GET

https://api.api-ninjas.com/v1/earningscalendar

Returns a list of past earnings results and upcoming earnings dates. You can query by ticker symbol to get earnings for a specific company, by a single date, or by a date range. Up to 50 earnings results are returned per request.

Parameters

At least one of ticker, date, date_start, or date_end must be provided. date cannot be combined with date_start or date_end.

  • ticker  optional

    Company ticker symbol (e.g., MSFT). If provided, returns earnings data for that specific company.

  • date  optional

    Date in YYYY-MM-DD format (e.g., 2024-01-15). If provided, returns all earnings data for that specific date.

  • date_start  optional

    Start date of a range in YYYY-MM-DD format (e.g., 2024-01-15). Inclusive. If only date_start is provided, date_end defaults to 7 days later. Cannot be combined with date.

  • date_end  optional

    End date of a range in YYYY-MM-DD format (e.g., 2024-01-22). Inclusive. Must be on or after date_start. If only date_end is provided, date_start defaults to 7 days earlier. Cannot be combined with date.

  • show_upcoming  optional premium only

    Whether to show upcoming earnings dates. Must be either true or false. If unset, the default value is false.

  • offset  optional

    Number of results to skip for pagination. Must be a non-negative integer. Each request returns up to 50 results; use offset to page through larger result sets (e.g. offset=50 for the next 50 results).

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of objects, each containing the following fields, or an error if the request is unsuccessful.

  • date

    The date of the earnings.

  • ticker

    The ticker symbol of the company.

  • fiscal_year

    The company's fiscal year for this earnings report.

  • fiscal_quarter

    The company's fiscal quarter (1-4) for this earnings report.

  • earnings_timing  premium only

    Timing of the earnings call. Possible values are:

    • before_market: Earnings call occurs before the market opens.

    • during_market: Earnings call occurs during regular market hours.

    • after_market: Earnings call occurs after the market closes.

  • earnings_call_timestamp  premium only

    Unix timestamp of when the earnings call occurred or is scheduled to occur.

  • actual_revenue

    The actual revenue in USD.

  • estimated_revenue  premium only

    The estimated revenue in USD.

  • revenue_difference  premium only

    The difference between actual and estimated revenue (actual_revenue - estimated_revenue), in USD.

  • revenue_difference_pct  premium only

    The revenue difference as a percentage of the estimate: (actual_revenue - estimated_revenue) / |estimated_revenue| * 100. Null when estimated_revenue is 0.

  • actual_eps

    The actual earnings per share in USD.

  • estimated_eps  premium only

    The estimated earnings per share in USD.

  • eps_difference  premium only

    The difference between actual and estimated EPS (actual_eps - estimated_eps), in USD.

  • eps_difference_pct  premium only

    The EPS difference as a percentage of the estimate: (actual_eps - estimated_eps) / |estimated_eps| * 100. Null when estimated_eps is 0.

Note for free tier users: Premium-only fields are still included in the response, but their values are replaced with a message indicating the field requires a premium subscription. Upgrade at /pricing to unlock real values.

Sample Request Live Demo!

ticker
date
date_start
date_end
show_upcoming
offset

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/earningscalendar?ticker=MSFT

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON
[
    {
      date:"2024-07-30",
      ticker:"MSFT",
      fiscal_year:2024,
      fiscal_quarter:4,
      earnings_timing:"after_market",
      earnings_call_timestamp:1722362400,
      actual_revenue:64727000000,
      estimated_revenue:64382224966,
      revenue_difference:344775034,
      revenue_difference_pct:0.5355,
      actual_eps:2.95,
      estimated_eps:2.93,
      eps_difference:0.02,
      eps_difference_pct:0.6826
    },
    {
      date:"2024-04-25",
      ticker:"MSFT",
      fiscal_year:2024,
      fiscal_quarter:3,
      earnings_timing:"after_market",
      earnings_call_timestamp:1714060800,
      actual_revenue:61858000000,
      estimated_revenue:60861823613,
      revenue_difference:996176387,
      revenue_difference_pct:1.6367,
      actual_eps:2.94,
      estimated_eps:2.82,
      eps_difference:0.12,
      eps_difference_pct:4.2553
    },
    {
      date:"2024-01-30",
      ticker:"MSFT",
      fiscal_year:2024,
      fiscal_quarter:2,
      earnings_timing:"after_market",
      earnings_call_timestamp:1706637600,
      actual_revenue:62020000000,
      estimated_revenue:56239300000,
      revenue_difference:5780700000,
      revenue_difference_pct:10.2787,
      actual_eps:2.93,
      estimated_eps:2.78,
      eps_difference:0.15,
      eps_difference_pct:5.3957
    }
]

Code Examples

1 2 curl -X GET "https://api.api-ninjas.com/v1/earningscalendar?date=2024-01-15" \ -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.


/v1/earningscalendarlist GETPremium Only

https://api.api-ninjas.com/v1/earningscalendarlist

Returns a list of all available companies in the earnings calendar. Use it to find tickers for the /v1/earningscalendar endpoint.

Parameters

This endpoint does not require any parameters.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of objects, each containing the following fields, or an error if the request is unsuccessful.

  • ticker

    The company ticker symbol.

  • company

    The company name.

Sample Request Live Demo!

This endpoint has no parameters. Click Try it to fetch the list of all available companies.

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/earningscalendarlist

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON
[
    {
      ticker:"MSFT",
      company:"Microsoft Corporation"
    },
    {
      ticker:"AAPL",
      company:"Apple Inc."
    },
    {
      ticker:"GOOG",
      company:"Alphabet Inc."
    },
    {
      ticker:"AMZN",
      company:"Amazon.com Inc."
    },
    {
      ticker:"TSLA",
      company:"Tesla Inc."
    },
    "..."
]

/v1/upcomingearnings GETPremium Only

https://api.api-ninjas.com/v1/upcomingearnings

Returns a list of upcoming earnings dates with filtering capabilities. You can filter by date range, single date, exchange, or ticker symbol. Results are limited to dates from today onwards.

Parameters

All parameters are optional. If no parameters are provided, returns upcoming earnings from today onwards (up to 100 results).

  • start_date  optional

    Start date in YYYY-MM-DD format (e.g., 2024-01-15). Must be today or later. Defaults to today if not provided.

  • end_date  optional

    End date in YYYY-MM-DD format (e.g., 2024-12-31). Must be after start_date. Defaults to 10 years from today if not provided.

  • date  optional

    Single date in YYYY-MM-DD format (e.g., 2024-01-15). If provided, overrides start_date and end_date to filter by this exact date.

  • exchange  optional

    Exchange code to filter by (e.g., NASDAQ, NYSE, HKSE, LSE, TSX). Returns only earnings from companies listed on the specified exchange.

  • ticker  optional

    Ticker symbol to filter by (e.g., AAPL, 0700.HK). Returns only earnings for that specific company.

  • limit  optional

    Maximum number of results to return. Must be between 1 and 100 (inclusive). Default is 100.

  • offset  optional

    Number of results to skip for pagination. Must be a non-negative integer. Use in combination with limit to paginate through results.

Headers

  • X-Api-Key  required

    API Key associated with your account.

Response

A JSON array of objects, each containing the following fields, or an error if the request is unsuccessful.

  • ticker

    The ticker symbol of the company.

  • date

    The date of the upcoming earnings (YYYY-MM-DD format).

  • eps_estimated

    The estimated earnings per share in USD (may be null).

  • revenue_estimated

    The estimated revenue in USD (may be null).

  • exchange

    The exchange code where the company is listed (e.g., NASDAQ, NYSE, HKSE).

  • earnings_timing

    Timing of the earnings call. Omitted when the company's earnings timing is not yet known. Possible values are:

    • before_market: Earnings call occurs before the market opens.

    • during_market: Earnings call occurs during regular market hours.

    • after_market: Earnings call occurs after the market closes.

Sample Request Live Demo!

start_date
end_date
date
exchange
ticker
limit
offset

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/upcomingearnings?exchange=NASDAQ

Headers

X-Api-KeyLog in or sign up to get your API Key

Sample Response

JSON
[
    {
      ticker:"ADSE",
      date:"2026-05-15",
      eps_estimated:-0.0235,
      revenue_estimated:123323600,
      exchange:"NASDAQ"
    },
    {
      ticker:"ALLR",
      date:"2026-05-15",
      eps_estimated:-0.22,
      revenue_estimated:320000,
      exchange:"NASDAQ"
    },
    {
      ticker:"AREC",
      date:"2026-05-15",
      eps_estimated:-0.095,
      revenue_estimated:1000000,
      exchange:"NASDAQ"
    },
    "..."
]

Frequently Asked Questions

  • Yes, but you must have a premium subscription. Commercial use of the Earnings Calendar API is not permitted on the free tier. See our pricing page to choose a plan that fits your needs.
  • Sign up for a free account to instantly get your API key, then pass it in the X-Api-Key header on every request. The documentation above includes ready-to-run examples in cURL, Python, JavaScript, Node.js, and more.
  • 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.
  • 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.
  • This API offers /v1/earningscalendar for past earnings results and upcoming dates (queryable by ticker, date, or a date_start/date_end range), /v1/earningscalendarlist to retrieve every available company's ticker and company name, and /v1/upcomingearnings for upcoming dates filterable by date range, exchange, or ticker. The latter two endpoints are premium only.
  • Pass the ticker parameter (e.g. MSFT) to get that company's earnings; you must supply at least one of ticker, date, date_start, or date_end, and date cannot be combined with a range. Each request returns up to 50 results, so use offset to page through larger sets, and see the related Earnings API for company financials.
  • Each result returns the date, ticker, fiscal_year, fiscal_quarter, actual_revenue, and actual_eps, plus premium-only fields such as estimated_revenue, estimated_eps, revenue_difference_pct, eps_difference_pct, earnings_timing, and earnings_call_timestamp. Premium fields are still present for free-tier users but their values are replaced with an upgrade message; unlock real values at pricing.
  • Use the premium /v1/upcomingearnings endpoint with the exchange parameter (e.g. NASDAQ, NYSE, HKSE, LSE, or TSX), optionally narrowing by start_date, end_date, date, or ticker, with limit up to 100 results. Responses include ticker, date, eps_estimated, revenue_estimated, and exchange; to confirm valid ticker symbols see the Ticker API.