What's coming to 3spread
The datasets and endpoints we're working on, top to bottom. This is the plan, but as things evolve during the Public Beta our priorities may shift based on usage and feedback.
Live and available in Public Beta today
The backbone: a unified filing index, issuer and entity records, and coverage and freshness endpoints so you always know what's available.
- List and filter filings by entity, ticker, form type, SIC, and date (/v1/filings)
- Entity lookups by CIK plus coverage by issuer or filing family (/v1/entities, /v1/coverage)
- Freshness and change feeds (/v1/data-as-of, /v1/changes/{family})
- History spans the last 5 years at launch while we validate performance and quality
Standardized insider ownership and transaction data across Forms 3, 4, and 5.
- Transaction stream filterable by issuer, owner, transaction code, and date (/v1/insiders/transactions)
- Owner profiles, biographies, and per-filing detail (/v1/insiders/owners, /biography, /{filing_id})
- Derived buy/sell ratio endpoint (/v1/insiders/buy-sell-ratio)
Institutional positions and quarter-over-quarter changes from 13F filings.
- Holdings filterable by filer and security (/v1/institutional-holdings/holdings)
- Filing-level detail and entity index (/v1/institutional-holdings, /entities, /{filing_id})
Beneficial ownership stakes and intent from Schedule 13D and 13G filings.
- Ownership filings with entity and per-filing detail (/v1/beneficial-ownership, /entities, /{filing_id})
Portfolio holdings, fund census, money-market detail, and proxy voting records across the major fund filing types.
- Fund portfolio holdings stream and census (/v1/fund-portfolios/holdings, /v1/fund-census)
- Money-market fund NAV, flows, liquidity, and securities (/v1/money-market-funds/*)
- Proxy voting records (/v1/proxy-votes)
Private offerings, Reg A+ offerings, proposed insider sales, and registration statements.
- Form D private offerings filterable by issuer, industry, fund type, and offering size (/v1/private-offerings)
- Reg A+ offerings and Form 144 proposed sales (/v1/reg-a-offerings, /v1/proposed-sales)
- Registration statements across S-1, S-3, S-4, and more (/v1/registration-statements)
What we're preparing to release
The start of our textual-data coverage: parsed, sectioned text from registration statements.
- Form types include S-1, S-3, S-4, S-11, F-1, and F-3
- Prospectus sections (risk factors, business, MD&A, use of proceeds, and more), split out and consistently labeled across filers
- Narrative text and embedded tables captured separately
Extending history beyond the initial 5-year window, growing in blocks of 2 to 4 years as coverage expands.
- Each block lands as we apply community-reported fixes and review data quality
- Backfilling and re-processing run during off-peak hours to keep the live API fast
- Prioritized by real usage and feedback
On the horizon
A frozen-in-time sample dataset of standardized financial statements, released as an early proof of concept.
- Lets the community help us assess our XBRL parsers and the pipeline that re-spreads financials into sector-based schemas
- A deliberate preview to validate quality and performance before a full, live release
Sectioned, parsed text from periodic reports and their amendments, in the same shape as registration statements.
- 10-K, 10-Q, and their associated amendments
- Sections like MD&A, risk factors, legal proceedings, and business descriptions, consistently labeled across filers
- Narrative text and embedded tables captured separately
Additional compute capacity is pending deployment to our data center when load and usage demand it. This may require brief downtime during the Public Beta but will massively improve capacity.
- Better load distribution across our hardware
- Improved, lower latency on our APIs
Proxy statements as both structured data and parsed text.
- Structured: named-executive compensation, board, and proposal data
- Textual: sectioned proxy narrative, consistently labeled
Material events and their item codes, structured and parsed from 8-K filings.
- Event stream by issuer and item code
- Headline, body, and exhibit capture
We've been building for dozens more core SEC filing types than what you see here, and testing, validating, backfilling, and releasing each one takes time, so we'll keep this page updated as new datasets and tools are ready to roll out, or find their place on the roadmap.
Shape what's next. The fastest way to move a filing type or tool up the queue is to ask for it. Tell us what you need on Discord or through support.
Issues identified from a user report during Public Beta.
Reported Jun 30, 2026
Issue
figi is null on every Form 13F holdings row.
Status
CUSIPs are present, so FIGI isn't functionally required, but it would improve query-ability. We're looking into the best resolution.
Reported Jun 30, 2026
Issue
The /filings aggregation view returns period_of_report=null for all forms.
Status
A rollup table went stale between other migrations. We'll run a migration to rebuild it.
Reported Jun 29, 2026
Issue
Almost every Schedule 13 statement was being flagged is_valid=false, with only a few exceptions.
Status
Implemented a fix that pushed is_valid=true rates to 82%, with additional adjustments still pending.
Reported Jun 29, 2026 · Fixed Jun 30, 2026
Issue
Extreme dates pulled from source data weren't always caught before they reached the API.
Status
Added additional date sanity checks to the pipeline to handle date extremes extracted from source data.
Reported Jun 29, 2026
Issue
registrant_name and series_name are null on roughly 83% of Form N-MFP items.
Status
Determined to be a source-quality issue. A refetch and a modified parser are pending, to run when time and load allow.
Reported Jun 29, 2026
Issue
On fund-portfolios holdings, lei falls through the pipeline as the literal string "N/A" instead of being normalized to null.
Status
Pending a fix. We need to add normalization to the pipeline and migrate.
Reported Jun 29, 2026 · Fixed Jun 30, 2026
Issue
The insiders/transactions endpoint returned a 5XX error instead of a 4XX when a date window was provided without an entity filter.
Status
Applied the appropriate filter handling so the endpoint now returns a proper 4XX.
Reported Jun 28, 2026 · Fixed Jun 30, 2026
Issue
Markup was leaking into the issuer_name, names, and cusip fields on Schedule 13 filings.
Status
Added regex to strip the markup and removed all corrupted rows, about 17% of the SC 13 dataset.
Reported Jun 28, 2026 · Fixed Jun 30, 2026
Issue
event_date and period_of_report on Schedule 13 filings carried latent null and erroneous date values.
Status
Repopulated event_date and period_of_report across the entire SC 13 dataset to clear the nulls and bad dates, and added handlers in the pipeline to mitigate similar issues going forward.
Reported Jun 28, 2026 · Fixed Jun 29, 2026
Issue
form_type values varied across Schedule 13 filings, because filers submit against old or unofficial specs that produce divergent labels.
Status
Modified our parsers and added regex and text-cleaning to normalize these to the standard SC 13X nomenclature. It now applies across the entire dataset.
Reported Jun 28, 2026 · Fixed Jun 29, 2026
Issue
Some entities were misclassified as is_human=true.
Status
Confirmed a real bug. We adjusted our classifier and ran a full repass over the filer dataset; on a sampled audit, classification accuracy rose from an estimated ~82% to ~98%.
Detail
The SEC doesn't expose any single, reliable attribute for telling whether a filer is an individual or an entity. We run our own classifier model over a large set of base and derived features to make that call, so accuracy here is something we keep refining.
Reported Jun 28, 2026 · Fixed Jun 29, 2026
Issue
All Regulation A items were returning is_valid=false.
Status
Refactored the Reg A validator and reprocessed all Reg A items to clear the bug. The root cause was the validator reading valid numeric strings as non-numeric and flagging correct data as suspect.
Reported Jun 28, 2026 · Fixed Jun 28, 2026
Issue
Some filers submitted improbable filing dates, including forms dated to the years 5322 and 2045.
Status
Reviewed and adjusted our validator boundaries for improbable dates, and updated the rollup tables behind these endpoints so the bad values no longer populate. We can't identify the actual source date in these cases.
Detail
We thought this was a pretty funny one.
Reported Jun 28, 2026
Issue
money_market_fund_category on Form N-MFP is stored as a CSV, which causes high latency and slow response times when querying that attribute.
Status
Pending migration to a more efficient data structure.
Reported Jun 28, 2026 · Fixed Jun 29, 2026
Issue
The window cap on the /securities endpoint wasn't documented.
Status
Documented the window cap in the API reference.
Have something to report? Reach out through support or on Discord.
Good to know
Questions and quirks worth understanding. Not bugs, just how the data behaves.
Question
Does is_valid=false mean the data is bad?
Answer
Not necessarily. The flag is a feature, not a defect: filings marked is_valid=false are an expected output of our pipelines. We're always improving, but the occasional invalid flag will surface. Keep telling us where you find them, especially unusual clusters buried deep in the data that we'd otherwise miss!
Detail
is_valid is the output of our internal validators, and it can mean different things depending on the filing type, the processor's spec, and the criteria we flag against. is_valid=false doesn't mean the data is bad across the board; it means something fell outside the normal range for that population. Some filings simply resist clean parsing, so this stays an evolving process, and we keep the flag exposed precisely so that if you see it showing up unusually often deep in a dataset, you can let us know.
Question
Why can't I find a filing I know was submitted to the SEC?
Answer
Thanks for the heads-up, and please keep reporting these small holes in the data. We're working with several terabytes spanning more than a decade and tens of millions of filings, so catching every missing piece on our own is genuinely hard, which is why reports like yours help. It's usually one of a few things: the filing didn't extract from the SEC cleanly, a parser failure deadlocked it, or we missed it during downtime or a historical backfill pass.
Detail
Filings that fail to extract or parse can sit stuck in our backend for a while as we work through whatever caused the holdup. Telling us you're looking for a specific missing item is how we prioritize those fixes.
Question
Why are some amendments not linked to their original filing?
Answer
Amendments are linked heuristically, because the SEC's technical specs for many form types don't require an explicit link to the prior filing. The match rate is lower than we'd like and it matters a lot for modeling, so it's a priority. We've made notable gains and keep pushing it up, though it's especially tricky for high-volume forms where originals and amendments overlap heavily.
Detail
Current amendment-link rates for the families still climbing: SC 13 at 29%, Form D at 62%, Forms 3/4/5 at 79%, and Form 144 at 21%. Any family not listed is either approaching 100% or comes with an explicit link in the source filing's technical specs.