Every serious financial product eventually hits the same wall - you need structured, reliable access to SEC filings.
Not PDFs you scrape.
Not fragile HTML parsers.
Not delayed third-party summaries.
You need:
- Direct EDGAR access
- Machine-readable financial statements
- Item-level extraction
- Real-time filing detection
- Earnings press releases the moment they’re filed
The challenge isn’t that the data doesn’t exist. It’s that EDGAR was designed for disclosure, not developers. Filings contain multiple documents, exhibits, XBRL files, and different structures depending on form type.
This is where a proper SEC API becomes essential.
Let’s walk through how to retrieve 10-K, 10-Q, 8-K filings — and how earnings press releases (Exhibit 99.1) can be accessed.
Retrieving Form 10-K via API
Form 10-K is the annual report. It includes audited financial statements, risk factors, business overview, legal proceedings, and management discussion.
From a developer perspective, there are two common needs:
- Discover the filing (metadata)
- Retrieve or extract its contents
The first step is always metadata retrieval. You need the accession number, which uniquely identifies a filing in EDGAR.
You can filter by:
form_type=10-Kticker=AAPLfiling_date_start=2024-01-01filing_date_end=2024-12-31
This returns structured metadata including:
- accession_number
- filing_date
- report_date
- primary_document
- XBRL availability
Once you have the accession number, you can retrieve the actual filing.
To download the raw 10-K document:
Required:
accession_number=0000000000-00-000000file_name=d123456d10k.htm
The file is streamed directly from the SEC archive and can be HTML, XML, PDF, TXT, or exhibit format.
If you don’t want raw HTML and instead need structured content, use the extractor endpoint:
This classifies 10-K filings by Part and Item structure, making it much easier to isolate sections like:
- Item 1A (Risk Factors)
- Item 7 (MD&A)
For financial modeling use cases, the XBRL converter is often the most powerful feature:
With the accession number, you receive financial statements converted into JSON — revenue, assets, liabilities, cash flow, footnotes — ready for direct integration into analytics systems.
Retrieving Form 10-Q via API
Form 10-Q follows a similar structure to 10-K but represents quarterly reporting. It includes unaudited financial statements and updated risk disclosures.
From an API standpoint, the workflow is identical.
You filter:
Retrieve metadata via /v1/filings, then:
- Download the primary document via
/v1/download - Extract structured sections via
/v1/extractor - Convert XBRL to JSON via
/v1/xbrl-converter
Because 10-Q follows Part I and Part II structure, you can extract specific items like:
- Part I, Item 1 (Financial Statements)
- Part II, Item 1A (Risk Factors)
This is particularly useful for automated quarterly comparison systems.
Retrieving Form 8-K via API
Form 8-K is different.
It’s event-driven.
Companies file 8-Ks to report material events such as:
- Earnings announcements
- Acquisitions
- Executive changes
- Material agreements
- Regulation FD disclosures
To retrieve 8-K filings:
What makes 8-K especially useful is that it is structured by Item numbers. For example:
- 2.02 — Results of Operations (earnings)
- 1.01 — Entry into Material Agreement
- 2.01 — Completion of Acquisition
- 7.01 — Regulation FD
You can narrow filings further using:
This allows you to isolate earnings-related 8-K filings.
Can You Filter SEC Filings by Form Type?
Yes — and this is a core feature.
The /v1/filings endpoint supports filtering by:
form_typetickercik- filing date range
- report date range
- item content
- sorting and pagination
Multiple form types can be provided as comma-separated values:
For deeper filtering, including keyword-based searches inside documents, you can use:
With parameters such as:
text_contains=earnings,resultsform_type=8-K- date filters
This is helpful when building event-driven intelligence systems.
Are Filings Delivered as Raw Documents or Structured Data?
Both — and this distinction matters.
If you need the original filing exactly as submitted to the SEC, use:
This supports:
- HTML
- XML (XBRL)
- TXT
- Exhibits (including Exhibit 99.1)
- FilingSummary.xml
Files are retrieved from the EDGAR archive. If you prefer structured classification, use:
For 8-K filings, content is grouped by Item number.
For 10-K and 10-Q filings, content follows their official part and item hierarchy.
If your goal is financial statement normalization, use:
Are Earnings Press Releases Always Accessible Through 8-K?
This is one of the most common developer questions.
In practice, most public companies file earnings press releases under:
Form 8-K — Item 2.02 (Results of Operations and Financial Condition)
The press release itself is typically attached as:
Exhibit 99.1
If the earnings release was filed as part of the 8-K, it can be downloaded.
The workflow looks like this:
First, find relevant 8-K filings:
Retrieve the accession number.
Next, identify the exhibit filename. Exhibit names often look like:
- d123456dexhibit99.htm
- d123456dex99.htm
Then download the exhibit:
Required:
accession_no=0000000000-00-000000file_name=d123456dexhibit99.htm
If the earnings release was included as Exhibit 99.1, it is fully retrievable.
Important limitation:
If a company publishes earnings only on its website and does not attach the press release to the 8-K filing, it will not be available in EDGAR.
However, most large issuers follow the Item 2.02 + Exhibit 99.1 convention.
Real-Time SEC Filing Monitoring
For applications that require low latency — such as earnings monitoring systems — polling APIs may not be enough.
The WebSocket connection:
Delivers:
- A short historical backlog
- Real-time filings
- accession_no
- form type
- CIK
- timestamps
This allows automatic detection of new 8-K earnings filings and immediate retrieval of associated exhibits.
Final Thoughts
Accessing SEC filings is no longer just about downloading documents. To support various use-cases, SEC filings data needs to be:
- reliable
- historically accessible
- machine-readable
- filterable by form type and item
- retrievable at the exhibit level
- streamable in real time
FinFeedAPI’s SEC API provides structured access to EDGAR filings — including 10-K, 10-Q, 8-K, XBRL financial statements, and Exhibit 99.1 earnings press releases — so developers, analysts, and institutions can work with regulatory disclosures as data… not as static documents.
👉 If your organization relies on financial reporting, earnings intelligence, compliance monitoring, or event-driven research, structured SEC data is foundational infrastructure. Explore the FinFeedAPI SEC API and build on filings the way they were meant to be consumed.
👉 Explore the SEC API and grab your FREE API key today.













