# SEC EDGAR API — $0.0005 per filing

> SEC EDGAR API: SEC filings — full-text search across all filings, or one company

[Home](https://quanticdata.io/)/[Collectors](https://quanticdata.io/collectors/)/*SEC EDGAR API*

# SEC EDGAR API

SEC EDGAR is a full-text search and a submissions feed, but the useful data is trapped behind a User-Agent contract, a CIK zero-padding rule and two different response shapes for search versus company mode. This endpoint returns filings as rows — company, CIK, form type, filing date, description and a direct document link — whether you searched the full text of every filing by keyword or asked for one company's history by ticker.

[Get my free API key](https://app.quanticdata.io/register) [See the request](/collectors/sec-edgar-api/#integration)

$0.0005 per delivered filing · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/sec_filings/run

```
$ curl $QD/sec_filings/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"query": "artificial intelligence risk factors", "forms": "10-K", "max_results": 20}'
{ "status": "done", "count": 20,
  "results": [
    {
      "company": "…",
      "cik": "…",
      "form": "…",
      "filed_date": "…" } ],
  "cost": 0.01 }
# 20 filings × $0.0005 · nothing delivered, nothing charged
```

**$0.0005 / filing**4,000 filings on the free $2 every month

**Semantic input**query, ticker, cik — no URL lists

**Up to 100**filings per run, pagination handled for you

**No browser**read over HTTP/TLS — cheaper and faster than rendering

On this page: [What it is](/collectors/sec-edgar-api/#what) [Output fields](/collectors/sec-edgar-api/#output) [Inputs](/collectors/sec-edgar-api/#input) [Pricing](/collectors/sec-edgar-api/#pricing) [Integration](/collectors/sec-edgar-api/#integration) [Use cases](/collectors/sec-edgar-api/#use-cases) [Versus the alternatives](/collectors/sec-edgar-api/#compare) [FAQ](/collectors/sec-edgar-api/#faq)

## What a SEC EDGAR API does

EDGAR exposes two surfaces that answer different questions. Full-text search scans the body of every 10-K, 8-K or S-1 for a phrase and returns the matching documents; company mode takes a ticker, resolves it to the numeric CIK and lists that filer's recent submissions. Both come back here as the same flat row shape, with the filing URL already assembled from the accession number so you never build the path yourself.

The reason not to hit EDGAR directly is the ritual around it: a descriptive User-Agent is mandatory, requests are capped per second, and CIKs must be zero-padded to ten digits in some calls and passed bare in others while the two modes disagree on field names. Resolving a ticker to a CIK, honouring the cap and normalising both responses into one schema is the part that turns "an afternoon" into a column in your dataset.

Input is meaning, not a URL *query* *ticker* *cik* *forms* *max_results*

## What one filing looks like

Every delivered filing carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

| Field | Type | What it holds |
| --- | --- | --- |
| `rank` | integer | 1-based position. |
| `company` | string · nullable | Filer name. |
| `cik` | string · nullable | SEC CIK. |
| `form` | string · nullable | Form type (10-K, 8-K…). |
| `filed_date` | string · nullable | Filing date. |
| `report_date` | string · nullable | Period of report (company mode). |
| `file_type` | string · nullable | Document type (search mode). |
| `description` | string · nullable | Document description (search mode). |
| `accession` | string · nullable | Accession number. |
| `is_xbrl` | boolean · nullable | Whether the filing has XBRL data (company mode). |
| `url` | string · nullable | Direct link to the filing document. |

## Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

| Input | Type | Required | What it does |
| --- | --- | --- | --- |
| `query` | string | no | Full-text search across all filings. Use this OR ticker/cik. |
| `ticker` | string | no | Company ticker — resolved to its CIK. Use with company mode. |
| `cik` | string | no | SEC Central Index Key (numeric). Alternative to ticker. |
| `forms` | string | no | Filter to a form type, e.g. 10-K, 8-K, S-1. |
| `max_results` | integer | no | How many filings to deliver at most (1–100). You pay only for delivered filings. |

Pricing

## SEC EDGAR API pricing

$0.0005 per delivered filing. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 4,000 filings before you spend anything.

**$0.0005**per delivered filing*$0.5 per 1,000 delivered filings*

**4,000 filings**on the free allowance*$2 every month, no card*

**Zero rows**zero charge*blocks, captchas and retries are on us*

**−30%**on volume tiers*the catalog returns your key's price*

### Pay as you go

$0/mo

- $2 free credit / month

- 60 requests / min

- List unit prices

### Starter

$19/mo

- $15 free credit / month

- 300 requests / min

- 10% off unit prices

Most popular

### Growth

$79/mo

- $50 free credit / month

- 600 requests / min

- 20% off unit prices

### Scale

$299/mo

- $250 free credit / month

- 1,200 requests / min

- 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other [Data API](https://quanticdata.io/web-data-api-for-ai/). Prices are launch pricing read live from the billing config — `GET /v1/scraper/collectors` returns the price your key actually pays.

Integration

## One POST, typed rows

Base URL `https://api.quanticdata.io/v1`, Bearer auth, the same key as every other Data API. Endpoint: `POST /v1/scraper/collectors/sec_filings/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/sec_filings/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"artificial intelligence risk factors","forms":"10-K","max_results":20}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/sec_filings/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={
        "query": "artificial intelligence risk factors",
        "forms": "10-K",
        "max_results": 20
    },
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/sec_filings/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"query":"artificial intelligence risk factors","forms":"10-K","max_results":20}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quantumproxies \
  -e QUANTUMPROXIES_API_KEY=qd_live_your_key_here \
  -- npx -y quantumproxies-mcp

# then, in the chat:
> run the sec_filings collector with query="artificial intelligence risk factors" and forms="10-K"
```

## What people build with the SEC EDGAR API

Three shapes of work this endpoint was designed around.

### Filing monitors

Poll one company by ticker for new 8-Ks and each event filing arrives with its form type, date and document URL, ready to diff against yesterday's pull.

### Disclosure text mining

Full-text search returns the documents that mention a phrase — "artificial intelligence risk factors", a supplier name, a going-concern clause — as rows to feed a model rather than a results page to scrape.

### Entity-linked finance datasets

Every row carries the CIK, the stable key that joins a filing back to the company across price data, ownership records and your own tables.

## SEC EDGAR API versus rolling your own

The differences that actually cost time when you build this in-house.

|  | DIY scraper | This collector |
| --- | --- | --- |
| Company lookup | Zero-pad the CIK, guess the submissions URL | Pass a ticker; the CIK is resolved for you |
| Two query modes | Two endpoints, two response shapes | Full-text and company history in one row schema |
| Document link | Rebuild it from the accession number | Direct filing URL on every row |

## FAQ

Questions we get about the SEC EDGAR API.

[Something else? Ask us →](mailto:hello@quanticdata.io)

### Do I need to send a User-Agent or back off from a rate limit?

EDGAR requires a descriptive User-Agent on every request and caps requests per second. Both are handled on our side, so you send a ticker or a query and get rows back — no header to set and no throttle to manage.

### Can I search the full text of filings, or only list a company's filings?

Both. Send `query` to search the body of every filing for a phrase, or send `ticker`/`cik` to get one filer's recent submissions. The two modes return the same fields, differing only where the source does — `report_date` and `is_xbrl` in company mode, `file_type` and `description` in search mode.

### How do I go from a stock ticker to its filings?

Pass the ticker and the collector resolves it to the SEC's numeric CIK before querying, so "AAPL" reaches the right filer without you first looking up 0000320193.

### Can I filter to a specific form type?

Yes — set `forms` to 10-K, 8-K, S-1 and so on to keep only that filing type in either mode.

### Is there a free SEC EDGAR API?

Every account gets $2 of credit every month with no card, which is about 4,000 delivered filings on this endpoint at $0.0005 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

### How much does one run cost?

Multiply the rows you actually receive by $0.0005. A run capped at 100 filings — the maximum for this collector — costs $0.05 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and `GET /v1/scraper/collectors` returns the price your key actually pays.

## Run the SEC EDGAR API now

$2 of free credit every month, no card. Your key returns its own prices from `GET /v1/scraper/collectors`.

[Get my free API key](https://app.quanticdata.io/register)

Related: [All 65 collectors](https://quanticdata.io/collectors/) [Stock Data API](https://quanticdata.io/collectors/stock-data-api/) [Company Data API](https://quanticdata.io/collectors/company-data-api/) [Wikidata API](https://quanticdata.io/collectors/wikidata-api/) [Documentation](https://quanticdata.io/docs/)

---

Source: https://quanticdata.io/collectors/sec-edgar-api/ · Site index for AI: https://quanticdata.io/llms.txt
