Section Extractor API: any item of a 10-K, 10-Q or 8-K as clean text
Extract any item of a 10-K, 10-Q or 8-K, such as risk factors or MD&A, as clean text or minimal HTML with one call.
curl -H "Authorization: Bearer $SECFEED_KEY" \ "https://secfeedapi.com/v1/extractor?url=https://www.sec.gov/Archives/edgar/data/1045810/000104581026000021/0001045810-26-000021-index.htm&item=1C"
import os, requests
r = requests.get(
"https://secfeedapi.com/v1/extractor",
params={'url': 'https://www.sec.gov/Archives/edgar/data/1045810/000104581026000021/0001045810-26-000021-index.htm', 'item': '1C'},
headers={"Authorization": f"Bearer {os.environ['SECFEED_KEY']}"},
)
print(r.json())Overview
A 10-K is one long HTML document, and the part you want is usually one item: 1A risk factors, 7 MD&A, 1C cybersecurity. The Section Extractor finds the item and returns just that section, as plain text or minimal HTML.
Tables of contents repeat every heading, so the extractor keeps the occurrence that starts the longest section, which is the real one. Item names follow the common convention: 10-K items 1 to 16, 10-Q items like part1item2 and part2item1a, and 8-K items like 2-2 or 5-2.
What you get
Built for developers who would rather not parse EDGAR.
Every standard item of the three most read report types.
type=text for NLP and LLMs, type=html to keep basic structure.
Returns the real section, not the TOC entry with the same heading.
Pass either the filing index page or the main document URL.
Endpoints
Authenticate with Authorization: Bearer YOUR_KEY. Responses are JSON.
One item of a 10-K (1, 1A, 7...), 10-Q (part1item2, part2item1a...) or 8-K (2-2, 5-2...) as text or html.
Parameters: url, item, type=text|html
Use cases
- Feed risk factors or MD&A to an LLM for summaries
- Diff risk factor language year over year
- Build a corpus of cybersecurity disclosures (Item 1C)
- Extract the 8-K item text for event classification
Datasets behind this API
The SEC forms this API reads, with live filing counts.
Every Form 10-K annual report filed on EDGAR since 1993, searchable by company, date and text, with sections and XBRL financials as JSON.
10-QQuarterly reportsEvery Form 10-Q quarterly report on EDGAR since 1993: unaudited financials, MD&A and risk factor updates, searchable and parsed as JSON.
8-KCurrent reportsEvery Form 8-K current report since 1993, classified by item: earnings, acquisitions, auditor changes, executive departures, cyber incidents and more.
Tutorials
FAQ
Which item names can I request?
10-K: 1, 1A, 1B, 1C, 2, 3, 4, 5, 6, 7, 7A, 8, 9, 9A, 9B, 9C, 10 to 16. 10-Q: part1item1 to part1item4, part2item1, part2item1a, part2item2 to part2item6. 8-K: 1-1, 2-2, 5-2 and so on.
What does the response look like?
The section's text (or HTML) for the item you asked for.
Try the Filing Section Extractor free
500 API calls a month on the free plan. No sales call.