SEC Filing Data API GuideSEC 年报数据接口指南

Free 10-K API
for SEC Filing Data
免费 10-K API
获取 SEC 年报数据

Use a free 10-K API to move from ticker or CIK to the exact annual filing, source HTML, exhibits, narrative sections, or XBRL facts you need. Learn how to preserve amendments, reporting context, and filing provenance before turning annual reports into research data.

使用免费 10-K API,从股票代码或 CIK 准确定位年度申报、原始 HTML、附件、叙述章节或 XBRL facts,并在把年报转为研究数据前,正确保留修订记录、报告上下文与文件来源。

Free 10-K API workflow from SEC EDGAR through ticker or CIK lookup, filing metadata, HTML, XBRL and JSON outputs to Python apps and financial analysis 免费 10-K API 工作流程:从 SEC EDGAR、股票代码或 CIK 查询和申报元数据,到 HTML、XBRL、JSON 输出及 Python 应用、财务分析与 AI 智能体

Free 10-K API: what developers need to complete免费 10-K API:开发者真正要完成的任务

The direct answer is that SEC EDGAR provides a free, authoritative path to 10-K metadata, filed documents, exhibits, and tagged facts, but it is not a ready-made annual-report analytics API. The integration must still resolve the issuer, select the correct filing version, retrieve the required document layer, parse narrative sections or XBRL contexts, and retain enough evidence to reproduce every result.

直接答案是:SEC EDGAR 免费提供权威的 10-K 元数据、申报正文、附件和标签化事实,但它并不是开箱即用的年报分析 API。接入方仍需解析发行人、选择正确文件版本、下载所需文档层、处理叙述章节或 XBRL 上下文,并保留足够证据,使每个结果都能复现。

Choose the output from the research question. A filing monitor needs accession number and accepted time; a risk model needs Item 1A text and section boundaries; a financial model needs period-aware facts or normalized statements; an audit workflow may need the complete filing index and exhibits. Calling all of these “10-K data” hides important differences in completeness and validation.

应从研究问题反推输出。申报监控需要 accession number 与受理时间;风险模型需要 Item 1A 正文及章节边界;财务模型需要带期间上下文的 facts 或标准化报表;审计流程则可能需要完整文件索引和附件。把这些统称为“10-K 数据”,会掩盖完整性与验证方式上的关键差异。

Start with identity先确认公司标识

Use ticker for convenience and the 10-digit CIK for a stable SEC lookup.股票代码便于输入,补零后的 10 位 CIK 更适合稳定查询 SEC 数据。

Choose the output明确输出类型

Filing lists, raw HTML, exhibits, extracted Items, XBRL facts, and normalized statements solve different tasks.申报列表、原始 HTML、附件、提取后的 Items、XBRL facts 与标准化报表分别解决不同任务。

Keep provenance保留来源

Retain accession number, accepted time, filing and report dates, form, amendment status, primary document, and SEC URL.保留 accession number、受理时间、申报日与报告期、表格、修订状态、主要文件和 SEC URL。

Verify “free”核实“免费”边界

Confirm quotas, history, authentication, licensing, and production rights.核对额度、历史范围、鉴权、许可与生产使用权,区分免费层和试用。

SEC 10-K API outputs: filings, JSON, and XBRLSEC 10-K 数据接口的申报、JSON 与 XBRL 输出

The SEC’s public data APIs expose company submissions and extracted XBRL data as JSON. A submissions response can identify recent 10-K and 10-K/A records, while company facts expose tagged financial observations. Neither should be confused with a fully normalized income statement, balance sheet, or cash-flow API.

SEC 的公开数据 API 以 JSON 提供公司 submissions 与已提取的 XBRL 数据。submissions 可定位近期 10-K 与 10-K/A,company facts 可返回带标签的财务事实;二者都不等同于已经统一口径的利润表、资产负债表或现金流量表接口。

For document analysis, the primary 10-K HTML is only one part of the filing package. The filing index may also list exhibits, XBRL instance and taxonomy files, certifications, and documents incorporated by reference. Decide whether your application promises “the primary annual filing” or “the complete filed package,” because those are different completeness contracts.

对于文档分析,主要 10-K HTML 只是整套申报材料的一部分。文件索引还可能列出附件、XBRL 实例与分类文件、管理层认证,以及通过引用纳入的其他文件。应用必须明确承诺的是“主要年报正文”还是“完整申报材料”,因为两者对应不同的完整性标准。

Output输出Useful for适合任务Check before use接入前核对
Filing metadata申报元数据10-K lookup by ticker or CIK, monitoring, archive links.按 ticker 或 CIK 查询 10-K、监控新申报、获取存档链接。10-K/A handling, pagination, historical files.10-K/A 处理、分页与历史文件范围。
Raw HTML or filing document原始 HTML 或申报文档Reading complete disclosures and extracting sections.阅读完整披露并提取 Business、Risk Factors、MD&A 等章节。Document selection, encoding, exhibits, parser reliability.主文档选择、编码、附件与解析稳定性。
Filing package and exhibits申报材料与附件Contracts, subsidiary lists, certifications, acquisition documents, and referenced evidence.合同、子公司清单、认证文件、并购材料及引用证据。Exhibit type, document sequence, incorporated references, MIME type, and missing-file behavior.附件类型、文件顺序、引用纳入关系、MIME 类型与缺失文件处理。
Extracted 10-K Items提取后的 10-K ItemsBusiness, Risk Factors, Properties, Legal Proceedings, MD&A, market risk, statements, and controls analysis.业务、风险因素、资产、法律诉讼、MD&A、市场风险、财务报表与内控分析。Heading variants, table of contents, repeated labels, inline XBRL markup, section boundaries, and parser version.标题变体、目录、重复标签、Inline XBRL 标记、章节边界与解析器版本。
XBRL factsXBRL factsCompany facts, tagged values, periods, units, and filing references.公司财务事实、标签值、期间、单位与申报来源。Taxonomy variation, dimensions, units, and duplicate contexts.标签体系差异、维度、单位与重复 context。
Normalized financial statements标准化财务报表Comparable annual revenue, profit, assets, cash flow, and ratios.可比的年度营收、利润、资产、现金流与比率。Provider mapping, restatements, point-in-time logic, licensing.提供方映射、重述、时点逻辑与许可。

10-K versus annual report and 10-K/A10-K、年度报告与 10-K/A 的区别

A Form 10-K is the SEC annual filing; a glossy shareholder annual report may be a separate document. Treat 10-K/A as an amendment, preserve both accessions, and avoid silently overwriting the original record.

Form 10-K 是提交给 SEC 的年度申报;面向股东的设计版年度报告可能是另一份文档。10-K/A 应作为修订文件处理,需保留原始与修订 accession,不能静默覆盖。

Amendments also need semantic review. A 10-K/A may change a limited disclosure rather than re-file every section, and proxy materials can supply information incorporated by reference. Store a version chain, identify which Items changed, and avoid presenting the amendment alone as though it were a complete restated annual report.

修订文件还需要语义层面的判断。10-K/A 可能只修改有限披露,并不会重新提交全部章节;代理声明也可能补充通过引用纳入的内容。应保存版本链、识别哪些 Item 发生变化,不能把单独的修订文件当作完整重述年报展示。

How to evaluate a free SEC filings API如何评估免费的 SEC 年报 API

1. Define an answerable 10-K task1. 定义可验收的 10-K 任务

State the issuer, time rule, filing variants, output layer, and evidence required. For example: “return the latest accepted 10-K as of a cutoff, include Item 1A and Item 7 with source anchors, and list any later 10-K/A.” This is testable; “get annual-report data” is not.明确发行人、时间规则、表格变体、输出层与证据要求。例如:“返回截止时点已受理的最新 10-K,提供带来源锚点的 Item 1A 与 Item 7,并列出之后的 10-K/A。”这可以验收,而“获取年报数据”不行。

2. Test identity, history, and versions2. 测试标识、历史与版本

Include ticker changes, multiple share classes, non-calendar fiscal years, older submissions, 10-K/A amendments, and one filing that incorporates proxy material by reference. Verify accession numbers, accepted times, primary documents, and exhibit lists against EDGAR.样本应覆盖股票代码变更、多类别股份、非自然年财年、较早 submissions、10-K/A,以及一份通过引用纳入代理声明的文件。用 EDGAR 核对 accession number、受理时间、主要文件与附件列表。

3. Evaluate extraction quality3. 评估内容提取质量

Measure section boundary accuracy on different filing templates, not just keyword presence. For XBRL, test units, duration versus instant facts, dimensions, taxonomy extensions, duplicate contexts, and amended filings. For normalized statements, compare totals and signs to the source presentation.不同申报模板下,应评测章节边界准确率,而不是只看关键词是否出现。XBRL 需测试单位、期间型与时点型事实、维度、自定义标签、重复 context 与修订文件;标准化报表还应与原表核对合计值和正负号。

4. Confirm the free boundary and license4. 核实免费边界与许可

Record daily and monthly quotas, burst controls, historical start date, excluded endpoints, document retention, trial expiry, attribution, redistribution, and commercial-use terms. Estimate calls for backfill and steady-state monitoring separately; the same free plan may support one but not the other.记录日/月额度、突发限制、历史起始日、受限端点、文档保留、试用到期、署名、再分发与商业使用条款。历史回填和日常监控应分别估算调用量,同一免费套餐可能只适合其中一种。

5. Validate operations and provenance5. 验证运维与来源

Check pagination, older-file references, HTTP errors, timeouts, retries, idempotent replay, timestamps, and status documentation. Store raw payloads, official URLs, content hashes, and parser versions so a section or fact can be traced to the exact filing version.检查分页、较早文件引用、HTTP 错误、超时、重试、幂等重放、时间戳与状态说明。保存原始响应、官方 URL、内容哈希与解析器版本,让章节或事实可以追溯到准确的文件版本。

Use a free 10-K API with Python使用 Python 接入免费 10-K API

Step 1: resolve ticker to CIK步骤 1:把股票代码映射为 CIK

Map the ticker to the SEC CIK and pad it to ten digits for company submissions requests. Store both identifiers because tickers can change while the CIK is the SEC’s stable entity key.

先把股票代码映射到 SEC CIK,并补足为 10 位用于 company submissions 请求。两种标识都应保存,因为 ticker 可能变化,而 CIK 是 SEC 的稳定实体键。

Record the mapping source and observation date. If one issuer has several listed share classes, decide whether the user is selecting a security or the reporting entity; EDGAR filing lookup ultimately operates on the entity CIK.

同时记录映射来源与观察日期。如果同一发行人有多个上市股份类别,还要区分用户选择的是证券还是申报主体;EDGAR 的文件查询最终以主体 CIK 为准。

Step 2: filter 10-K and 10-K/A records步骤 2:筛选 10-K 与 10-K/A

Fetch the submissions JSON, zip the parallel recent-filings arrays into records, and select exact form values. Preserve form, filing date, accession number, primary document, and report date.

获取 submissions JSON,将 recent filings 中的并行数组组合为记录,再按精确表单值筛选。保留 form、filing date、accession number、primary document 与 report date。

Do not assume the recent arrays contain the full history. Follow older-submission file references when the requested year is absent. Sort by accepted timestamp for “latest known filing” logic, and keep 10-K/A in a related but distinct version stream.

不要假设 recent 数组覆盖全部历史。如果目标年份不在其中,应继续读取引用的较早 submissions 文件。“当时已知的最新文件”应按 accepted timestamp 排序,10-K/A 则进入相关但独立的版本流。

Step 3: download or parse the required layer步骤 3:下载或解析所需数据层

Construct the SEC archive URL for the primary document when you need the filing text. Use XBRL company facts for tagged values or a documented third-party 10-K data API when the application needs normalized financial statements.

需要全文时,用 accession 与 primary document 构造 SEC 存档链接;需要标签值时使用 XBRL company facts;需要统一口径财务报表时,再选择文档明确的第三方 10-K 数据接口。

Cache the immutable source document and filing index before parsing. For section extraction, remove navigation and table-of-contents noise carefully, preserve tables where they carry meaning, and store parser version plus source offsets. For financial facts, keep concept, unit, period, dimensions, form, filed date, and accession number rather than selecting a value by label alone.

解析前先缓存不可变的原始正文与文件索引。提取章节时要谨慎去除导航和目录噪声,保留具有信息意义的表格,并记录解析器版本与来源位置。财务 facts 应保留 concept、单位、期间、维度、表格、申报日与 accession number,不能只按标签名称选取数值。

import requests

headers = {"User-Agent": "YourApp contact@example.com"}
cik = "0000320193"
data = requests.get(
    f"https://data.sec.gov/submissions/CIK{cik}.json",
    headers=headers,
    timeout=30,
).json()

recent = data["filings"]["recent"]
records = [dict(zip(recent, row)) for row in zip(*recent.values())]
annual = [r for r in records if r["form"] in {"10-K", "10-K/A"}]

Use QVeris to discover 10-K data capabilities使用 QVeris 发现 10-K 数据能力

QVeris helps developers and AI agents discover and inspect available financial-data capabilities. Open the QVeris tool details to inspect the matched capability for tasks such as latest 10-K discovery, filing document retrieval, Item 1A extraction, annual XBRL facts, or normalized statements—then inspect identifiers, filing-version behavior, evidence links, freshness, and provider constraints before connecting a capability to an agent. QVeris does not change a provider’s quota, license, freshness, or data rights.

QVeris 帮助开发者和 AI Agent 发现并检查可用的金融数据能力。可打开 QVeris 工具详情,按任务核对,例如最新 10-K 检索、申报正文下载、Item 1A 提取、年度 XBRL facts 或标准化报表;接入 Agent 前应核对标识符、文件版本处理、证据链接、更新频率与服务限制。QVeris 不会改变提供方的额度、许可、更新频率或数据权利。

For implementation concepts, review the QVeris documentation and keep the original SEC URL in downstream research output.

接入概念可参考 QVeris 文档,并在后续研究输出中保留 SEC 原始链接。

Free 10-K API questions免费 10-K API 常见问题

Is there a free API for 10-K filings?

Yes. SEC EDGAR provides public filing metadata, archived documents, and XBRL data without an API key. It is source infrastructure rather than a fully normalized annual-report product, so section extraction, statement mapping, caching, and monitoring remain your responsibility.

How do I get the latest 10-K by ticker?

Resolve ticker to the reporting entity’s CIK, read company submissions, include older files if needed, filter exact 10-K forms, and sort by accepted time according to your cutoff. Return accession number, primary document, filing date, report period, and any related 10-K/A.

Can a 10-K API return Risk Factors or MD&A?

A provider may expose extracted Item 1A or Item 7, but official EDGAR primarily provides the filed documents. Test extraction on varied templates, repeated headings, tables of contents, and inline XBRL markup, and retain source anchors plus parser version.

Are 10-K XBRL facts the same as normalized statements?

No. XBRL facts retain issuer-reported taxonomy, units, periods, and dimensions. A normalized statement maps those facts into a provider-defined comparable schema. Validate mapping, signs, restatements, fiscal periods, and point-in-time behavior.

How should 10-K/A amendments be handled?

Keep the original and amendment as separate accessioned versions, link them, and identify which disclosures changed. Do not replace the original silently or assume the amendment restates every section of the annual filing.

What should a production 10-K pipeline store?

Store CIK, accession number, form, accepted time, filing and report dates, primary document, exhibit list, official URLs, retrieval time, raw content hash, parser version, and transformation evidence. This supports replay, correction, and audit.

SEC 是否提供免费的 10-K API?

是。SEC EDGAR 无需 API key 即可提供公开申报元数据、归档正文与 XBRL 数据。但它属于原始数据基础设施,并非已标准化的年报产品;章节提取、报表映射、缓存与监控仍需自行完成。

如何按股票代码获取最新 10-K?

先把 ticker 解析为申报主体 CIK,读取 company submissions,必要时继续读取较早文件,精确筛选 10-K,并按业务截止时点和 accepted time 排序。结果应返回 accession number、主要文件、申报日、报告期及相关 10-K/A。

10-K API 能否直接返回风险因素或 MD&A?

第三方服务可能直接提供 Item 1A 或 Item 7,但官方 EDGAR 主要提供申报正文。应使用不同模板、重复标题、目录和 Inline XBRL 标记测试提取质量,并保留来源锚点与解析器版本。

10-K XBRL facts 等同于标准化财务报表吗?

不等同。XBRL facts 保留发行人申报的 taxonomy、单位、期间与维度;标准化报表则把这些事实映射到服务商定义的可比字段。应验证映射、正负号、重述、财务期间与时点逻辑。

应该如何处理 10-K/A 修订文件?

原始文件和修订文件应作为拥有不同 accession number 的版本分别保存并相互关联,同时识别实际变化的披露。不能静默替换原文件,也不能假定修订文件重新提交了年报全部章节。

生产级 10-K 数据管道应保存什么?

保存 CIK、accession number、表格、受理时间、申报日与报告期、主要文件、附件列表、官方 URL、抓取时间、原始内容哈希、解析器版本与转换证据,以支持重放、修正和审计。

Authoritative references权威参考