Better Fetch

SEC EDGAR Filings Scraper

Fetch recent SEC EDGAR company filings or one XBRL company concept by ticker or CIK through the SEC's public JSON APIs, returning normalized company metadata, filing URLs, forms, dates, accession numbers, and fact rows.

Financev0.1.1~1 credit/runSource on GitHub

Overview

SEC EDGAR Filings Scraper gives agents a bounded, compliant route into the SEC's public EDGAR JSON APIs. Resolve a public company ticker to CIK, return recent submissions from the SEC submissions endpoint, filter by forms such as 10-K, 10-Q, and 8-K, and build direct filing and filing-detail URLs. In company-concept mode, fetch one XBRL taxonomy concept such as us-gaap/Assets and return recent fact rows by unit, fiscal year, fiscal period, form, filing date, frame, accession number, and value. It is designed for public-company monitoring, earnings workflows, financial research, disclosure alerts, RAG ingestion, diligence packets, and agent-readable SEC filing context.

Last validated: Jul 3, 2026

Playground

SEC CIK, with or without leading zeros.

filings = recent EDGAR submissions; company_concept = one XBRL concept from the SEC companyconcept API.

Optional unit filter for company_concept mode, such as USD or shares.

Comma-separated form filter for filings mode, such as 10-K,10-Q,8-K.

Maximum filing or fact rows to return.

Ticker symbol such as AAPL. Used when cik is not supplied.

XBRL concept tag for company_concept mode, such as Assets.

XBRL taxonomy for company_concept mode, usually us-gaap or dei.

Include amended forms ending in /A.

Sign in to run this tool

~1 credit per run · runs against your account

Input

cikstring

SEC CIK, with or without leading zeros.

mode"filings" | "company_concept"default: "filings"

filings = recent EDGAR submissions; company_concept = one XBRL concept from the SEC companyconcept API.

unitstring

Optional unit filter for company_concept mode, such as USD or shares.

formsstring

Comma-separated form filter for filings mode, such as 10-K,10-Q,8-K.

limitintegerdefault: 10

Maximum filing or fact rows to return.

tickerstring

Ticker symbol such as AAPL. Used when cik is not supplied.

conceptstring

XBRL concept tag for company_concept mode, such as Assets.

taxonomystringdefault: "us-gaap"

XBRL taxonomy for company_concept mode, usually us-gaap or dei.

include_amendedbooleandefault: false

Include amended forms ending in /A.

Output

modestringrequired

Mode used for this run

unitstring

XBRL unit returned

countintegerrequired

Number of filing or fact rows returned

factsobject[]

Recent XBRL concept fact rows

formsstring

Comma-separated form filter applied

companyobjectrequired

Resolved SEC company metadata

company.cikstring

Ten-digit CIK

company.sicstring

SIC code

company.namestring

Company name

company.tickerstring

Ticker used for lookup

company.entity_typestring

SEC entity type

company.fiscal_year_endstring

Fiscal year end

company.sic_descriptionstring

SIC description

company.state_of_incorporationstring

State of incorporation

conceptstring

XBRL concept used

filingsobject[]

Recent EDGAR filing rows

taxonomystring

XBRL taxonomy used

source_urlstringrequired

SEC JSON URL fetched for the primary request

Examples

apple-filings

{
  "mode": "filings",
  "forms": "10-K,10-Q",
  "limit": 3,
  "ticker": "AAPL"
}

apple-assets-concept

{
  "mode": "company_concept",
  "unit": "USD",
  "limit": 2,
  "ticker": "AAPL",
  "concept": "Assets",
  "taxonomy": "us-gaap"
}

Use cases

Filing monitors

Watch recent 10-K, 10-Q, 8-K, S-1, or proxy filings for a ticker and return direct SEC filing URLs plus accession metadata.

Financial research

Pull one XBRL concept such as Assets or EntityCommonStockSharesOutstanding into a normalized fact table for models and notebooks.

Agent diligence packets

Give an agent clean company metadata, filing dates, report periods, primary document URLs, and recent fact rows before deeper reading.

FAQ

Does SEC EDGAR Filings Scraper require an API key?

No. Version 0.1 uses the SEC's public JSON APIs with an identifying user agent. SEC fair-access rules still apply, including the SEC's documented request-rate expectations.

Does it parse full filing text or exhibits?

No. It returns normalized submission metadata, filing URLs, and selected XBRL concept facts. Full filing text extraction, exhibits, tables, and multi-page historical archives are future work.

Is this tool affiliated with the SEC?

No. Better Fetch is not affiliated with or endorsed by the U.S. Securities and Exchange Commission. It uses public SEC data surfaces.

Use it anywhere

MCP (Claude, Cursor, any client)

# Add the Better Fetch MCP connector (or paste the URL into
# Claude → Settings → Connectors → Add custom connector):
claude mcp add --transport http better-fetch https://betterfetch.co/api/mcp \
  --header "Authorization: Bearer bf_your_key_here"

# Then ask for the tool by name: sec_edgar_filings_scraper

REST

curl -sS -X POST "https://betterfetch.co/api/tools/sec_edgar_filings_scraper/run" \
  -H "Authorization: Bearer bf_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"input": {"mode":"filings","forms":"10-K,10-Q","limit":3,"ticker":"AAPL"}}'

Run locally

git clone https://github.com/better-fetch/tools/tree/main/tools/sec-edgar-filings-scraper && cd sec-edgar-filings-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"filings","forms":"10-K,10-Q","limit":3,"ticker":"AAPL"}'