SEC Form D Filing Monitor
Pricing
from $0.70 / 1,000 accepted filing or changes
SEC Form D Filing Monitor
Search SEC Form D and D/A filings by date or CIK. Export filed offering amounts, issuer facts and amendment links with official EDGAR provenance and clear coverage status.
Pricing
from $0.70 / 1,000 accepted filing or changes
Rating
0.0
(0)
Developer
Cliqto Media
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
SEC Form D Filing Monitor finds public Form D and D/A filings in SEC EDGAR. Give it a date range, issuer CIKs or accession numbers. You get one Dataset row per filing with filed offering amounts, issuer facts, amendment links and official SEC URLs. Data comes directly from official SEC EDGAR files; no login, API key or proxy is needed. The quick-start run takes a few seconds and costs about $0.004. A filing does not prove that a funding round closed.

Contents
- What it does
- Quick start
- Use cases
- Input reference
- Output reference
- Pricing
- Limits and source access
- API and export
- Troubleshooting
- FAQ
- Support
What it does
snapshot: read a fixed scope once.backfill: read a bounded historical window. Completed quarters use SEC Form D data sets.monitor: save a checkpoint and return new accessions or changed source documents. Keep onecheckpointNameand one filter scope.
Each accepted D filing, D/A amendment or changed document is one Dataset row. The original filing remains a separate record. Amendments link only through a filed previous accession. The Actor does not infer a funding round, named investor, valuation or legal status.
Good fit: filing research, private offering data exports and a repeat watch of known issuers. Not a fit: verified funding rounds, contact enrichment, investment recommendations, all SEC forms or guaranteed real-time coverage.
Quick start
- Open the Actor Input tab. The new form has a small CIK snapshot example. No SEC login or source API key is needed.
- Run the example and open the Dataset. It includes one D and one D/A filing for the same issuer.
- Open
OUTPUTorRUN_SUMMARYto check coverage and warnings. - Replace the CIK and dates for your own search. Set the platform total charge cap before a run.
The UI example is separate from API defaults. Sending {} uses snapshot, market and the last seven completed UTC dates. It does not use the example CIK.
For a market-wide preset, open the ready task Export yesterday's SEC Form D filings. It saves up to 10 of yesterday's filings without related persons or sales compensation.
{"mode": "snapshot","discovery": "cik","startDate": "2026-09-01","endDate": "2026-09-30","ciks": ["0002152949"],"includeRelatedPersons": false,"includeSalesCompensation": false,"maxResults": 10,"maxFilingsScanned": 100,"maxRequests": 20,"maxChargeUsd": 0.01}
The date window is inclusive. This September 2026 example returns filed notices; it is not a live funding feed. Repeating this snapshot returns the same filings.
Use cases
| Job | Input | Useful fields | Next step |
|---|---|---|---|
| Review issuer disclosures | discovery=cik, ciks, dates | issuer.primary, offering, SEC links | Export and inspect the source |
| Keep amendment history | mode=monitor, checkpointName | formType, amendment.previousAccessionNumber | Join on accession, retain earlier rows |
| Build a date export | discovery=market, bounded dates | filing.filedDate, stableId, industry | Check summary coverage before using the export |
| Filter filed values | minAmountSoldUsd, exemptionCodes | filedAmountSoldUsd, exemptionCodes | Compare filed facts, not verified cash |
Input reference
All fields are optional at the top level. ciks is required when discovery=cik; accessionNumbers when discovery=accession; checkpointName when mode=monitor. Supply both dates or omit both.
| Field | Type / bound | Runtime default | UI prefill | Effect |
|---|---|---|---|---|
mode | string; snapshot, backfill, monitor | "snapshot" | "snapshot" | Snapshot, historical backfill or incremental monitor. |
discovery | string; market, cik, accession | "market" | "cik" | Official SEC market index, exact CIK history or exact accession. |
startDate | string; | yesterday / seven completed days | "2026-09-01" | Inclusive SEC filing date, YYYY-MM-DD; omitted for the monitor default. |
endDate | string; | yesterday / seven completed days | "2026-09-30" | Inclusive SEC filing date, not the current UTC date. |
daysBack | integer; 1–31 | 7 | none | Completed calendar days ending yesterday when no explicit range is supplied. |
ciks | array; max 100 items; items: string; ^[0-9]{10}$ | [] | ["0002152949"] | Exact ten-digit SEC CIKs; used by CIK discovery or as a filter. |
accessionNumbers | array; max 100 items; items: string; ^[0-9]{10}-?[0-9]{2}-?[0-9]{6}$ | [] | none | Exact SEC accessions with or without dashes; max 100. |
issuerNameContains | string; max 200 characters | none | none | Case-insensitive filed issuer-name fragment; no external resolver. |
statesOrCountries | array; max 100 items; items: string | [] | none | SEC state or country codes as filed, for example CA, NY or V7 (Sweden). |
industryGroups | array; max 50 items; items: string | [] | none | Exact Form D industry group names, for example Pooled Investment Fund. |
exemptionCodes | array; max 30 items; items: string | [] | none | Exact filed exemption codes, for example 06b, 3C or 3C.7. |
minTotalOfferingAmountUsd | number; 0–unbounded | none | none | Filed USD value filter; not a verified funding filter. |
minAmountSoldUsd | number; 0–unbounded | none | none | Filed USD value filter; never presented as verified funding. |
includeRelatedPersons | boolean; | true | false | Include filed names and roles only; no address or enrichment. |
includeSalesCompensation | boolean; | true | false | Include filed compensation fields and recipient names/roles where available. |
checkpointName | string; max 120 characters | none | none | Required for monitor; names an isolated checkpoint scope. The old name stateKey is still accepted. |
stateAction | string; USE, RESET, IGNORE | "USE" | none | USE/RESET for monitor; IGNORE is for stateless modes. |
overlapDays | integer; 0–31 | 7 | none | Replay window for late indexes and same-accession corrections. |
maxResults | integer; 1–1000 | 100 | 10 | Hard output cap; cap produces an explicit CAPPED status. |
maxFilingsScanned | integer; 1–20000 | 5000 | 100 | Hard candidate cap; cap does not claim complete coverage. |
maxRequests | integer; 1–1000 | 200 | 20 | Per-run request cap under the global 2 requests/second policy. |
maxRuntimeSeconds | integer; 30–900 | 240 | none | Bounded runtime guard. |
maxChargeUsd | number; 0–5 | 1 | 0.01 | Limits saved filing-row events only. The platform total charge cap also includes the automatic start event. |
daysBack also sets the omitted-date snapshot/backfill window. stateAction defaults to USE, but stateless modes do not use a checkpoint; IGNORE is valid for stateless runs. In monitor, IGNORE is invalid. RESET explicitly resets the checkpoint for this scope.
Lists are trimmed and deduplicated. Empty lists apply no filter; they are invalid when that discovery route requires a nonempty list. Null optional values use the runtime default or no filter. An empty issuerNameContains applies no name filter. Invalid types, dates, CIKs or bounds produce INVALID_INPUT in the summary with no source work. Unknown keys are ignored.
Filters combine with AND. Values in each list match any listed value exactly, without case differences. State or country filters use SEC codes such as CA or V7, not country names. The issuer-name filter checks primary and co-issuer names after discovery. Numeric filters reject null amounts. No company-name resolver is included. An exact accession route derives an archive location from its accession CIK; agent-filed accessions can require the CIK route to find the issuer archive directory.
Monitor settings belong to a saved scope. A complete run advances its checkpoint after successful delivery. Partial, blocked, capped or uncertain writes do not advance it. Monitor output suppresses unchanged accessions and reports source corrections; it does not close or delete filings.
Output reference
The default Dataset contains filing rows only. Errors, warnings and summaries are not rows. OUTPUT and RUN_SUMMARY in the run key-value store contain the same run summary. Output links open the full Dataset JSON, the filing table and the summary.
Snapshot/backfill rows sort by accession. Monitor rows use the checkpoint event ordering. stableId is sec-form-d:<accessionNumber>; a correction keeps the accession identity. Dates use SEC filing dates; provenance.retrievedAt is the retrieval time in ISO UTC. Source strings are normalized to field values; there is no raw HTML or XML output.
A real output example
This is a trimmed row from the quick-start input. Related-person and compensation lists were disabled.
{"stableId": "sec-form-d:0001012975-26-000877","accessionNumber": "0001012975-26-000877","formType": "D","filing": {"filedDate": "2026-09-10","acceptanceDateTime": "2026-09-10T21:26:42.000Z","submissionType": "D","accessionCik": "0001012975","primaryDocument": "primary_doc.xml","archiveIndexUrl": "https://www.sec.gov/Archives/edgar/data/2152949/000101297526000877/0001012975-26-000877-index.htm","sourceDocumentUrl": "https://www.sec.gov/Archives/edgar/data/2152949/000101297526000877/primary_doc.xml"},"issuer": {"primary": {"cik": "0002152949","name": "Aspira Fund I (D) AB","entityType": "Other","jurisdictionOfIncorporation": "SWEDEN","city": "STOCKHOLM","stateOrCountry": "V7","stateOrCountryDescription": "SWEDEN","postalCode": "111 44"},"coIssuers": []},"industry": {"groupType": "Pooled Investment Fund","groupDescription": null,"fundType": "Private Equity Fund","revenueRange": "Decline to Disclose","netAssetValueRange": null},"offering": {"firstSaleDate": "2026-08-18","firstSaleYetToOccur": null,"durationYears": null,"moreThanOneYear": false,"securityTypes": ["POOLED_INVESTMENT_FUND"],"isEquity": null,"isDebt": null,"isPooledInvestmentFund": true,"exemptionCodes": ["06b","3C","3C.7"],"minimumInvestmentUsd": 0,"totalOfferingAmountUsd": 312741000,"filedAmountSoldUsd": 40540500,"filedTotalRemainingAmountUsd": 272200500,"totalOfferingIndefinite": false,"amountSoldIndefinite": false,"remainingAmountIndefinite": false,"fundingVerificationStatus": "FILED_VALUE_NOT_VERIFIED","salesAmountClarification": "Total Offering Amount reflects interests offered and sold by the Issuer and its parallel funds to US and non-US persons. Total Offering Amount and Total Amount Sold converted from EUR to USD on August 18, 2026 at a rate of Euro 1 to USD 1.1583.","useOfProceeds": {"grossProceedsUsedUsd": 0,"grossProceedsUsedIsEstimate": null,"clarification": "An affiliate of the Issuer will directly or indirectly receive a management fee or equivalent payment."}},"amendment": {"previousAccessionNumber": null,"linkStatus": "NOT_AN_AMENDMENT"},"provenance": {"sourceKind": "SUBMISSIONS_AND_ARCHIVE","sourcePackageUrl": null,"sourceIndexUrl": "https://data.sec.gov/submissions/CIK0002152949.json","sourceDocumentUrl": "https://www.sec.gov/Archives/edgar/data/2152949/000101297526000877/primary_doc.xml","retrievedAt": "2026-10-09T09:22:27.506Z","sourceFingerprint": "sha256:053651e9d3f77b2a06bbf063555051e3f697958f82b200b1585ed5feacf68d2c","disclaimer": "Data is retrieved from public SEC EDGAR records. This Actor is not affiliated with, endorsed by, or sponsored by the U.S. Securities and Exchange Commission."}}
Every filing field
null means missing, unavailable or unparseable under the source contract. Zero is a filed zero. An indefinite amount has a null numeric value and a separate flag. No missing amount is filled from another amount. All output groups are present.
| Field path | Type | Meaning |
|---|---|---|
recordType | string | Always FORM_D_FILING. |
eventType | string | FILING_SAVED, AMENDMENT_SAVED or SOURCE_CORRECTION_UPDATED. |
stableId | string | Stable accession identity; not a funding-round ID. |
accessionNumber | string | Canonical SEC accession with dashes. |
formType | string | D or D/A. |
isAmendment | boolean | Whether this notice is an amendment. |
filing.filedDate | string / null | SEC filing date, YYYY-MM-DD. |
filing.acceptanceDateTime | string / null | SEC acceptance timestamp, ISO UTC (SEC index pages show Eastern time; the Actor converts it). |
filing.submissionType | string / null | Submission type listed by SEC, usually D or D/A. |
filing.accessionCik | string | CIK encoded in the accession; can differ from issuer CIK. |
filing.primaryDocument | string / null | Primary Form D document name in the archive. |
filing.archiveIndexUrl | string / null | Official SEC filing index page. |
filing.sourceDocumentUrl | string / null | Official SEC Form D XML document. |
issuer.primary.cik | string / null | Ten-digit SEC CIK of the issuer. |
issuer.primary.name | string / null | Issuer name as filed. |
issuer.primary.entityType | string / null | Filed entity type, for example Corporation or Limited Partnership. |
issuer.primary.jurisdictionOfIncorporation | string / null | Filed jurisdiction of incorporation. |
issuer.primary.city | string / null | City of the filed principal place of business. |
issuer.primary.stateOrCountry | string / null | SEC state or country code, for example CA or V7. |
issuer.primary.stateOrCountryDescription | string / null | Name for the state or country code, for example SWEDEN. |
issuer.primary.postalCode | string / null | Filed postal code of the principal place of business. |
issuer.coIssuers | array | Co-issuers on the same filing; empty when none. |
issuer.coIssuers[].cik | string / null | Ten-digit SEC CIK of the co-issuer. |
issuer.coIssuers[].name | string / null | Co-issuer name as filed. |
issuer.coIssuers[].entityType | string / null | Filed entity type, for example Corporation or Limited Partnership. |
issuer.coIssuers[].jurisdictionOfIncorporation | string / null | Filed jurisdiction of incorporation. |
issuer.coIssuers[].city | string / null | City of the filed principal place of business. |
issuer.coIssuers[].stateOrCountry | string / null | SEC state or country code, for example CA or V7. |
issuer.coIssuers[].stateOrCountryDescription | string / null | Name for the state or country code, for example SWEDEN. |
issuer.coIssuers[].postalCode | string / null | Filed postal code of the principal place of business. |
industry.groupType | string / null | Filed industry group, for example Pooled Investment Fund. |
industry.groupDescription | string / null | Free-text industry description when filed. |
industry.fundType | string / null | Filed fund type for pooled funds, for example Private Equity Fund. |
industry.revenueRange | string / null | Filed revenue range or Decline to Disclose. |
industry.netAssetValueRange | string / null | Filed net asset value range for funds. |
offering.firstSaleDate | string / null | Date of first sale as filed. |
offering.firstSaleYetToOccur | boolean / null | True when the filer says the first sale has not happened yet. |
offering.durationYears | number / null | Reserved field; currently always null. |
offering.moreThanOneYear | boolean / null | True when the offering is expected to last more than one year. |
offering.securityTypes | array | Filed security types, for example EQUITY, DEBT or POOLED_INVESTMENT_FUND. |
offering.isEquity | boolean / null | True when equity is among the filed security types. |
offering.isDebt | boolean / null | True when debt is among the filed security types. |
offering.isPooledInvestmentFund | boolean / null | True when pooled fund interests are among the filed security types. |
offering.exemptionCodes | array | Filed federal exemption codes, for example 06b or 3C.7. |
offering.minimumInvestmentUsd | number / null | Filed minimum investment accepted, USD. |
offering.totalOfferingAmountUsd | number / null | Filed total offering amount, USD; null when indefinite. |
offering.filedAmountSoldUsd | number / null | Amount the filer reported sold, in USD; not independently verified. |
offering.filedTotalRemainingAmountUsd | number / null | Filed amount remaining to be sold, USD. |
offering.totalOfferingIndefinite | boolean / null | True when the total offering amount is filed as indefinite. |
offering.amountSoldIndefinite | boolean / null | True when the amount sold is filed as indefinite. |
offering.remainingAmountIndefinite | boolean / null | True when the remaining amount is filed as indefinite. |
offering.fundingVerificationStatus | string | Always FILED_VALUE_NOT_VERIFIED. |
offering.salesAmountClarification | string / null | Filer note about the amounts, for example a currency conversion. |
offering.useOfProceeds.grossProceedsUsedUsd | number / null | Filed gross proceeds paid to named persons, USD. |
offering.useOfProceeds.grossProceedsUsedIsEstimate | boolean / null | True when that amount is filed as an estimate. |
offering.useOfProceeds.clarification | string / null | Filer note about the use of proceeds. |
investors.hasNonAccreditedInvestors | boolean / null | True when non-accredited investors took part. |
investors.totalInvestors | number / null | Filed number of investors who already invested. |
investors.totalNonAccreditedInvestors | number / null | Filed number of non-accredited investors. |
salesCompensation.hasSalesCompensation | boolean / null | True when sales compensation was filed. |
salesCompensation.totalCommissionUsd | number / null | Filed sales commissions, USD. |
salesCompensation.totalCommissionIsEstimate | boolean / null | True when commissions are an estimate. |
salesCompensation.totalFinderFeesUsd | number / null | Filed finder fees, USD. |
salesCompensation.totalFinderFeesIsEstimate | boolean / null | True when finder fees are an estimate. |
salesCompensation.recipients | array | Filed compensation recipients; empty when none or disabled. |
salesCompensation.recipients[].name | string / null | Recipient name as filed. |
salesCompensation.recipients[].crdNumber | string / null | Recipient FINRA CRD number when filed. |
salesCompensation.recipients[].associatedBrokerDealer | string / null | Associated broker-dealer name when filed. |
salesCompensation.recipients[].solicitationStatesOrCountries | array | State or country codes where the recipient solicits. |
salesCompensation.recipients[].foreignSolicitation | boolean / null | True when foreign solicitation is filed. |
relatedPersons | array | Filed related persons; empty when none or includeRelatedPersons is false. |
relatedPersons[].name | string / null | Person name as filed. |
relatedPersons[].relationship | string / null | Filed relationship, for example Executive Officer or Director. |
amendment.previousAccessionNumber | string / null | Only the source-disclosed previous accession. |
amendment.linkStatus | string | NOT_AN_AMENDMENT, LINKED_EXPLICIT_PREVIOUS_ACCESSION, MISSING_PREVIOUS_ACCESSION, CONFLICT_CROSS_CIK or UNRESOLVED. |
provenance.sourceKind | string | QUARTERLY_DATASET, DAILY_INDEX_AND_ARCHIVE, SUBMISSIONS_AND_ARCHIVE or ARCHIVE. |
provenance.sourcePackageUrl | string / null | Quarterly SEC data set ZIP when used; otherwise null. |
provenance.sourceIndexUrl | string / null | SEC index or submissions file that listed the filing. |
provenance.sourceDocumentUrl | string / null | SEC document parsed for this row. |
provenance.retrievedAt | string | Time this Actor read the source, ISO UTC. |
provenance.sourceFingerprint | string | SHA-256 of the document or bounded source record. |
provenance.disclaimer | string | Notice that the data is public SEC data and the Actor is not affiliated with the SEC. |
calculated.remainingDifferenceUsd | number / null | Offering minus sold minus filed remaining; USD when all three exist. |
calculated.remainingDifferenceStatus | string | CONSISTENT, DIFFERS_FROM_FILED_TOTAL_REMAINING or NOT_COMPUTED. |
Full summary field reference
Dates are ISO UTC/date-only strings. Null means unknown or not used. Monitor revision is omitted in stateless runs.
| Path | Type | Meaning |
|---|---|---|
schemaVersion | number | Run identity or terminal outcome |
status | string | Run identity or terminal outcome |
runId | string | Run identity or terminal outcome |
mode | string | Run identity or terminal outcome |
requested.startDate | string | Normalized requested value; see Input reference |
requested.endDate | string | Normalized requested value; see Input reference |
requested.explicitDateRange | boolean | Normalized requested value; see Input reference |
requested.discovery | string | Normalized requested value; see Input reference |
requested.ciks | array of strings | Normalized requested value; see Input reference |
requested.accessionNumbers | array of strings | Normalized requested value; see Input reference |
requested.filters.issuerNameContains | string/null | Normalized requested value; see Input reference |
requested.filters.statesOrCountries | array of strings | Normalized requested value; see Input reference |
requested.filters.industryGroups | array of strings | Normalized requested value; see Input reference |
requested.filters.exemptionCodes | array of strings | Normalized requested value; see Input reference |
requested.filters.minTotalOfferingAmountUsd | number/null | Normalized requested value; see Input reference |
requested.filters.minAmountSoldUsd | number/null | Normalized requested value; see Input reference |
requested.caps.maxResults | number | Normalized requested value; see Input reference |
requested.caps.maxFilingsScanned | number | Normalized requested value; see Input reference |
requested.caps.maxRequests | number | Normalized requested value; see Input reference |
requested.caps.maxRuntimeSeconds | number | Normalized requested value; see Input reference |
requested.caps.maxChargeUsd | number | Normalized requested value; see Input reference |
covered.startDate | string | Observed coverage; complete=false for uncertain work |
covered.endDate | string | Observed coverage; complete=false for uncertain work |
covered.complete | boolean | Observed coverage; complete=false for uncertain work |
covered.sourceCount | number | Observed coverage; complete=false for uncertain work |
counts.candidates | number | Work/output counter |
counts.accepted | number | Work/output counter |
counts.duplicates | number | Work/output counter |
counts.errors | number | Work/output counter |
counts.skippedByCap | number | Work/output counter |
counts.requests | number | Work/output counter |
counts.retries | number | Work/output counter |
counts.bytes | number | Work/output counter |
accounting.unitPriceUsd | number | Row accounting; total including start is in Run API |
accounting.chargeableRows | number | Row accounting; total including start is in Run API |
accounting.estimatedChargeUsd | number | Row accounting; total including start is in Run API |
accounting.maxChargeUsd | number | Row accounting; total including start is in Run API |
accounting.ppeEnabled | boolean | Row accounting; total including start is in Run API |
accounting.actualChargeKnown | boolean | Row accounting; total including start is in Run API |
accounting.actualChargedRows | number | Row accounting; total including start is in Run API |
accounting.actualChargeUsd | number/null | Row accounting; total including start is in Run API |
sources[].kind | string | Source observation; may be PARTIAL |
sources[].url | string | Source observation; may be PARTIAL |
sources[].status | string | Source observation; may be PARTIAL |
sources[].requestedStartDate | string | Source observation; may be PARTIAL |
sources[].requestedEndDate | string | Source observation; may be PARTIAL |
sources[].coveredStartDate | string | Source observation; may be PARTIAL |
sources[].coveredEndDate | string | Source observation; may be PARTIAL |
sources[].candidates | number | Source observation; may be PARTIAL |
sources[].bytes | number | Source observation; may be PARTIAL |
sources[].warnings | array of strings | Source observation; may be PARTIAL |
state.action | string | Checkpoint outcome; no advance on incomplete work |
state.committed | boolean | Checkpoint outcome; no advance on incomplete work |
state.stateVersion | number/null | Checkpoint outcome; no advance on incomplete work |
state.scopeHash | string/null | Checkpoint outcome; no advance on incomplete work |
state.stateRevision | number | Checkpoint outcome; no advance on incomplete work |
timing.startedAt | string | Run time; durationMs is milliseconds |
timing.finishedAt | string | Run time; durationMs is milliseconds |
timing.durationMs | number | Run time; durationMs is milliseconds |
warnings | array of strings | Bounded diagnostics; no source bodies |
Related persons are disclosed officers, directors or promoters, not named investors. Recipient lists carry filed names, CRD values, associated brokers and solicitation codes, without street addresses. Privacy switches return empty name lists and null compensation amounts when disabled. hasSalesCompensation may still report the presence of filed compensation.
Summary fields and results
| Field / result | Meaning |
|---|---|
schemaVersion, status, runId, mode | Summary version, outcome, run identity and selected mode |
requested | Dates, discovery, CIK/accession lists, filters and caps actually normalized |
covered.startDate, covered.endDate, covered.complete, covered.sourceCount | Observed source coverage; read source warnings as well |
counts.candidates, accepted, duplicates, errors, skippedByCap, requests, retries, bytes | Work and output counters; accepted rows are chargeable |
accounting.unitPriceUsd, chargeableRows, estimatedChargeUsd, maxChargeUsd | Filing-row price, row count and row-only estimate/cap |
accounting.ppeEnabled, actualChargeKnown, actualChargedRows, actualChargeUsd | Charge acknowledgement; actual USD can be null. Run API is the total-billing record, including start |
sources[] | Each source kind, URL, requested/covered dates, status, candidates, bytes and warnings |
state | Whether a checkpoint was used/committed; revision, version and scope hash when used |
timing | Start, finish and duration in milliseconds |
warnings[] | Bounded diagnostic messages; no raw bodies |
COMPLETE | Useful complete bounded scope |
NO_FILINGS, NO_NEW_FILINGS | Complete search with zero matches; or no new monitor event |
CAPPED, PARTIAL | Work stopped at a bound or source coverage is incomplete; rows may still be useful |
BLOCKED, RATE_LIMITED, TRANSIENT_ERROR, TECHNICAL_ERROR | Source or resource failure, not a valid empty search |
INVALID_INPUT, NOT_FOUND, CANCELLED | Rejected input, missing requested source or interrupted work |
A platform SUCCEEDED status only means the process finished. Check the summary outcome. A failed or partial run can retain accepted filing rows.
Pricing
Current price: $0.0019 per start event (one per allocated GB of memory, minimum one), plus $0.001 per accepted filing or change row. Platform usage is included in this Actor price. At the default 512 MB, there is one start event. At 2 GB, there are two.
| At 512 MB | Start events | Filing events | Actor charge |
|---|---|---|---|
| Valid empty, fully filtered or unchanged monitor | 1 | 0 | $0.0019 |
| One accepted filing | 1 | 1 | $0.0029 |
| Quick-start D and D/A | 1 | 2 | $0.0039 |
| 100 accepted filings | 1 | 100 | $0.1019 |
Filing rows get Apify plan discounts. The start event is the same on every plan.
| Apify plan tier | Per 1,000 filing rows | Per filing row |
|---|---|---|
| Free | $1.00 | $0.0010 |
| Bronze | $0.90 | $0.0009 |
| Silver | $0.80 | $0.0008 |
| Gold, Platinum, Diamond | $0.70 | $0.0007 |
The run examples above use the Free tier row price.
Duplicates, errors, warnings, summaries and unprocessed work are not filing events. The start is charged even when no row is saved. Partial/failed runs charge for the start and rows already accepted. There are no optional enrichment events.
maxChargeUsd is a row-only cap. accounting.estimatedChargeUsd is also row-only. The Apify maxTotalChargeUsd cap includes start events and rows; set both for your budget. The platform minimum total cap is $0.002. The Actor stops before saving a row that cannot fit the platform budget.
Limits and source access
- Maximum 366 inclusive calendar days per run; the end date must be before today in UTC.
- Maximum 100 CIKs or accessions, 1,000 rows, 20,000 scanned candidates and 1,000 requests. Defaults are 100 rows, 5,000 candidates and 200 requests.
- Internal source deadline defaults to 240 seconds, with an input maximum of 900. A larger platform timeout does not expand it. A shorter platform timeout reserves time to save the summary.
- Direct SEC HTTPS only: one declared contact User-Agent, 2 requests/second globally, two in-flight requests and at most two retries for HTTP 408/425/429/5xx. A 403 is not retried.
- Source response bounds: 32 MiB ZIP, 16 MiB JSON and 4 MiB XML/text; at most 128 MiB decompressed ZIP data. Only the recognized SEC HTML doctype is stripped; entities and other DTDs are rejected without fetching them.
- CIK additional history follows at most 20 files. Quarterly packages can lag current filings. Daily indexes can be missing, blocked or later corrected. No real-time or full-corpus promise.
See SEC Form D data sets and SEC access guidance. A cap or missing source never proves complete coverage. Split large requests into smaller date windows.
The Actor is not affiliated with or endorsed by the SEC. It gives no legal, financial or investment advice. It does not enrich companies or people, collect contact lists, or send outreach.
API and export
Use the Actor API tab to start a run with the same JSON input. The asynchronous endpoint is POST /v2/acts/cliqtomedia~sec-edgar-form-d-funding-monitor/runs; poll the run, then read its defaultDatasetId and defaultKeyValueStoreId. Keep API tokens out of shared examples.
Export the Dataset as JSON or CSV in Apify. Nested objects remain easiest to use in JSON; select fields for CSV. Use stableId and accessionNumber to join records. Dataset export documentation.
Open the Filings table output link, or add ?view=overview to the Dataset items URL, for a compact table with issuer, dates, filed amounts and the SEC document link.
Use with AI agents (MCP)
AI agents can call this Actor through the Apify MCP server: https://mcp.apify.com?tools=cliqtomedia/sec-edgar-form-d-funding-monitor. Add it as a remote MCP server in your client and sign in with your Apify account.
A minimal agent input for yesterday's filings:
{ "mode": "snapshot", "discovery": "market", "daysBack": 1, "maxResults": 20, "includeRelatedPersons": false, "includeSalesCompensation": false }
Useful output fields for an agent: issuer.primary.name, formType, filing.filedDate, offering.totalOfferingAmountUsd, offering.filedAmountSoldUsd and filing.sourceDocumentUrl. Check OUTPUT.status before treating zero rows as no filings. A small run usually ends in seconds and costs $0.0019 plus $0.001 per row on the Free tier. Same limits as above: completed SEC dates only, at most 1,000 rows per run.
Repeated checks
For repeated checks, you can create an Apify schedule yourself using mode=monitor, a stable checkpointName and the same scope. Review results before adding integrations. This Actor does not create a schedule, send a webhook or run a CRM workflow.
Troubleshooting
| Symptom | Check | Action |
|---|---|---|
| No rows | Read OUTPUT.status, dates and filters | A clean NO_FILINGS is different from a source error; widen only a valid search |
| Repeat monitor has no rows | NO_NEW_FILINGS and checkpoint state | Use snapshot to export the same notices again |
| SEC denied access | BLOCKED or HTTP 403 | Retry later. Do not use identity or IP rotation to bypass SEC controls |
| Rate limit or transient failure | Source warnings and retries | Retry the same bounded scope later |
| Partial or capped results | covered.complete, caps, request count | Use smaller date windows; a monitor checkpoint has not advanced |
| Missing exact accession | Its archive CIK may be an agent CIK | Use known issuer CIK and dates; follow the official filing link |
| Source schema changed | TECHNICAL_ERROR and run ID | Report it through Issues; do not treat it as an empty search |
| Resource error | Platform memory and timeout, summary warning | Use valid platform resources; increasing timeout does not expand internal work |
FAQ
Do I need a SEC account or an API key?
No for the public SEC source. Apify API calls use your usual Apify access token.
Is the filed amount sold verified funding?
No. It is what the filer disclosed. An amendment is not a second confirmed funding round.
Can I find every issuer by company name?
No. issuerNameContains filters already discovered primary and co-issuer names. Use an exact ten-digit CIK for a known issuer.
What can be missing?
Source fields can be null, absent in a quarterly table or unparseable. An indefinite amount is not zero. durationYears is currently reserved and stays null.
Will a monitor remove a filing if the source is partial?
No. It retains the previous checkpoint and does not close or delete filings. It emits new accessions and detected document corrections only.
Are empty runs free?
No. They have no filing charge, but the standard start event still applies.
Does the Actor include phone numbers or investor contacts?
No. Optional disclosed names and roles are not a contact enrichment service. Street addresses, phones, email and social profiles are not output.
Does it replace the SEC filing?
No. Read the official link before relying on a field. Coverage depends on the selected source and the run bounds.
Support
Open an issue on this Actor's Issues tab. Include the Apify run ID, discovery mode, non-sensitive input scope, outcome and accession if relevant. Do not send tokens, cookies, billing details, full sensitive payloads or raw filing bodies.