Obscura

Fund Rule 497(j) No-Change Certifications

Rule 497(j) certifications: a fund's dated statement that its most recent registration-statement amendment is unchanged from what it would otherwise have had to re-file, together with a pointer to the filing it is unchanged since. One row per certification letter, with the registrants and fund series it covers.

edgar_fund_no_change_certifications - the dataset name to pass to the Obscura API.

Category Regulatory Columns 17 Refresh Every 6 hours Entity key cik Point-in-time available_date

What one row means

One certification filed under **Securities Act Rule 497(j)** - a fund's formal statement that its current prospectus and Statement of Additional Information **do not differ** from the ones already on file, so no new definitive prospectus is being filed under Rule 497(b)/(c). The document is one sentence and carries no financial content, so this table is deliberately narrow: it stores the FACT of the certification and the things the sentence points at - the registrant, the registration, the funds (series and share classes) it covers, and the prior filing certified against. That is the useful part. A consumer holding a fund's last `485BPOS`/`497` can read a 497J as a dated "still current" stamp WITHOUT re-reading or diffing the prospectus, and the absence of one is equally informative. The certifications cluster hard on the annual-update deadline - 582 on 2026-05-01 against 5 on a typical day - which is itself the fund industry's prospectus-refresh calendar. See `docs/datasets/edgar_fund_no_change_certifications.md`.

One row per One row per Rule 497(j) certification, keyed by its ACCESSION. One certification = ONE letter, however many registrants or funds it covers: the other registrants are a child list (co_registrants) and the funds are a child list (series_and_classes), never extra rows. The key is the accession and NOT the archive path because EDGAR indexes one filing under one path PER associated CIK - measured on master.20260501.idx (the May-1 annual-update peak, 582 497J index rows): 571 accessions have one path, one has three, and 0001999371-26-009621 has EIGHT, because T. Rowe Price certified for eight separate tax-free fund corporations in a single letter. Keying on the path would store that one certification eight times..

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_fund_no_change_certifications: filing_join: available_date is the EDGAR DISSEMINATION day, taken from the bronze object's own day partition, never from the header's FILED AS OF DATE. A Rule 497(j) certification IS a publication - there is no embargo and no next-day batch - so the act and its availability are the same act and there is no occurred_on. prior_filing_date is a REFERENT (the day a different filing was made) and is deliberately its own column: dating this row from it would claim the certification existed on the day of the thing it points at.

Refresh cadence

Obscura refreshes edgar_fund_no_change_certifications 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 - 17 columns

The full public column list for edgar_fund_no_change_certifications, with the meaning of every field. The same schema is served unauthenticated at https://api.obscura.trade/v1/catalog/edgar_fund_no_change_certifications.

ColumnTypeDescription
accessiontext · not nullPK. SEC accession number of the certification, e.g. `0001999371-24-004783`. The key is the accession, not the archive path: a fund-family certification is listed once per registrant CIK it covers.
filenametext · not nullThe PRIMARY registrant's SEC EDGAR Archives path for this certification (`edgar/data/{cik}/{accession}.txt`), derived from the payload's own first `FILER:` block rather than from whichever index row was walked - so it is the same value on every ingestion path. The join key into `edgar_filings`.
available_datedatePublic availability date: the EDGAR DISSEMINATION day, recovered from the bronze object's day partition. The certification IS a publication, so this is both when it happened and when it could be read; it is the point-in-time anchor and the only date a backtest may key on.
accepted_attimestamp with time zoneWhen SEC ACCEPTED the submission (`<ACCEPTANCE-DATETIME>`), US-Eastern wall clock stored under a UTC type. Deliberately NOT the availability date: an after-hours acceptance is disseminated the next morning (`0001580642-26-002810`, accepted 2026-04-30 17:45:54, stamped and disseminated 2026-05-01). NULL on a row ingested from the dissemination feed rather than from Archives - the feed's PDS envelope does not carry this stamp, so a NULL here is a fact about the envelope and not a decoder gap.
filed_as_ofdateSEC's LEGAL filing date for the certification (`FILED AS OF DATE`). Kept for parity with `edgar_filings`; never an availability date - SEC back-dates it on 4.88 % of filings corpus-wide.
cikbigintCentral Index Key of the PRIMARY registrant - the trust, fund corporation or insurance separate account making the certification. From the first `FILER:` block.
company_nametextPrimary registrant's name as EDGAR conforms it, e.g. `WESMARK FUNDS`, `SmartTrust 654`, `VARIABLE ANNUITY ACCOUNT FIVE`.
state_of_incorporationtextPrimary registrant's state of organisation from its own header block, e.g. `MA`, `NY`, `DE`. NULL when the header states none, which happens on newly-formed unit investment trusts.
co_registrantsjsonb · not nullJSON array of `{cik, name, file_number}` for the SECOND and subsequent registrants named in the header - the other fund corporations covered by the same letter. Empty array on a single-registrant certification, which is the overwhelming majority.
co_registrant_countinteger · not nullNumber of co-registrants (0 on a plain certification, 7 on the T. Rowe Price fund-family letter). A cheap fan-out proxy, and the guard against turning one certification into eight - the migration CHECKs it equals the array's length.
file_numbertextThe primary registrant's Securities Act file number from the header (`SEC FILE NUMBER:`), e.g. `333-16157`, `002-73948`, `033-05609`. The registration the certification is about, and the join to the `485BPOS`/`497` filed against it and to any `EFFECT` notice on the same number.
investment_company_file_numbertextThe registrant's **Investment Company Act** file number (`811-07925`) as the letter's own text states it. Not in the SGML header - the header carries only the 1933 Act number - so this is the one identifier that must be read out of the prose, and it is the join to `edgar_nport_filings` and the rest of the '40-Act fund universe. NULL on half the probed sample (20/40 filings across 2015/2021/2024/2026), because that many letters simply do not state it.
certified_formtextThe form of the REGISTRATION STATEMENT being certified, from the letter's own text: `N-1A` (open-end fund), `N-4` (variable annuity), `N-6` (variable life), `S-6` (unit investment trust), `N-14`, `N-2`. This is what separates a UIT certification from a mutual-fund one. NULL when the letter says only "the most recent amendment to the Registration Statement" without naming a form - 22 of 40 probed filings, concentrated in the insurance separate-account letters that dominate the 1 May annual-update peak. Never `497J` - that is the certification's own form, and the migration CHECKs it.
series_and_classesjsonb · not nullJSON array of `{series_id, series_name, class_id, class_name, ticker, block}` - every fund and share class the certification covers, from the submission's `<SERIES-AND-CLASSES-CONTRACTS-DATA>` header block, in the header's own order. `ticker` is NULL for insurance separate-account contracts, which are not exchange-traded. `block` is `existing` | `new` | `merger`, read from the enclosing tag rather than assumed. Empty array on a unit investment trust, which has no series at all.
series_countinteger · not nullNumber of DISTINCT series (funds) the certification covers - 0 for a UIT, 1 for a single trust, 15 for the T. Rowe Price tax-free family letter. The headline "how many prospectuses does this one sentence keep current".
prior_filing_datedateThe day the filing being certified against was itself filed, from the letter's text ("the most recent amendment … was filed electronically with the Commission on April 12, 2024"). A REFERENT, not this row's event date, and the migration CHECKs it is never after `available_date`. NULL on 17 of 40 probed filings, because that many letters state only that the amendment "has been filed electronically" and give no date - an absence in the source, not a parser gap.
prior_filing_accessiontextAccession of the filing being certified against, when the letter states one ("(Accession No. 0001580642-26-002669)"). The exact filing-level link back to the prospectus this certification says is unchanged. Rare - 5 of 40 probed filings - but exact where present, and never the certification's own accession.

Access edgar_fund_no_change_certifications

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_fund_no_change_certifications",
    symbols=["NVDA", "AAPL"],
    start="2024-01-01",
)

Create a free account Browse all 122 datasets

Frequently asked questions

What is in the edgar_fund_no_change_certifications dataset?

Rule 497(j) certifications: a fund's dated statement that its most recent registration-statement amendment is unchanged from what it would otherwise have had to re-file, together with a pointer to the filing it is unchanged since. One row per certification letter, with the registrants and fund series it covers. One certification filed under **Securities Act Rule 497(j)** - a fund's formal statement that its current prospectus and Statement of Additional Information **do not differ** from the ones already on file, so no new definitive prospectus is being filed under Rule 497(b)/(c). The document is one sentence and carries no financial content, so this table is deliberately narrow: it stores the FACT of the certification and the things the sentence points at - the registrant, the registration, the funds (series and share classes) it covers, and the prior filing certified against. That is the useful part. A consumer holding a fund's last `485BPOS`/`497` can read a 497J as a dated "still current" stamp WITHOUT re-reading or diffing the prospectus, and the absence of one is equally informative. The certifications cluster hard on the annual-update deadline - 582 on 2026-05-01 against 5 on a typical day - which is itself the fund industry's prospectus-refresh calendar. See `docs/datasets/edgar_fund_no_change_certifications.md`.

How do I avoid look-ahead bias with edgar_fund_no_change_certifications?

Filter on edgar_fund_no_change_certifications.available_date, the day the publisher made the row public. For this dataset that date is derived as follows - filing_join: available_date is the EDGAR DISSEMINATION day, taken from the bronze object's own day partition, never from the header's FILED AS OF DATE. A Rule 497(j) certification IS a publication - there is no embargo and no next-day batch - so the act and its availability are the same act and there is no occurred_on. prior_filing_date is a REFERENT (the day a different filing was made) and is deliberately its own column: dating this row from it would claim the certification existed on the day of the thing it points at. 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_fund_no_change_certifications?

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_fund_no_change_certifications". The column schema is public at https://api.obscura.trade/v1/catalog/edgar_fund_no_change_certifications.

Can I filter edgar_fund_no_change_certifications by company or symbol?

Yes. edgar_fund_no_change_certifications carries cik, the column the API's symbols filter resolves against.

How often is edgar_fund_no_change_certifications updated?

Obscura refreshes edgar_fund_no_change_certifications 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.

Related datasets

CFTC Commitments of Traders (COT)The CFTC's weekly Commitments of Traders report: how commercial, non-commercial and small traders are positioned in each… EPA Environmental Enforcement ActionsEnvironmental enforcement actions and penalties from the EPA's ECHO database. One row per case, with the facility, the s… EPA Regulated Facilities and ComplianceEPA-regulated facilities and their compliance history, from ECHO: one row per facility, with location, industry, permit … 13F Filing MetadataMetadata for every 13F report, the quarterly filing where large institutional managers list their U.S. equity holdings. … 13F Institutional HoldingsThe line-item positions inside each 13F: which manager held which security, and how much, each quarter. Deep history is … 13F Other Included ManagersWhich other manager reports a fund's 13F holdings, from the 13F-NT notices managers file when their positions appear on … SEC 8-K Item Codes and Material EventsThe item numbers reported on each 8-K (5.02 officer changes, 2.01 acquisitions, 1.01 material agreements, and so on), so… Asset-Backed Securities Distributions (Form 10-D)Form 10-D distribution reports for asset-backed securities: which trust paid out, for which distribution period, its dep…