← Back to API Ninjas
GET/v1/earningscalendar

Get earnings results and upcoming dates

Returns earnings reports for one company (`ticker`), one calendar date (`date`), or a date range (`date_start`/`date_end`). At least one of these is required, and `date` cannot be combined with a range. Covers 50,000+ tickers on US and international exchanges with history back to 2000. Results are sorted by date (newest first) and returned 50 per request; use `offset` to page. Past reports only by default; set `show_upcoming=true` to include scheduled future reports. EPS and revenue are in the company's reporting currency. `actual_eps`/`estimated_eps` are on the adjusted (non-GAAP) basis analysts use; `actual_eps_gaap` is GAAP diluted EPS from the SEC 10-Q/10-K (US SEC filers). For upcoming dates filtered by exchange use /upcomingearnings. On this listing the enrichment fields (date_confirmed, report_date_status, sec_8k_url, eps_beat_miss, revenue_beat_miss, surprise streaks/history, year-ago and growth figures, earnings price moves, price_reaction, next_earnings_date, days_to_next_earnings, has_transcript) are returned as an upgrade-notice string rather than data.

API Ninjas·$0.001 per call

Example code

// Using @orth/sdk - The simplest way to call APIs // Install: npm install @orth/sdk import Orthogonal from "@orth/sdk"; const orthogonal = new Orthogonal({ apiKey: process.env.ORTHOGONAL_API_KEY, }); const output = await orthogonal.run({ api: "api-ninjas", path: "/v1/earningscalendar" }); console.log(output);

Query parameters

ticker
string

Company ticker symbol (e.g. MSFT, 7203.T). Returns that company's earnings reports, newest first.

date
string

Single report date in YYYY-MM-DD format (e.g. 2026-07-30). Returns every company reporting on that date. Cannot be combined with date_start or date_end.

date_start
string

Start of a report-date range (YYYY-MM-DD, inclusive). If date_end is omitted, the range ends 7 days after date_start.

date_end
string

End of a report-date range (YYYY-MM-DD, inclusive). Must be on or after date_start. If date_start is omitted, the range starts 7 days before date_end.

show_upcoming
boolean

Include scheduled future reports (dates after today). Without it only past and same-day reports are returned. (Default: False)

offset
number

Number of results to skip, for pagination. Each request returns up to 50 results, so use offset=50, 100, ... to page. (Default: 0)

    Orthogonal - Giving AI agents the tools they need.