SEC EDGAR Filings
List a US listed company's recent SEC filings by ticker or CIK, with form type, dates, accession numbers, document links, SIC code and business address.
sec-edgar-filings Example
{
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3
} {
"cik": 320193,
"name": "Apple Inc.",
"ticker": "AAPL",
"filings": [
{
"url": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000079/aapl-20250927.htm",
"form": "10-K",
"items": null,
"index_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000079/",
"description": "10-K",
"filing_date": "2025-10-31",
"report_date": "2025-09-27",
"accession_number": "0000320193-25-000079",
"primary_document": "aapl-20250927.htm"
}
],
"tickers": [
"AAPL"
],
"returned": 1,
"sic_code": "3571",
"edgar_url": "https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0000320193",
"exchanges": [
"Nasdaq"
],
"entity_type": "operating",
"form_filter": "10-K",
"filer_category": "Large accelerated filer",
"fiscal_year_end": "0926",
"sic_description": "Electronic Computers",
"business_address": {
"zip": "95014",
"city": "CUPERTINO",
"street": "ONE APPLE PARK WAY",
"state_or_country": "CA"
},
"state_of_incorporation": "CA",
"recent_filings_available": 1000
} Inputs
| Field | Type | Required | What it is |
|---|---|---|---|
cik | string | No | SEC Central Index Key, e.g. 320193 (required unless ticker is given) |
limit | integer | No | Filings to return, 1-50. Default: 20 |
ticker | string | No | Exchange ticker symbol, e.g. AAPL (required unless cik is given) |
form_type | string | No | Only return this form type, e.g. 10-K, 10-Q, 8-K, 4, S-1 |
Output fields
How reliably each field appears in a successful answer.
| Field | Type | Appears |
|---|---|---|
cik | number | Always (present in every successful answer) |
name | string | Always (present in every successful answer) |
filings | array | Always (present in every successful answer) |
returned | number | Always (present in every successful answer) |
edgar_url | string | Always (present in every successful answer) |
sic_description | string | Usually (present for most inputs) |
ticker | — | Usually (present for most inputs) |
tickers | — | Always (present in every successful answer) |
exchanges | — | Usually (present for most inputs) |
entity_type | — | Usually (present for most inputs) |
sic_code | — | Usually (present for most inputs) |
state_of_incorporation | — | Usually (present for most inputs) |
fiscal_year_end | — | Usually (present for most inputs) |
filer_category | — | Usually (present for most inputs) |
business_address | — | Usually (present for most inputs) |
form_filter | — | Usually (present for most inputs) |
recent_filings_available | — | Always (present in every successful answer) |
How to call it
The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.
# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
-H "Authorization: Bearer $STRALE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"capability_slug": "sec-edgar-filings",
"inputs": {
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3
},
"max_price_cents": 3
}' {
"tool": "strale_execute",
"arguments": {
"slug": "sec-edgar-filings",
"inputs": {
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3
},
"max_price_cents": 3
}
} import { Strale } from "straleio";
const strale = new Strale({ apiKey: process.env.STRALE_API_KEY! });
const result = await strale.do({
capability_slug: "sec-edgar-filings",
inputs: {
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3
},
max_price_cents: 3,
}); import os
from straleio import Strale, DoRequest
strale = Strale(api_key=os.environ["STRALE_API_KEY"])
result = strale.do(DoRequest(
capability_slug="sec-edgar-filings",
inputs={
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3,
},
max_price_cents=3,
)) # No account. The first request answers 402 with the price in USDC;
# an x402 client pays it from your wallet and repeats the request.
curl -i -X POST https://api.strale.io/x402/v2/sec-edgar-filings \
-H 'Content-Type: application/json' \
-d '{
"ticker": "AAPL",
"form_type": "10-K",
"limit": 3
}' Limitations
Only the filer's most recent ~1,000 filings are searched
EDGAR's submissions endpoint returns the latest 1,000 filings inline; older filings for prolific filers are in paginated archives this capability does not walk.
What to do instead: Use edgar_url for the full history, or narrow with form_type.
Ticker lookup covers SEC-registered listed companies only
Private companies, funds without a ticker and foreign filers without a US listing must be queried by CIK. The ticker index is refreshed daily.
What to do instead: Find the CIK on edgar_url's company search and pass cik instead.
Related tools
- Australian Company Data €0.05
- Austrian Company Data €0.05
- Belgian Company Data €0.05
- Brazilian Company Data €0.05
- Company News €0.05
- Czech Company Data €0.05