Returns Form 8-K filings — the SEC's 'current report' form, filed within 4 business days of any material event at a publicly-traded company
Returns Form 8-K filings — the SEC's 'current report' form, filed within 4 business days of any material event at a publicly-traded company. Each record is one filing, with item_codes declaring WHAT kind of event(s) it covers. Use this when the user asks about: recent CEO/CFO departures or appointments, M&A announcements, earnings releases, big contract wins, restructurings, going-concern warnings, exec compensation changes, or any 'what just happened at this company' question. Item codes (most-used; many more exist): 1.01 Entry into a Material Definitive Agreement 1.02 Termination of a Material Definitive Agreement 2.01 Completion of Acquisition or Disposition of Assets 2.02 Results of Operations (earnings releases live here) 2.03 Creation of a Material Direct Financial Obligation 3.01 Notice of Delisting / Failure to Satisfy Listing Rule 3.02 Unregistered Sales of Equity Securities 4.01 Changes in Registrant's Certifying Accountant 5.02 Departure / Election / Appointment of Officers + Directors 5.07 Submission of Matters to a Vote of Security Holders 7.01 Regulation FD Disclosure 8.01 Other Events (catch-all) 9.01 Financial Statements and Exhibits — NOTE: nearly every 8-K ticks this 'paperwork box.' Searching JUST for 9.01 returns the firehose; combine it with another item_code to focus. item_codes filter is OR-semantic: pass an array, match any filing containing AT LEAST ONE of those codes. Capped at 30 codes per query (Firestore array-contains-any limit). Examples: ['5.02'] for exec changes; ['1.01','2.01'] for any deal activity (LOI or close); ['2.02'] for earnings. Amendments (8-K/A) get their own row with is_amendment: true. The original 8-K stays in place. v1 does NOT populate original_accession_number; agents can find candidates by matching (ticker, period_of_report) across rows. Filter is_amendment: false for clean original-only views. v1 does not extract the prose body — primary_document_url points agents at the source HTML for direct fetch. The structured items are what's queryable here.
Request
- Base URL: https://api.keyvex.com
- URL: https://api.keyvex.com/v1/material-events
- Auth: API key in header x-api-key
Query parameters
Stock symbol filter, e.g. 'AAPL'. Case-insensitive.
SEC CIK number (10-digit, padded with leading zeros). Alternative to ticker.
Array of item codes to filter on (OR semantics). E.g., ['5.02'] for exec changes, ['1.01','2.01'] for any deal activity. Max 30 codes per query. (comma-separated)
Filter to only original 8-Ks (false) or only amendments / 8-K/A filings (true). Omit to include both.
ISO date (YYYY-MM-DD). Only records on or after this date, using sort_by as the date field.
ISO date (YYYY-MM-DD). Only records on or before this date.
Field used for ordering and for since/until filters. filing_date = when filed with SEC; period_of_report = when the underlying event occurred. Default: filing_date. NOTE: a small number of 8-Ks (Reg-FD-only filings, item-7.01 disclosures) lack period_of_report at the SEC source — those rows fall back to filing_date ordering automatically, so sort_by='period_of_report' won't bury them.
Default: desc (most recent first).
Maximum records to return. Default 50, max 500.
Response
JSON envelope: { results: [...], count, has_more }.
Changes
No recorded changes to this operation across all 1 revision of this API.