SEC Form D Offering Monitor - Filings & Amendment Changes
Pricing
from $3.00 / 1,000 saved observations
SEC Form D Offering Monitor - Filings & Amendment Changes
Track official Form D offerings and amendments with co-issuer deduplication, reported sales, first-sale dates and verified predecessor comparisons. Export source-linked observations and saved changes.
Pricing
from $3.00 / 1,000 saved observations
Rating
0.0
(0)
Developer
Brandt May
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
SEC Form D Offering Monitor
Turn official private-offering notices into a review queue with clear dates, reported amounts and source evidence. This Actor reads SEC Form D and D/A XML, combines co-issuer duplicates, and can compare an amendment with the previous filing it explicitly names.
Built for investment operations, company research and B2B teams that need to review offering activity without maintaining an EDGAR parser.
Start with five recent filings
No API key is needed. Run this input:
{"maxResults": 5}
Open Offering observations for the rows, Scope and diagnostics for machine-readable coverage, and Readable run report for the HTML summary. The default reads one recent feed response and saves up to five validated filings.
The feed is a moving window. If your filters match nothing, the run can legitimately return zero rows.
What the output tells you
| Field | Meaning |
|---|---|
accessionNumber | Stable filing identity. Co-issuer copies are combined. |
issuerName, primaryIssuerCik, issuers | Primary issuer and all issuer identities declared in the XML. |
filedDate | SEC filing date from the accession index. |
firstSaleDate, firstSaleYetToOccur | First-sale date, or an explicit flag that a first sale has not occurred. |
amountSoldUsd | Cumulative reported amount sold for this offering. |
totalOfferingAmountUsd, offeringAmountIndefinite | Numeric offering amount, or null with an indefinite flag. Null is never converted to zero. |
totalRemainingUsd, remainingAmountIndefinite | Remaining amount using the same distinction. |
industry, investmentFundType, securityTypes, exemptions | Source classifications for screening and routing. |
totalInvestors, minimumInvestmentUsd | Reported count and minimum accepted investment. |
previousAccessionNumber | Predecessor explicitly identified by an amendment, when present. |
amendmentComparison | Optional verified predecessor comparison: changed fields, previous values and reported amount/count differences. |
comparisonStatus, changedFields, previousObservedAt, previous | Comparison with your saved observation of the same accession. |
url, sourceUrl, contentHash, observedAt | Filing index, raw XML, stable snapshot hash and observation time. |
Related-person contact details, phone numbers and street addresses are not exported.
Compare a real amendment
This example uses a real filing dated November 2, 2026. Its first sale dates to 2014, illustrating why a fresh filing must not be labeled a newly completed funding round.
{"filingUrls": ["https://www.sec.gov/Archives/edgar/data/1620980/000162098026000001/0001620980-26-000001-index.htm"],"includePredecessor": true,"maxResults": 3}
A successfully fetched, identity-verified predecessor produces amendmentComparison.status: "verified". Its amountSoldChangeUsd compares two cumulative reported values; it does not prove that new cash arrived during that interval. Negative changes remain visible.
Predecessor requests need at least 15 seconds and two requests left. If comparison cannot be completed, current filing facts can still be saved with a reason and SUMMARY marks incomplete coverage. A filing that supplies no predecessor accession is labeled no_linked_accession.
Understand pre-sale and co-issuer records
{"filingUrls": ["https://www.sec.gov/Archives/edgar/data/2155461/000215546126000003/0002155461-26-000003-index.htm"],"maxResults": 3}
This retained example declares two issuers, a first sale yet to occur, zero amount sold and an indefinite offering amount. One accession produces one observation.
Build a recurring workflow
- Use the recent feed for discovery or exact filing-index URLs for repeatable checks.
- Filter by source industry, primary issuer state/country code, filing date or minimum reported amount sold.
- Enable
comparePreviousand reuse the samesnapshotNameand scope. First observations are labelednew. - Send confirmed rows to a sheet or review system with
accessionNumberas the deduplication key. UsecontentHashto avoid processing the same observation twice. - Enable
onlyChangesafter establishing a baseline. Check SUMMARY before interpreting a quiet run.
Two comparisons serve different purposes: comparisonStatus compares the same accession with your saved run; amendmentComparison compares a D/A accession with its explicitly linked older filing. An amendment normally has a new accession, so it first appears as new in saved monitoring.
History advances only for confirmed saved rows. Failed or spend-rejected rows never advance it. Use one writer per history scope. An optimistic conflict check protects an already changed baseline, but is not a distributed lock. Missing filings never imply a withdrawn offering or deleted issuer.
With a small output cap, an onlyChanges repeat may reach previously unseen filings further down the same feed. Use a complete bounded explicit URL list when proving a no-change repeat.
Price and limits
The intended Store price is $0.005 per validated filing observation, plus $0.00005 per Actor start event. The platform scales start events by allocated memory, with a minimum of one; applicable plan discounts appear on the Store pricing panel. Five observations cost $0.025 in result charges before the start fee. Set Apify's maximum run charge to control spend. Unchanged skipped records and diagnostics are not paid rows.
Defaults: five saved filings, one feed of up to 100 entries, 40 source requests and a 60-second budget. Explicit lists allow up to 25 filing URLs; the output maximum is 50. Requests are serial, paced at least 200 ms apart, capped at 2 MiB each and share the remaining deadline. A 403 or 429 stops further SEC requests without route changes. Explicit transient connection failures and HTTP 502/503/504 can receive one retry inside the same time and request caps; SUMMARY records each retry.
A result cap can end a healthy sample with status: "ok" while selectedWindowComplete remains false. remainingFilingsInWindow records the unprocessed portion. Time, spending, source, request and requested-predecessor limits are visible separately. An all-source failure fails the run rather than producing paid error rows.
Read offering data in context
- Form D is an offering notice, not an SEC approval, investment recommendation or proof of a closed round.
- A notice may precede the first sale. Annual amendments may describe an offering that began years ago.
- Changes in amount sold alone do not always require an amendment. This is not a complete ledger of fundraising activity.
- Filters apply within the selected response or URLs. Date filters do not backfill older EDGAR history.
- The SEC
type=Dfeed also returns other D-prefixed forms. Only exact D and D/A categories are retained. - Government source availability and corrections can change. Local checks do not guarantee access from every cloud IP.
References and support
SEC Form D overview | Form D guide | EDGAR RSS guidance | EDGAR developer guidance
Open an Actor issue with the run URL and affected accession, or email bmay@mayd-it.com. Keep credentials and private customer data out of support messages.