EDGAR 8-K Items
The item numbers reported on each 8-K (5.02 officer changes, 2.01 acquisitions, 1.01 material agreements, and so on), so you can tell what a filing disclosed without opening it.
edgar_8k_items — the dataset name to pass to the Obscura API.
What one row means
One 8-K filing (deduped across its constituent documents) as surfaced by EDGAR full-text search, carrying the set of 8-K item codes the filing reported. Item 3.02 = unregistered equity sales, surfaced as `unregistered_sale` in the `edgar_dilution_events` view.
One row per One row per 8-K accession number (accn).
Point-in-time availability
Every Obscura dataset carries available_date: the calendar day the publisher made the row
available, day-of, with no session rounding. It is the one column a backtest filters on, and it means the
same thing on every dataset in the catalog.
For edgar_8k_items: published: available_date = EDGAR filing/dissemination date (EFTS file_date), the day the 8-K became publicly retrievable.
Refresh cadence
Obscura refreshes edgar_8k_items every 6 hours — the most frequent scheduled job that re-collects or re-exports it. This is Obscura's own pipeline cadence, not the upstream publisher's release schedule; when a row became public is recorded per row in available_date.
Schema — 12 columns
The full public column list for edgar_8k_items, with the meaning of every field. The same
schema is served unauthenticated at https://api.obscura.trade/v1/catalog/edgar_8k_items.
| Column | Type | Description |
|---|---|---|
| accn | text · not null | SEC EDGAR accession number of the 8-K filing, e.g. "0002001557-26-000144"; primary key, dedup key across the filing's documents (from EFTS `_source.adsh`). |
| cik | bigint · not null | SEC Central Index Key of the filer, parsed from EFTS `_source.ciks[0]` with leading zeros stripped to an integer. |
| available_date | date · not null | EDGAR filing/dissemination date of the 8-K (from EFTS `file_date`); the day the filing became public. This is the public-availability date, not the underlying material-event date. |
| items | jsonb · not null | JSON array of 8-K item codes reported by the filing, e.g. ["3.02", "9.01"] (from EFTS `_source.items`); the classification dimension consumers key on (3.02 = unregistered equity sale, etc.). |
| display_name | text | Nullable filer display string from EFTS `_source.display_names[0]`, typically "Company Name (TICKER) (CIK ...)". |
| period_ending | date | 8-K period-of-report / conformed material-event date (from EFTS `_source.period_ending`, `"%Y-%m-%d"`); the natural date of the underlying transaction, kept separate from `available_date` (the public filing date) per the look-ahead rule. |
| sic_code | text | SIC industry classification code of the filer (from EFTS `_source.sics[0]`, e.g. "6798"); the filer's sector/industry bucket. |
| inc_state | text | State/country of incorporation code of the filer (from EFTS `_source.inc_states[0]`, e.g. "DE"); the legal-jurisdiction attribute, distinct from principal-business geography. |
| biz_state | text | Principal-business state code of the filer (from EFTS `_source.biz_states[0]`, e.g. "DC"); where the filer is physically located. |
| biz_location | text | Principal-business location string of the filer (from EFTS `_source.biz_locations[0]`, e.g. "Washington, DC"); city+state of the filer's headquarters. |
| file_num | text | SEC file number of the filer (from EFTS `_source.file_num[0]`, e.g. "333-293216"); the registration/filing identifier linking the filer's filings. |
| form | text | Specific 8-K form subtype (from EFTS `_source.form`, "8-K" vs "8-K/A"); distinguishes an original filing from an amendment, which the `root_forms` filter collapses. |
Access edgar_8k_items
Two delivery paths, one identifier. Both require an Obscura account and an active subscription; the catalog entry and the schema above are public.
import obscura
client = obscura.Client("obs_live_…")
df = client.query(
dataset="edgar_8k_items",
symbols=["NVDA", "AAPL"],
start="2024-01-01",
)
Create a free account Browse all 95 datasets
Frequently asked questions
What is in the edgar_8k_items dataset?
The item numbers reported on each 8-K (5.02 officer changes, 2.01 acquisitions, 1.01 material agreements, and so on), so you can tell what a filing disclosed without opening it. One 8-K filing (deduped across its constituent documents) as surfaced by EDGAR full-text search, carrying the set of 8-K item codes the filing reported. Item 3.02 = unregistered equity sales, surfaced as `unregistered_sale` in the `edgar_dilution_events` view.
How do I avoid look-ahead bias with edgar_8k_items?
Filter on edgar_8k_items.available_date, the day the publisher made the row public. For this dataset that date is derived as follows — published: available_date = EDGAR filing/dissemination date (EFTS file_date), the day the 8-K became publicly retrievable. A query of the form WHERE available_date <= '<as-of date>' never sees a row before it existed.
In what formats can I get edgar_8k_items?
As a Parquet bulk export (POST https://api.obscura.trade/v1/download) or as JSON from the typed query API (POST https://api.obscura.trade/v1/query), both with dataset="edgar_8k_items". The column schema is public at https://api.obscura.trade/v1/catalog/edgar_8k_items.
Can I filter edgar_8k_items by company or symbol?
Yes. edgar_8k_items carries cik, the column the API's symbols filter resolves against.
How often is edgar_8k_items updated?
Obscura refreshes edgar_8k_items on a every 6 hours schedule — that is the most frequent scheduled job that re-collects or re-exports the table. It is Obscura's own pipeline cadence, not the upstream publisher's release schedule; when the publisher makes a row available is described by the availability rule above, and is recorded per row in available_date.