Logo

SEC

Authentication Type: API Key Description: Search and analyze SEC EDGAR filings including 10-K, 10-Q, and 8-K reports with financial data extraction.


Authentication

To authenticate, you'll need an SEC API key. Learn how to create one at sec-api.io.


Search for SEC EDGAR filings by company, date range, and form type.

Search Filings

Search for SEC filings by ticker symbol, CIK, date range, and form type. Returns filing metadata including accession numbers, URLs, and filing dates. Use this to find specific filings before analyzing their content or financial data.

Operation Type: Query (Read)

Parameters:

  • ticker string (nullable): Ticker symbol of the company, e.g., AAPL for Apple Inc.
  • cik string (nullable): CIK (Central Index Key) of the filer. Remove leading zeros, e.g., 320193 instead of 0000320193
  • formTypes array of strings (nullable): Array of form types to filter by, e.g., ["10-K", "10-Q", "8-K"]. Leave null to search all form types
  • startDate string (required): Start date of the search range in YYYY-MM-DD format, e.g., 2023-01-01
  • endDate string (required): End date of the search range in YYYY-MM-DD format, e.g., 2023-12-31
  • page string (nullable): Page number for pagination, starting from 1. Each page returns up to 50 results. Leave null for first page

Returns:

  • total object: Total count information
    • value number: Total number of matching filings. Capped at 10,000
    • relation string: If "gte", there are more than 10,000 matches. If "eq", value is exact count
  • filings array of objects: Array of filing metadata objects matching the search criteria
    • accessionNo string: Accession number of the filing, e.g., 0001193125-23-265616
    • cik string: CIK of the filer with leading zeros removed
    • ticker string (nullable): Ticker symbol of the filing company, null if not publicly traded
    • companyName string: Name of the filing company or person
    • companyNameLong string: Long version of company name including filer type
    • formType string: EDGAR filing form type, e.g., 10-K, 10-Q, 8-K
    • filedAt string: Filing acceptance date and time in ISO 8601 format (Eastern Time)
    • periodOfReport string (nullable): Period of report in YYYY-MM-DD format, if reported
    • description string: Description of the form
    • linkToTxt string: URL to the plain text .TXT version of the filing
    • linkToHtml string: URL to the index page of the filing
    • linkToFilingDetails string: URL of the actual filing content on sec.gov

Example Usage:

{
  "ticker": "AAPL",
  "cik": null,
  "formTypes": ["10-K", "10-Q"],
  "startDate": "2023-01-01",
  "endDate": "2023-12-31",
  "page": null
}

Filing Content

Search and extract content from SEC filings.

Search Filing Content

Perform full-text search across all SEC filings and exhibits. Supports exact phrase matching, wildcards, and boolean operators. Use this to find filings containing specific keywords, phrases, or topics across all documents and attachments.

Operation Type: Query (Read)

Parameters:

  • query string (required): Search query using SEC full-text search syntax. Supports: exact phrases in quotes ("substantial doubt"), wildcards (gas*), boolean operators (OR, NOT, -), and combinations
  • ticker string (nullable): Optional: Filter by ticker symbol
  • cik string (nullable): Optional: Filter by CIK
  • formTypes array of strings (nullable): Optional: Array of form types to filter by, e.g., ["10-K", "10-Q"]
  • startDate string (required): Start date in YYYY-MM-DD format
  • endDate string (required): End date in YYYY-MM-DD format
  • page string (nullable): Page number for pagination. Each page returns up to 100 results. Leave null for first page

Returns:

  • total object: Total count information
    • value number: Total number of matching documents. Capped at 10,000
    • relation string: If "gte", there are more than 10,000 matches
  • filings array of objects: Array of search results sorted by relevance
    • accessionNo string: Accession number of the filing
    • cik string: CIK of the filer with leading zeros removed
    • ticker string (nullable): Ticker symbol, if available
    • companyNameLong string: Full name of the filing company
    • formType string: EDGAR filing form type
    • type string: Document type, e.g., 8-K, EX-99.1
    • description string: Description of the document
    • filingUrl string: URL to the filing or attachment
    • filedAt string: Filing date in YYYY-MM-DD format

Example Usage:

{
  "query": "\"artificial intelligence\" OR \"machine learning\"",
  "ticker": "MSFT",
  "cik": null,
  "formTypes": ["10-K"],
  "startDate": "2023-01-01",
  "endDate": "2023-12-31",
  "page": null
}

Extract Filing Section

Extract a specific section from a 10-K, 10-Q, or 8-K filing. Returns the cleaned text or HTML content of sections like Risk Factors (Item 1A), Management Discussion & Analysis (Item 7), etc. Use this to read specific parts of filings without loading the entire document.

Operation Type: Query (Read)

Parameters:

  • url string (required): URL to the filing (linkToFilingDetails from search results). Must be a valid SEC EDGAR URL ending in .htm or .html
  • section string (required): Section to extract. For 10-K: "1", "1A", "1B", "2", "3", "4", "5", "6", "7", "7A", "8", "9", "9A", "9B", "10", "11", "12", "13", "14", "15". For 10-Q Part I: "part1item1", "part1item2", "part1item3", "part1item4". For 10-Q Part II: "part2item1", "part2item1a", "part2item2", "part2item3", "part2item4", "part2item5", "part2item6". For 8-K: "1-1", "1-2", "1-3", "1-4", "2-1", "2-2", "2-3", "2-4", "2-5", "2-6", "3-1", "3-2", "3-3", "4-1", "4-2", "5-1", "5-2", "5-3", "5-4", "5-5", "5-6", "5-7", "5-8", "6-1", "6-2", "6-3", "6-4", "6-5", "6-10", "7-1", "8-1", "9-1"
  • returnType string (default: text): Format of returned content: "text" for plain text (default) or "html" for HTML with formatting

Returns:

  • section string: The section identifier that was extracted
  • content string: Extracted section content in the requested format
  • url string: URL of the filing

Example Usage:

{
  "url": "https://www.sec.gov/Archives/edgar/data/320193/000032019323000077/aapl-20230930.htm",
  "section": "1A",
  "returnType": "text"
}

Financial Data

Extract XBRL financial data from SEC filings.

Get Financial Summary

Extract a condensed financial summary from a filing with XBRL data. Returns key metrics like revenue, net income, total assets, EPS, and a list of available financial statements. Use this for a quick overview before requesting detailed statements.

Operation Type: Query (Read)

Parameters:

  • accessionNo string (nullable): Accession number of the filing, e.g., 0001564590-21-004599. Provide either accessionNo or htmUrl
  • htmUrl string (nullable): URL to the filing ending with .htm or .html. Provide either accessionNo or htmUrl

Returns:

  • accessionNo string: Accession number of the filing
  • formType string: Form type of the filing
  • periodOfReport string (nullable): Period of report
  • summary object: High-level financial metrics extracted from XBRL
    • revenue string (nullable): Total revenue for the period
    • netIncome string (nullable): Net income for the period
    • totalAssets string (nullable): Total assets at period end
    • totalLiabilities string (nullable): Total liabilities at period end
    • shareholdersEquity string (nullable): Shareholders equity at period end
    • earningsPerShareBasic string (nullable): Basic earnings per share
    • earningsPerShareDiluted string (nullable): Diluted earnings per share
  • availableStatements array of strings: List of available financial statement names in the XBRL data

Example Usage:

{
  "accessionNo": "0001564590-21-004599",
  "htmUrl": null
}

Get Financial Statements

Extract detailed XBRL financial statements from a filing. Specify which statements to retrieve (e.g., BalanceSheets, StatementsOfIncome, StatementsOfCashFlows). Returns complete XBRL-JSON data for in-depth financial analysis.

Operation Type: Query (Read)

Parameters:

  • accessionNo string (nullable): Accession number of the filing. Provide either accessionNo or htmUrl
  • htmUrl string (nullable): URL to the filing ending with .htm or .html. Provide either accessionNo or htmUrl
  • statements array of strings (required): Array of statement names to retrieve, e.g., ["StatementsOfIncome", "BalanceSheets", "StatementsOfCashFlows"]. Common names: StatementsOfIncome, BalanceSheets, StatementsOfCashFlows, StatementsOfShareholdersEquity

Returns:

  • accessionNo string: Accession number of the filing
  • formType string: Form type of the filing
  • periodOfReport string (nullable): Period of report
  • statements object: Object mapping statement names to their XBRL-JSON data

Example Usage:

{
  "accessionNo": null,
  "htmUrl": "https://www.sec.gov/Archives/edgar/data/320193/000032019323000077/aapl-20230930.htm",
  "statements": ["StatementsOfIncome", "BalanceSheets", "StatementsOfCashFlows"]
}

Common Use Cases

Financial Analysis:

  • Extract and analyze quarterly and annual financial statements
  • Track revenue, earnings, and key metrics over time
  • Compare financial performance across reporting periods
  • Download complete XBRL data for detailed analysis

Regulatory Monitoring:

  • Search for specific risk disclosures across companies
  • Monitor 8-K filings for material events and announcements
  • Track changes in risk factors (Item 1A) between filings
  • Find filings containing specific keywords or topics

Investment Research:

  • Research company financials before making investment decisions
  • Extract Management Discussion & Analysis sections for insights
  • Monitor insider transactions and material events
  • Analyze industry trends across multiple companies' filings

Compliance & Due Diligence:

  • Verify company financial information from official SEC sources
  • Extract specific sections for compliance review
  • Search historical filings for specific disclosures
  • Track filing patterns and regulatory compliance