SEC EDGAR API
Free SEC EDGAR API with no key: every US public company filing — 10-K, 10-Q, 8-K — plus structured XBRL financial data straight from the regulator. Tested.
Endpoint tested and returned HTTP 200 on 2026-08-20
What is the SEC EDGAR API?
The SEC EDGAR API is a free, key-free US government API providing every filing submitted by publicly listed US companies — annual and quarterly reports, current reports and ownership disclosures — plus structured XBRL financial data.
This is the primary source for US public company financials. Every 10-K, 10-Q and 8-K ever filed is here, and the XBRL company-facts endpoints expose the actual reported numbers as structured data rather than PDFs.
The SEC enforces a User-Agent policy strictly: requests must identify your application and include a contact email, or they are blocked. Companies are addressed by ten-digit zero-padded CIK numbers, not ticker symbols, so a ticker-to-CIK lookup is usually the first step.
Quick facts
- Base URL
https://data.sec.gov- Authentication
- No API key, but a User-Agent naming your app and a contact email is mandatory and enforced.
- Rate limit
- 10 requests per second, strictly enforced.
- Pricing
- Free public domain US government data.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the SEC EDGAR API
Every request below was executed against the live API on 2026-08-20, and the response shown is the real body it returned — not an illustration.
1. Fetch a company's filing history
GET https://data.sec.gov/submissions/CIK0000320193.json
curl 'https://data.sec.gov/submissions/CIK0000320193.json'const res = await fetch("https://data.sec.gov/submissions/CIK0000320193.json");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://data.sec.gov/submissions/CIK0000320193.json", timeout=20)
res.raise_for_status()
print(res.json()){
"cik": "0000320193",
"entityType": "operating",
"sic": "3571",
"sicDescription": "Electronic Computers",
"ownerOrg": "06 Technology",
"insiderTransactionForOwnerExists": 0,
"insiderTransactionForIssuerExists": 1,
"name": "Apple Inc.",
"tickers": [
"AAPL"
],
"exchanges": [
"Nasdaq"
],
"ein": "942404110",
"lei": null,
"description": "",
"website": "",
"investorWebsite": "",
"category": "Large accelerated filer",
"fiscalYearEnd": "0926",
"stateOfIncorporation": "CA",
"stateOfIncorporationDescription": "CA",
"addresses": {
"mailing": {
"street1": "ONE APPLE PARK WAY",
"street2": null,
"city": "CUPERTINO",
"stateOrCountry": "CA",
"zipCode": "95014",
"stateOrCountryDescription": "CA",
"isForeignLocation": 0,
"foreignStateTerritory": null,
"country": null,
"countryCode": null
},
"business": {
"street1": "ONE APPLE PARK WAY",
"street2": null,
"city": "CUPERTINO",
"stateOrCountry": "CA",
"zipCode": "95014",
"stateOrCountryDescription": "CA",
"isForeignLocation": null,
"foreignStateTerritory": null,
"country": null,
"countryCode": null
}
},
"phone": "(408) 996-1010",
"flags": "",
"formerNames": [
{
"name": "APPLE INC",
"from": "2007-01-10T05:00:00.000Z",
"to": "2019-08-05T04:00:00.000Z"
},
{
"name": "APPLE COMPUTER INC",
"from": "1994-01-26T05:00:00.000Z",
"to": "2007-01-04T05:00:00.000Z"
},
{
"name": "APPLE COMPUTER INC/ FA",Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
submissions/CIK<cik>.json | path | Required | Filing history. CIK is zero-padded to 10 digits. submissions/CIK0000320193.json |
api/xbrl/companyfacts/CIK<cik>.json | path | Optional | All reported XBRL financial facts. companyfacts/CIK0000320193.json |
api/xbrl/companyconcept/... | path | Optional | One specific financial concept over time. Revenues.json |
User-Agent | header | Required | App name and contact email. Mandatory. MyApp you@example.com |
Response fields
cikstring- Central Index Key identifying the company.
namestring- Registered company name.
tickersarray- Stock ticker symbols.
sic / sicDescriptionstring- Standard Industrial Classification code and description.
filings.recentobject- Recent filings as parallel arrays — form type, date, accession number.
filings.recent.formarray- Form types such as 10-K, 10-Q, 8-K.
filings.recent.accessionNumberarray- Identifiers used to construct document URLs.
What you can build with the SEC EDGAR API
- Pull official financial statements for US public companies
- Monitor new filings for a company or sector
- Extract structured XBRL financials for analysis
- Build investor research and compliance tooling
Common errors and how to fix them
403
Missing or generic User-Agent.
Fix: The SEC requires a User-Agent naming your app with a contact email, and blocks requests without one.
404 on a CIK
CIKs must be zero-padded to ten digits.
Fix: Apple is CIK0000320193, not CIK320193. Use the company_tickers.json file to map tickers to CIKs.
Filings are parallel arrays
form, filingDate and accessionNumber are separate arrays.
Fix: Zip them by index rather than expecting an array of filing objects.
SEC EDGAR API — frequently asked questions
Is the SEC EDGAR API free?
Yes, completely free with no API key. It is public domain US government data, but a User-Agent identifying your application and contact email is mandatory.
How do I find a company's CIK?
Fetch https://www.sec.gov/files/company_tickers.json, which maps every ticker symbol to its CIK. Remember to zero-pad the CIK to ten digits in API paths.
Can I get actual financial figures?
Yes, the XBRL companyfacts endpoints return every reported financial concept as structured data with values and periods — not just links to PDF filings.
Why is the filings object structured as parallel arrays?
For compactness. form, filingDate, accessionNumber and the rest are separate arrays that you zip by index to reconstruct each filing.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
CSV to JSON Converter
Convert CSV to a JSON array of objects online. Header-row detection, comma/semicolon/tab delimiters and pretty-printed output — 100% in your browser.
SEC EDGAR is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.