SEC EDGAR API

The SEC EDGAR API turns the US securities regulator's filing system into typed rows. It runs in two modes from the same endpoint: pass a query to full-text search every filing ever submitted — 10-K, 8-K, S-1, the lot — or pass a ticker or cik to pull one company's recent filings back, each with the document URL already assembled.

EDGAR is free and public, so this is not about getting past a paywall. It is about the ritual around it: a per-second request cap tied to a descriptive User-Agent, the CIK zero-padding that trips up every first integration, and pagination — all handled, so a row arrives as company, form, filing date, description and a link rather than as raw JSON you still have to shape. Every request is fetched over our TLS tier through a rotating residential exit, so pulling a few thousand filings does not get your own IP throttled. If you also track on-chain capital, the DeFiLlama API is the finance reader next door.

$0.0005 per delivered filing, up to 100 filings per run. Nothing delivered means nothing charged.

How the SEC EDGAR API works

You choose a mode and post the input. There is no browser in the path — EDGAR serves JSON, so the run is a plain HTTP fetch parsed into a flat table.

Runs of 30 filings or fewer return inline; larger pulls up to the 100-filing ceiling are queued and delivered when complete.

Inputs

Everything is optional but you take one of two paths: a query for full-text search, or a ticker/cik for a single company; forms narrows either to one filing type and max_results caps the run at up to 100 filings.

What one filing looks like

Each filing is one row: company, cik, form, filed_date and a direct url, plus report_date and is_xbrl in company mode or file_type and description in search mode.

What the SEC EDGAR API costs

$0.0005 per delivered filing ($0.50 per 1,000). Nothing delivered means nothing charged, and the $2 monthly free credit covers roughly 4,000 filings here. Volume tiers take up to 30% off.

$0.0005 per delivered filing — 50 cents per 1,000. Indexing a company's entire 8-K history or sweeping a keyword across a quarter of filings costs cents, and there is no subscription and no EDGAR-specific credential to buy.

A filing that cannot be resolved — a bad CIK, a ticker with no filings — is never billed, so an imperfect ticker list costs you coverage, not money.

vs the EDGAR API directly

EDGAR's own endpoints are free and well-documented, and for a handful of lookups you should just call them. The friction shows up at volume and on day one. The rate limit is enforced against a User-Agent that must name you, and it is easy to get soft-blocked by omitting it; the submissions endpoint wants a ten-digit zero-padded CIK while everyone stores tickers; full-text search and submissions are two different response shapes you have to normalise yourself.

This collapses all of that into one call with one row shape across both modes, fetched through rotating exits so a bulk pull is not a single IP hammering the regulator. You trade a free-but-fiddly integration for a per-row bill and a schema that does not change under you.

vs building your own EDGAR client

A self-built EDGAR client is a weekend to write and a long tail to maintain: back off correctly against the per-second cap, keep a ticker-to-CIK map current, reconcile the two response formats, and retry the timeouts. None of it is hard; all of it is yours forever.

Here the maintenance is on our side and the invoice only moves when rows arrive. If what you actually want is the raw network to run your own fetcher on, our residential proxies are the exits underneath this.

What people build with it

Track a company's filings

Pass a ticker in company mode on a schedule and diff the result: a new 8-K on a name you follow is often the event you were waiting for, arriving with its document link ready to open.

Keyword surveillance across filings

Full-text search a phrase — a risk factor, a product name, a competitor — filtered to 10-K forms, and watch which filers start using it quarter over quarter.

Build a filings index

Sweep the forms you care about into your own database keyed by accession number and CIK, then fetch the document bodies you flag on your own terms.

Limits and honesty

One run returns up to 100 filings, and independent runs parallelise up to your plan's rate limit rather than queueing behind each other. The collector indexes filings and hands you the document url; it does not parse the filing body or extract XBRL financials — that is a deliberate line, because filing bodies are large and what most pipelines need first is the index.

EDGAR data is public-domain US government data, which makes this one of the cleaner sources to collect, but how you redistribute or characterise the filings is still your responsibility. This is not legal or financial advice.

FAQ

Is the SEC EDGAR API free?

EDGAR itself is free and public. Here there is a free monthly allowance of $2 of usage with no card — about 4,000 filings at $0.0005 each — after which it is pay-as-you-go with no subscription.

Do I need an SEC EDGAR API key or a User-Agent?

You authenticate with your QuantumProxies key and nothing else. EDGAR's requirement for a descriptive User-Agent and its per-second rate limit are handled on our side, so there is no header to set and no account to register with the SEC.

How much does it cost?

$0.0005 per delivered filing, 50 cents per 1,000, with no monthly fee. Filings that fail to resolve are not billed, and GET /v1/scraper/collectors returns the exact price your key pays after any volume discount.

Can I use it from Python?

Yes. It is a plain HTTP endpoint that takes JSON and returns JSON, so any language works; from Python you POST the query or ticker and read back an array of typed filing rows — no SDK and no CIK zero-padding of your own.

Related scrapers