SEC Full-Text Search
Keyword full-text search ACROSS SEC filings — finds which filings mention a term or phrase, spanning many companies at once. Thin wrapper around the sec-api.io full-text-search API; ticker symbols are resolved to CIKs automatically. Supports AND, OR, NOT, wildcards (*), and exact phrases ("quoted").
Use this when: you want to find every filing that mentions a term across companies ("who disclosed a 'material weakness' this quarter?"), scan for an event or risk phrase, or discover filings for a company by ticker without knowing the specific document.
Do NOT use this when: you already know the specific filing and want to READ one named section from it ("risk factors", "MD&A") — use sec_filing_section instead (it calls this concept filingType, a singular enum string, not the array formTypes here). For general company background (revenue, employees, technographics) use company_research; for non-SEC web info use web_search.
CORPUS: Covers incident-reporting and event-driven filings. Common financial terms ("revenue", "earnings") are not indexed and return zero results.
DATE WARNING: startDate defaults to the last 30 days. Annual filings (10-K, 20-F, 40-F) are filed yearly — pass startDate "2020-01-01" for them or you get zero results.
QUERY EXAMPLES: "material weakness" · cybersecurity AND breach · layoff* · "going concern" OR "substantial doubt" · acquisition NOT merger.
Foreign issuers: formTypes ["20-F"] (Barclays/BP/Toyota/Shell), ["6-K"] (interim), ["40-F"] (Canadian) — some ADR issuers (e.g. SAP) have no 20-F on EDGAR.
Returns up to 100 filings per page with direct EDGAR URLs. If resolvedCiks in searchParams is empty after passing tickers, the ticker filter was NOT applied and results are unfiltered — check it (and any warnings) before treating results as company-specific.
Parameters
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | ❌ No | cybersecurity incident | Keyword/phrase query to match in filing text. Supports AND, OR, NOT, wildcards (*), and exact phrases ("quoted"). This searches ACROSS filings — it does not extract a named section from one known filing (use sec_filing_section for that). Common financial terms ("revenue", "earnings") are not indexed and return zero results. |
formTypes | array | ❌ No | - | Filter by SEC form type (e.g., ["8-K", "10-K", "20-F"]). Recommended for wildcard queries to reduce noise: ["8-K", "10-K", "10-Q"]. Matching is family-based, not exact: ["10-K"] also returns 10-K/A and NT 10-K; ["8-K"] also returns 8-K/A and CORRESP. Post-filter on each result's formType field if you need exact types. Note: sec_filing_section calls this concept filingType — a singular enum string, not an array. |
tickers | array | ❌ No | - | Filter by company ticker symbol (e.g., ["MSFT", "AAPL", "SAP"]). Resolved to CIKs automatically via the sec-api.io Mapping API for real server-side filtering. IMPORTANT: if resolvedCiks in the response is empty, the ticker(s) could not be resolved and NO filter was applied — results are the full unfiltered corpus, not company-specific. Always check resolvedCiks (and the warnings array) before trusting results as company-specific. Some foreign/ADR issuers (e.g., SAP, LVMH) may not resolve. |
startDate | string | ❌ No | - | Start date (YYYY-MM-DD). Defaults to 30 days ago. For annual filings (10-K, 20-F, 40-F) pass "2020-01-01" — the 30-day default misses most annual reports. |
endDate | string | ❌ No | - | End date (YYYY-MM-DD). Defaults to today. |
page | string | ❌ No | 1 | Page of results (default "1"). Each page returns up to 100 filings. Use "2", "3", etc. to paginate. |
Required Integrations
sec_api
Use Cases
- Find every filing mentioning a term across companies — "who disclosed a 'material weakness'?"
- Scan for a risk or event phrase: "going concern", "substantial doubt", "cybersecurity incident"
- Track M&A language across the market: acquisition, merger, "definitive agreement"
- List recent filings for a company by ticker without knowing the specific document
- Search foreign-issuer disclosures via formTypes (["20-F"], ["6-K"], ["40-F"])
Example Usage
Companies disclosing a material weakness in the last 30 days
{
"tool": "sec_full_text_search",
"arguments": {
"query": "\"material weakness\""
}
}
Cyber breach language in 8-Ks since 2020
{
"tool": "sec_full_text_search",
"arguments": {
"query": "cybersecurity AND breach",
"formTypes": [
"8-K"
],
"startDate": "2020-01-01"
}
}
Going-concern mentions in Microsoft filings
{
"tool": "sec_full_text_search",
"arguments": {
"query": "\"going concern\"",
"tickers": [
"MSFT"
],
"startDate": "2020-01-01"
}
}
Related Tools
sec_filing_section, company_research, web_search, company_contracts