Get started
SEC EDGAR

SEC filings API,
indexed by company and form.

The EDGAR filings of U.S.-listed issuers as structured JSON: form type, accession number, filing date, acceptance time, period of report and the filing an amendment replaces. Filter by form and date, then take the accession number to SEC.gov or to OHLC's XBRL facts.

Filter by form type

forms=10-K,10-Q,8-K takes exact EDGAR form types, including amendments such as 8-K/A and 10-K/A.

Two date axes

from and to bound the filing date; period_from and period_to bound the period of report, so you can ask for the 10-Q that covers a given quarter.

Amendment links

amendment_of holds the accession number of the filing an amendment replaces, and is null when that link is not established.

Stable listing identity

Rows carry instrument_id, the symbol at the time and the exchange MIC, so ticker changes don't break your joins.

What the SEC filings API returns

The index is read from SEC EDGAR's company submissions data for issuers with a U.S. listing. Each row is one filing, tied to the listing you asked for:

FieldMeaning
accession_numberEDGAR's unique identifier for the submission, such as 0000320193-26-000020
form_typeThe EDGAR form type as filed: 10-K, 10-Q, 8-K, 8-K/A and so on
filed_onFiling date
accepted_atEDGAR acceptance timestamp in UTC; null when not supplied
period_endPeriod of report; null when the form has none
amendment_ofAccession number of the filing this one amends, when known
instrument_id, symbol, exchange_micThe listing, with the ticker it had at the time

security_id repeats instrument_id and is being retired in its favor. Batch up to 100 symbols in one request; unresolved symbols are reported in meta.errors instead of failing the whole batch.

Common SEC filing queries

Query patternsText
# Latest annual report
GET /v1/filings?symbols=XNAS:MSFT&forms=10-K&order=desc&limit=1

# Every 8-K a company filed in a quarter
GET /v1/filings?symbols=XNYS:JNJ&forms=8-K,8-K/A&from=2026-07-01&to=2026-09-30

# The 10-Q whose period of report falls in June 2026
GET /v1/filings?symbols=XNAS:AAPL&forms=10-Q&period_from=2026-06-01&period_to=2026-06-30

Linking filings to financial data

The accession number is the join key. As-reported facts in /v1/financials/facts carry the accession number of the filing they came from, so you can go from a 10-Q row to the XBRL values tagged in it, and from any fact back to its filing. To read the document itself, open it on SEC.gov by the same accession number. Normalized statements live in financial statements.

Filing text

/v1/filings/{filing_id}/sections returns the narrative text of 10-K and 8-K filings, amendments included: Business, Risk Factors and MD&A from a 10-K, and each item of an 8-K, such as 2.02 Results of Operations. Sections arrive the morning after the filing date and cover about two years of filings. Other forms are indexed but not parsed. /v1/filings/{filing_id}/exhibits lists each exhibit of a filing as its SEC EDGAR index names it, every indexed form included: the exhibit number (99.1, 10.1, 31.1), the filer's description and a link to the document on sec.gov, within about an hour of the filing being indexed and back about two years. Insider trades from Form 4 disclosures are structured separately in insider transactions.

Use cases

  • Filing alerts: poll for new 8-K rows on a watchlist and notify when a company reports a material event.
  • Earnings research: find the 10-Q or 10-K behind a quarter, then pull its XBRL facts by accession number.
  • Audit trails that cite the exact filing a figure came from.
  • Tracking amendments: an 8-K/A or 10-K/A row tells you an earlier filing was corrected.

Because each row keeps the ticker the listing had at the time, a filing from before a rename still resolves to the right company. Query by instrument_ids to follow a listing across ticker changes, or by symbols with symbol_at to ask what a ticker meant on a past date.

Point in time and history depth

as_of limits results to filings OHLC had recorded by the end of that UTC day. Recording started when OHLC indexed each filing, so an as_of earlier than that returns no rows rather than a reconstructed index. Depth varies by issuer: on October 3, 2026, Apple's index began with its filings from October 2024. Plan history limits also apply, at five years on Free and Developer and 15 on Pro.

Plans and credits

The filings index is included on every plan, Free through Scale; Free covers its seven tickers and Developer ($49/month) every U.S.-listed company. A request costs 50 credits regardless of how many symbols it carries, up to the 100-symbol batch limit. Use Developer or above for personal research and Commercial to show filings to your own users.

Apple's most recent 10-Q and 8-K

RequestcURL
curl 'https://api.ohlc.io/v1/filings?symbols=XNAS:AAPL&forms=10-Q,8-K&order=desc&limit=2' \
  -H "Authorization: Bearer $OHLC_API_KEY"
Response · Illustrative sampleJSON
{
  "data": [
    {
      "security_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
      "instrument_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
      "symbol": "XNAS:AAPL",
      "exchange_mic": "XNAS",
      "accession_number": "0000320193-26-000020",
      "form_type": "10-Q",
      "filed_on": "2026-07-31",
      "accepted_at": "2026-07-31T14:01:02Z",
      "period_end": "2026-06-27",
      "amendment_of": null
    },
    {
      "security_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
      "instrument_id": "01M35H2KE2ZJHXFY5C3E7FPC66",
      "symbol": "XNAS:AAPL",
      "exchange_mic": "XNAS",
      "accession_number": "0000320193-26-000018",
      "form_type": "8-K",
      "filed_on": "2026-07-30",
      "accepted_at": "2026-07-30T20:30:28Z",
      "period_end": "2026-07-30",
      "amendment_of": null
    }
  ],
  "meta": {
    "timezone": "UTC",
    "as_of": "2026-10-03T15:04:21Z",
    "next_cursor": "AX5v3nCRXYoT..."
  }
}

Prices delayed 15 minutes · Illustrative sample data

Questions, answered.

Is there a free SEC filings API?

SEC EDGAR itself is free and public. OHLC adds ticker resolution, stable listing IDs, batching, cursor pagination and a join to prices and fundamentals under one key. The Free plan covers AAPL, NVDA, JNJ, PEP, MSFT, SPY and QQQ; Developer covers every U.S.-listed company.

How do I get a company's latest 10-K with an API?

Call GET /v1/filings?symbols=XNAS:AAPL&forms=10-K&order=desc&limit=1. The row gives the accession number, filing date and period of report.

Does the API return filing text or exhibits?

Yes, for most filings. /v1/filings/{filing_id}/sections returns the narrative sections of 10-K and 8-K filings, and /v1/filings/{filing_id}/exhibits lists the exhibits of every indexed filing with links to the documents on sec.gov. The XBRL facts come through /v1/financials/facts.

What is an SEC accession number?

It is EDGAR's unique ID for a submission, in the form filer ID, two-digit year and sequence: 0000320193-26-000020. It identifies the same filing on SEC.gov and in OHLC.

Can I find filings by reporting period instead of filing date?

Yes. period_from and period_to filter on the period of report, independently of from and to, which filter on the filing date.

A little JSON.
A lot of possibility.

Explore the API