Skip to content

🏦 sec

Securities and Exchange Commission financial data including XBRL filings (10-K, 10-Q, 8-K), insider trading transactions, stock prices, and earnings transcripts. Enables financial analysis, regulatory compliance monitoring, and investment research across public companies. Uses document-based ETL to extract multiple tables from each SEC filing. Stock prices can be seeded from a bulk Stooq zip archive stored in S3, with fallback to the HTTP API for missing or newly-listed tickers.

16 datasets · 174 columns

filing_metadata · table

SEC filing metadata for all public company submissions. Forms include: 10-K (annual report with audited financials), 10-Q (quarterly report), 8-K (current report for material events like earnings, M&A, executive changes), DEF 14A (proxy statement for shareholder meetings), and Form 3/4/5 (insider trading). Use for: identifying available filings, filtering by company/date/type, joining to other SEC tables, and tracking filing history.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_type string no Type of SEC filing (e.g., '10-K', '10-Q', '8-K', 'DEF 14A')
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
primary_document string yes Primary document filename in the filing
company_name string yes Legal name of the registrant company
period_of_report string yes Reporting period end date (ISO 8601 format)
acceptance_datetime string yes Date and time the filing was accepted by SEC
file_size long yes Total size of filing in bytes
fiscal_year int yes Fiscal year of the reporting period
state_of_incorporation string yes State or jurisdiction of incorporation
fiscal_year_end string yes Fiscal year end date (MMDD format)
business_address string yes Physical business address of the company
mailing_address string yes Mailing address for correspondence
phone string yes Company phone number
sic_code string yes Standard Industrial Classification code
irs_number string yes IRS Employer Identification Number (EIN)
ticker string yes Stock ticker symbol (if available)

financial_line_items · table

XBRL financial facts extracted from 10-K (annual) and 10-Q (quarterly) filings. Contains structured data for balance sheet, income statement, and cash flow items using standardized US-GAAP taxonomy (e.g., Assets, Revenue, NetIncome). Use for: financial ratio analysis, trend analysis across quarters/years, peer comparisons, screening for specific metrics, and building financial models.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
concept string no XBRL concept name (e.g., 'us-gaap:Assets', 'dei:EntityRegistrantName')
context_ref string no Reference to context element defining the reporting period and entity
unit_ref string yes Raw unit reference as reported in the source XBRL document
unit_ref_normalized string yes Canonical unit (e.g. USD, shares, pure, usdPerShare); equals unit_ref when no normalization rule matches
value string yes Text value of the fact element
full_text string yes Full text content for TextBlock elements (narrative disclosures)
value_numeric double yes Best-effort numeric representation; not the original filing value
value_numeric_method string yes Provenance of value_numeric — direct, heuristic, or null if no conversion possible
period_start string yes Start date of the reporting period (ISO 8601 format)
period_end string yes End date of the reporting period (ISO 8601 format)
is_instant boolean no Whether this is an instant-in-time fact (true) or duration fact (false)
footnote_refs string yes Comma-separated list of footnote references
element_id string no Unique element identifier for linking to other elements
decimals int yes Decimal precision of the numeric value
scale int yes Scale factor applied to the value

filing_contexts · table

XBRL context definitions from 10-K and 10-Q filings that specify the reporting period and entity for each financial fact. Contexts define whether a value is a point-in-time snapshot (instant) or covers a duration (e.g., fiscal quarter). Use for: understanding the time period of financial data, segment-level analysis, and resolving dimensional breakdowns (e.g., revenue by geography or product line).

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
context_id string no Unique identifier for this context element
entity_identifier string no Entity identifier (typically CIK number)
entity_scheme string yes Entity identifier scheme (e.g., 'http://www.sec.gov/CIK')
period_start string yes Start date of the reporting period (ISO 8601 format)
period_end string yes End date of the reporting period (ISO 8601 format)
period_instant string yes Instant date for point-in-time facts (ISO 8601 format)
segment string yes Segment dimension information (XML fragment)
scenario string yes Scenario dimension information (XML fragment)

mda_sections · table

Management Discussion & Analysis (MD&A) text from 10-K (Item 7) and 10-Q (Item 2) filings. MD&A is a required narrative section where management explains the company's financial condition, results of operations, and known risks/uncertainties. Use for: sentiment analysis, risk factor monitoring, NLP-based insights, comparing management tone across periods, and identifying forward-looking statements.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
section string no Item section identifier (e.g., 'Item 7', 'Item 7A')
subsection string yes Immediate heading enclosing this chunk (null when no heading context)
section_path string yes Full heading breadcrumb as ' > '-delimited string for cluster analysis
paragraph_continuation boolean yes True when this chunk is a continuation of an oversized split element
paragraph_number int no Sequential paragraph number within the subsection
paragraph_text string no Full text content of the paragraph
footnote_refs string yes Comma-separated list of footnote references

xbrl_relationships · table

XBRL linkbase relationships from 10-K and 10-Q filings showing how financial concepts connect (e.g., Assets = CurrentAssets + NoncurrentAssets). Includes calculation links (mathematical rollups) and presentation links (display order). Use for: validating financial statement math, reconstructing statement hierarchy, understanding concept relationships, and building automated financial models.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
linkbase_type string no Type of linkbase relationship (presentation, calculation, definition)
arc_role string no Arc role defining relationship type (e.g., parent-child, summation-item)
link_role string yes Role URI of the extended link element containing this arc (e.g., presentation role URL)
from_concept string no Source concept in the relationship
to_concept string no Target concept in the relationship
weight double yes Calculation weight (+1 for addition, -1 for subtraction)
order double yes Presentation order for display sequencing
preferred_label string yes Preferred label role for presentation

insider_transactions · table

Insider trading transactions from Form 3 (initial ownership), Form 4 (changes in ownership within 2 days), and Form 5 (annual summary). Required filings by company officers, directors, and 10%+ shareholders showing their buy/sell activity. Use for: tracking insider sentiment, identifying unusual trading patterns, corporate governance analysis, and generating buy/sell signals based on insider activity.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
filing_type string no Type of SEC filing (e.g., '10-K', '10-Q', '8-K', 'DEF 14A')
reporting_person_cik string no CIK of the reporting insider
reporting_person_name string no Name of the reporting insider
is_director boolean no Whether the insider is a director
is_officer boolean no Whether the insider is an officer
is_ten_percent_owner boolean no Whether the insider owns 10% or more of the company
officer_title string yes Title of the officer (if applicable)
transaction_date string yes Date of the transaction (ISO 8601 format) - null for holdings
transaction_code string yes Transaction code (P=purchase, S=sale, A=award, H=holding, I=initial appointment with no securities)
security_title string yes Title of the security transacted
shares_transacted double yes Number of shares bought or sold (null for holdings)
price_per_share double yes Price per share in the transaction
shares_owned_after double yes Shares beneficially owned after the transaction
acquired_disposed_code string yes Whether shares were acquired (A) or disposed (D) - null for holdings
ownership_type string yes Type of ownership (direct or indirect)
footnotes string yes Additional footnotes and explanations

institutional_holdings · table

Institutional investment manager holdings from Form 13F-HR. Filed quarterly by managers with $100M+ in qualifying assets. Contains per-security positions with share counts, market value, and voting authority. Known as "whale watching" data — tracks positions of Berkshire Hathaway, Bridgewater, Renaissance, etc. Use for: tracking institutional ownership changes, identifying crowded trades, monitoring activist accumulation, and building factor models.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
filing_type string no Type of SEC filing (e.g., '10-K', '10-Q', '8-K', 'DEF 14A')
manager_name string yes Name of the filing investment manager
manager_cik string yes CIK of the filing investment manager
report_period date yes Calendar quarter end date for the report (ISO 8601)
issuer_name string yes Name of the security issuer (company name)
title_of_class string yes Title/class of the security (e.g., COM, CL A, PFD)
cusip string yes CUSIP identifier (9-character)
value_thousands double yes Market value in thousands of USD
shares_or_principal double yes Number of shares or principal amount
shares_or_principal_type string yes SH for shares, PRN for principal amount
investment_discretion string yes Investment discretion (SOLE, DFND, OTR)
voting_authority_sole double yes Shares with sole voting authority
voting_authority_shared double yes Shares with shared voting authority
voting_authority_none double yes Shares with no voting authority
put_call string yes Put or Call indicator for options (null for common stock)

beneficial_ownership · table

Beneficial ownership filings from Schedule 13D (activist >5% holders) and Schedule 13G (passive >5% holders). Discloses who owns large stakes, how many shares, percent of class, source of funds, and critically — the purpose of the transaction (Item 4). 13D filers may push for M&A, board changes, or restructuring. Use for: tracking activist campaigns, monitoring ownership concentration, detecting accumulation patterns, and governance risk analysis.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
filing_type string no Type of SEC filing (e.g., '10-K', '10-Q', '8-K', 'DEF 14A')
subject_company string yes Name of the company whose shares are held
subject_cik string yes CIK of the subject company
filer_name string yes Name of the beneficial owner filing the schedule
filer_cik string yes CIK of the beneficial owner
date_of_event string yes Date of event requiring filing (ISO 8601)
title_of_class string yes Title/class of securities (e.g., Common Stock)
cusip string yes CUSIP identifier of the security
percent_of_class double yes Percent of class beneficially owned
shares_beneficially_owned double yes Number of shares beneficially owned
sole_voting_power double yes Shares with sole voting power
shared_voting_power double yes Shares with shared voting power
sole_dispositive_power double yes Shares with sole dispositive power
shared_dispositive_power double yes Shares with shared dispositive power
type_of_reporting_person string yes Type code (IN=individual, CO=corporation, IA=investment adviser, etc.)
source_of_funds string yes Source of funds (WC=working capital, BK=bank, OO=other)
purpose_of_transaction string yes Item 4 text describing intent (investment, activist, M&A, etc.)

earnings_transcripts · table

Earnings-related content from 8-K filings (Item 2.02 - Results of Operations). 8-K forms are "current reports" filed within 4 days of material events; Item 2.02 covers earnings releases with quarterly results, guidance, and press release text. Use for: earnings surprise analysis, guidance tracking, management commentary on results, and correlating announcements with stock price movements.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
year int no Filing year for Iceberg partitioning
filing_type string no Type of SEC filing (e.g., '10-K', '10-Q', '8-K', 'DEF 14A')
exhibit_number string yes Exhibit number within the filing
section_type string no Section type (prepared_remarks, qa_session)
paragraph_number int no Sequential paragraph number
paragraph_text string no Full text content of the paragraph
speaker_name string yes Name of the speaker (for Q&A sections)
speaker_role string yes Role/title of the speaker

stock_prices · table

Daily OHLCV stock price data for SEC-reporting companies. Stooq API source (bulk S3 cache checked first via StooqBulkProxy). Use for: event studies, volatility analysis, price correlation studies.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
ticker string no Stock ticker symbol in Stooq format (e.g., 'AAPL.US', 'MSFT.US')
date string no Trading date in ISO 8601 format (YYYY-MM-DD)
open double yes Opening price for the trading day
high double yes Highest price during the trading day
low double yes Lowest price during the trading day
close double yes Closing price for the trading day
volume long yes Number of shares traded during the day
adjusted_close double yes Closing price adjusted for splits and dividends
year int no Trading year (Iceberg partition column; present in the data and the year=*/ path)

vectorized_chunks · table

Semantic text chunks from 10-K and 10-Q filings with Jina embeddings. Text is chunked (SemanticTextChunker), enriched with context tags and cross-references (SecTextVectorizer), then normalized for temporal/monetary consistency (TextNormalizer). Embeddings computed via DuckDB quackformers. Use for: semantic similarity search, RAG Q&A, and topic clustering.

Column Type Null Description
cik string no Central Index Key (unique SEC company identifier, 10 digits zero-padded)
accession_number string no SEC accession number (unique filing identifier, format 0000000000-00-000000)
year int no Filing year for Iceberg partitioning
chunk_id string no Unique identifier for this chunk
source_type string no Origin type (mda_paragraph, footnote, risk_factor, earnings)
section string yes Parent section (e.g., 'Item 7', 'Note 1')
subsection string yes Heading immediately enclosing this chunk (e.g., 'Results of Operations')
section_path string yes Full heading breadcrumb as ' > '-delimited string for community/cluster analysis
paragraph_continuation boolean yes True when this chunk is a continuation piece of an oversized prose or atomic element
sequence int no Order within parent section
filing_date string no Date the filing was submitted to SEC (ISO 8601 format)
chunk_text string no Original text chunk before enrichment
enriched_text string no Normalized text with context tags, cross-references, and standardized temporal/monetary expressions. This is what gets embedded.
embedding array yes 384-dim snowflake-arctic-embed-xs embedding via GPU bulk generation
content_type string yes Content classification (paragraph, table, list, heading, mixed)
financial_concepts string yes Comma-separated list of referenced financial concepts
exhibit_number string yes Exhibit number within the filing (for earnings source_type)
speaker_name string yes Name of speaker for Q&A earnings sections
speaker_role string yes Role/title of speaker (CEO, CFO, Analyst, etc.)
paragraph_number int yes Original paragraph number in earnings_transcripts for traceability

latest_filings · view

Most recent filing of each type per company

View — columns are resolved by the query engine at runtime.

Revenue line items across quarters for trend analysis

View — columns are resolved by the query engine at runtime.

insider_activity_summary · view

Aggregated insider trading activity by company

View — columns are resolved by the query engine at runtime.

financial_facts · view

Normalized financial line items with canonical metric names and scaled dollar values. Joins financial_line_items against an inline concept_aliases mapping to resolve XBRL concept variants (e.g. both us-gaap:Revenues and us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax map to canonical_name=revenue). value_dollars applies the scale factor so callers never need to handle value_numeric * POWER(10, scale) themselves.

View — columns are resolved by the query engine at runtime.

company_financial_profile · view

Denormalised company identity: SEC filing metadata joined to GLEIF CIK-LEI bridge and GLEIF entity registry. One row per company — enables CIK-to-LEI resolution and cross-border corporate entity analysis.

View — columns are resolved by the query engine at runtime.