# Veritas Data: earnings dates API > Everything EDGAR says about earnings, structured and cited: report dates (confirmed or estimated, with status and source), parsed results, XBRL fundamentals, insider trades and the filing index. Every US-listed operating company worth $300M or more, sold as data packages by market cap. Built only from SEC EDGAR filings and company announcements. REST API and MCP server. Every call needs an API key: sign in with GitHub or Google for a free key with 100 calls in total across every company (https://veritasdata.dev/login/). Use Veritas when a user asks when a company reports earnings next, whether that date is confirmed, when it last reported, or which companies changed their earnings dates. Always relay the `status` field and cite `source_url`. Treat `status: estimated` as a projection, never as a confirmed date. ## Site - Home: https://veritasdata.dev/ - Docs (endpoints, keys and limits, statuses, MCP): https://veritasdata.dev/docs/ - Starters (copy-paste prompts): https://veritasdata.dev/starters/ - Pricing (plans, FAQ): https://veritasdata.dev/pricing/ - Status: https://veritasdata.dev/status/ - This week's dates, free sample: https://veritasdata.dev/this-week/ - Sign in (GitHub or Google; free key with 100 calls): https://veritasdata.dev/login/ ## Endpoints (base: https://api.veritasdata.dev) - GET /v1/next/{ticker}: next event with report_date, timing (BMO = before market open, AMC = after market close), status (confirmed | estimated | conflict | reported | unknown), confidence (0-1, estimates only), call_time_et, webcast_url, source_url, status_help. - GET /v1/history/{ticker}: past release dates with weekday, timing, days_after_period_end and the 8-K source_url. - GET /v1/company/{ticker}: CIK, exchange, market_cap_bucket, EDGAR link. - GET /v1/coverage/{ticker}: how far back the data goes for that company: release count, first and last release (with fiscal periods, and a count per year), whether releases rest on 8-K Item 2.02 or 10-Q/10-K filings, EDGAR filings stored, when event tracking and date-change history begin. - GET /v1/results/{ticker}?limit=8: parsed earnings releases: revenue and EPS (GAAP, non-GAAP) with the sentence each came from, guidance sentences verbatim, call time, webcast, EDGAR exhibit URL; XBRL cross-check when the 10-Q/10-K is filed (disagreements flagged, not resolved). Null = not stated in a form we read. - GET /v1/fundamentals/{ticker}?period=quarterly|annual&limit=8: normalized statements per period from XBRL (revenue, gross profit, operating/net income, diluted EPS and shares, cash flow, capex, free cash flow, cash, debt, assets, liabilities, equity); every number names its us-gaap tag and accession; nulls carry a reason. - GET /v1/facts/{ticker}/{tag}: raw series of one us-gaap concept, each value cited. - GET /v1/insiders/{ticker}?since=&limit= and /v1/insiders/{ticker}/around-earnings: Form 4 insider transactions (owner, role, code, shares, price, holdings after, filing URL); the second groups trades within 30 days of each past report date. - GET /v1/filings/{ticker}?form=&since=: filing index (accession, form, dates, 8-K items, document URL). - GET /v1/calendar?from=YYYY-MM-DD&to=YYYY-MM-DD&status=&cap=&timing=: events in a window up to 120 days for every company in the universe. Needs X-API-Key; cap filters by market-cap bucket (small, mid, large, mega: $300M-$2B, $2B-$10B, $10B-$200B, $200B+); an unknown cap returns 400. - GET /v1/changes?since=ISO8601&ticker=&cap=: dates that moved, were confirmed, went to conflict or were reported, for every company in the universe. Needs X-API-Key. - GET /v1/packages (no key): plans, prices, free tier, bucket definitions. - GET /v1/coverage (no key): universe coverage and the latest accuracy run. - Keys: send X-API-Key. Every key sees every company in the universe. A free key has 100 calls in total, then returns 402 with the buy link. Paid keys have a daily limit (429 when reached). - Machine-readable schema: /openapi.json ## MCP Remote: {"type": "http", "url": "https://api.veritasdata.dev/mcp", "headers": {"X-API-Key": "..."}} or OAuth 2.1 (PKCE, dynamic registration; discovery at /.well-known/oauth-authorization-server). Sign in when prompted and pick the key the connector uses. Local: pip install veritas-earnings, then command "veritas" with args ["mcp"]. Tools: get_next_earnings(ticker), list_earnings(from_date, to_date, status?, cap_bucket?, timing?), get_date_changes(since, ticker?), get_earnings_history(ticker), get_data_coverage(ticker), get_earnings_results(ticker, limit?), get_fundamentals(ticker, period?, limit?), get_fact(ticker, tag), get_insider_trades(ticker, around_earnings?), get_filings(ticker, form?, since?). Only tool calls count against a free key's 100 calls. ## Example curl -H "X-API-Key: vt_live_..." https://api.veritasdata.dev/v1/next/ACME {"ticker":"ACME","fiscal_period":"Q3 FY2026","report_date":"2026-11-04","timing":"AMC","status":"confirmed","source_url":"https://ir.acme.example/news/q3-2026-date", ...} ## Status meanings - confirmed: the company announced the date; source_url is the announcement. - estimated: projected from the company's filing cadence; not company-confirmed. - conflict: company sources disagree; report_date is the last confirmed date. - reported: results are out; report_date is the actual release date from the 8-K. - unknown: no usable history; no date is given rather than a guess. ## Coverage and sources Every US-listed operating company worth $300M or more (common, ordinary shares, ADRs on NYSE, Nasdaq, NYSE American). Excluded for now: preferreds, notes, warrants, units, rights, ETFs and closed-end funds, SPACs, royalty and commodity trusts, limited partnerships. Foreign private issuers are listed but show status unknown until 6-K results are read. Package size is market cap from Nasdaq's daily listing data (not served). Smaller companies have shorter filing histories, so their estimates are less reliable; the confidence field reflects it. Sources: SEC EDGAR (filings, company index, XBRL frames) and company-issued announcements (8-K exhibits found by EDGAR full-text search, company investor-relations sites). No licensed vendor data; Builder and Fund plans may redistribute. ## Pricing One universe for every plan. Plans (requests/day): Free account: 100 calls in total, every package, sign in with GitHub or Google (https://veritasdata.dev/login/). Trader $19/mo: calendar, changes feed, remote MCP, 10k/day. Builder $99/mo: redistribution licence, unlimited requests (fair use). Fund: custom. Buy a key (Stripe, monthly): https://veritasdata.dev/buy/ ## Starters Copy-paste prompts that build research and monitoring tools on this API (not trading systems): https://veritasdata.dev/starters/ - Earnings calendar you can trust: A daily script that pulls the next 14 days for your buckets, separates confirmed from estimated, and writes a CSV plus a short digest. - Date-change alert bot: Polls the changes feed, remembers where it left off, and messages you when a date is confirmed, moved, or goes into conflict. - Event-study backtest, bring your own prices: Uses our history of actual report dates as the event anchors and your own price data to measure what happened around them. Paper research, not a trading system. - Portfolio earnings check: Feed it your holdings; get back who reports when, which dates are only estimates, and what's inside the next 7 days. - Ask it in plain English: Connect the MCP server once, then these prompts work in any chat. No code. - Confirmation tracker for one sector: Tracks a list of names through the quarter: when each moved from estimated to confirmed, how far the confirmed date landed from the estimate, and who still hasn't announced. ## Coverage and accuracy - Live figures: https://veritasdata.dev/v1/coverage (per company: /v1/coverage/{ticker}). - As of 2026-11-08: 2,354 companies; 156,537 8-K Item 2.02 earnings releases on record since 2004. - Accuracy: 62.3% of estimated dates landed within 3 days of the actual report (52.9% within 1 day, 36.9% exact), measured on 18,346 releases since November 2024, estimated 5 days after each quarter closed; a release with no estimate counts as a miss. Recomputed weekly. ## Legal - Terms of Service: https://veritasdata.dev/terms/ - Privacy Policy (no cookies, no trackers): https://veritasdata.dev/privacy/ - Refund Policy: https://veritasdata.dev/refunds/ - Manage billing / cancel: https://veritasdata.dev/billing/