SEC Form D Scraper
Pricing
from $2.10 / 1,000 results
SEC Form D Scraper
Collect SEC Form D filings and return one row per filing with company name, filing date, industry, offering amounts, issuer address and related persons. Filter by date, EDGAR location, keyword, industry or minimum funding amount; pooled funds can be excluded.
Pricing
from $2.10 / 1,000 results
Rating
0.0
(0)
Developer
Axiom Works
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
SEC Form D Funding Scraper
Returns: one row per SEC Form D filing with companyName, fileDate, industryGroup, totalAmountSold, totalOfferingAmount, city, phone, relatedPersons.
Input: {"daysBack": 7, "states": ["CA"], "industryGroups": ["Other Technology"], "maxItems": 50}
Best for: startup funding lead lists, tracking who raised money this week in a state or industry, investor and sales prospecting.
{"companyName": "Arkea Bio Corp.","fileDate": "2026-10-09","industryGroup": "Other Technology","totalAmountSold": 14999995,"totalNumberAlreadyInvested": 2,"salesCommissions": 0,"findersFees": 0,"sourceUrl": "https://www.sec.gov/Archives/edgar/data/2004801/000200480126000001/primary_doc.xml"}
What does SEC Form D Funding Scraper do?
SEC Form D Funding Scraper reads public SEC EDGAR Form D and D/A notices into structured filing records. Search by date, business location, industry and full-text keyword, then screen reported offering amounts, investor counts and federal exemption codes. No login or SEC API key is required.
The SEC Form D API alternative preserves issuer-reported amounts, public executive names, addresses and source links. Sales commissions and finder fees are included when disclosed, without extra requests. Each accession is a filing, not a unique company or a confirmed completed funding round. Related persons are officers, directors or promoters, not an investor list.
What data can you get from SEC Form D filings?
Every record comes straight from the filing's primary_doc.xml on sec.gov plus the EDGAR search index. Amounts are numbers in US dollars, dates are YYYY-MM-DD.
| Field | Description |
|---|---|
id | Same as accessionNumber, the stable record ID. |
accessionNumber | SEC accession number that identifies this Form D filing. |
cik | SEC Central Index Key of the issuer, 10 digits with leading zeros. |
companyName | Issuer (company or fund) name as filed. |
formType | 'D' for a new notice, 'D/A' for an amendment. |
fileDate | Date the filing was accepted by EDGAR (YYYY-MM-DD). |
isAmendment | True when the filing amends an earlier Form D. |
dateOfFirstSale | Date the first securities were sold (YYYY-MM-DD); null when the first sale has yet to occur. |
industryGroup | Form D industry group, e.g. Other Technology, Biotechnology, Pooled Investment Fund. |
investmentFundType | Fund kind on pooled-fund filings: Venture Capital Fund, Private Equity Fund, Hedge Fund or Other Investment Fund. Null for operating companies, so always null while excludePooledFunds is on. |
entityType | Legal form of the issuer, e.g. Corporation, Limited Liability Company, Limited Partnership. |
jurisdictionOfInc | State or country where the issuer is incorporated. |
yearOfInc | Year of incorporation when filed (only given for issuers formed within the last five years). |
revenueRange | Revenue range as filed, e.g. 'No Revenues', a revenue band, or 'Decline to Disclose'. |
street1 | Issuer street address, line 1. |
street2 | Issuer street address, line 2. |
city | Issuer city. |
stateOrCountry | EDGAR code of the issuer's state or country, e.g. CA, NY, L3 (Israel). |
stateOrCountryDescription | Name of the issuer's state or country. |
zipCode | Issuer postal code. |
phone | Issuer phone number as filed. |
totalOfferingAmount | Total amount being offered in USD; null when the offering is 'Indefinite'. |
totalAmountSold | Amount already sold (raised) in USD at filing time. |
salesCommissions | Disclosed sales commissions in USD; null when absent or nonnumeric. |
findersFees | Disclosed finder fees in USD; null when absent or nonnumeric. |
totalRemaining | Amount still to be sold in USD; null when 'Indefinite'. |
minimumInvestmentAccepted | Minimum investment accepted from any outside investor, USD. |
totalNumberAlreadyInvested | Number of investors who have already invested. |
federalExemptions | Exemptions claimed, e.g. 06b (Rule 506(b)), 06c (Rule 506(c)). |
securityTypes | Types of securities offered, e.g. isEquityType, isDebtType. |
securityTypeLabels | The same types as readable labels, e.g. Equity, Debt. |
signerName | Name of the person who signed the filing. |
signerTitle | Title of the signer, e.g. CEO. |
filingUrl | Link to the filing index page on sec.gov. |
xmlUrl | Link to the filing's primary_doc.xml with the full Form D data. |
sourceUrl | URL the record was read from (the filing's primary_doc.xml). |
relatedPersons | Executives, directors and promoters with name, relationships, city and state. |
Fields that a filing leaves empty are null (for example street2, yearOfInc for companies older than five years, or dateOfFirstSale when the first sale has yet to occur).
How to use SEC Form D Funding Scraper
- Open SEC Form D Funding Scraper in Apify Console and go to the Input tab.
- Choose the filing dates: either set Days back (the default 7 returns the last week of filings) or set startDate and endDate.
- Optionally add States or countries as EDGAR location codes, such as
CA,NYorTX, orL3for Israel andX0for the United Kingdom. Each code is searched separately and the results are merged. - Optionally pick Industry groups, a Minimum amount raised, a Minimum offering size or a Keyword (EDGAR full-text search, usually a word from the company name such as
Therapeutics). - Decide whether to include amendments (Form D/A) and pooled investment funds. By default you get only new Form D filings from operating companies.
- Set Maximum results and click Start. When the run finishes, export the dataset as JSON, CSV, Excel, XML or HTML, or read it through the API.
Tips:
- Filings are returned newest first. Many companies file several Form Ds on the same day and each accession number is its own row.
- The location filter uses the business address EDGAR has on file for the company. In rare cases this differs from the issuer address inside the filing, so a row found with
CAcan show another state instateOrCountry. The Actor keeps such rows rather than hiding them. - Industry, amount and pooled-fund filters can only be checked after each filing is downloaded. Narrow filters therefore check many filings per result. Maximum filings to check (default 1000) bounds that work; raise it together with the run timeout for long date ranges.
Input
All fields are optional. With an empty input the Actor returns the newest Form D filings of the last 7 days from every location, without pooled funds and without amendments.
| Field | Type | Required | Description |
|---|---|---|---|
daysBack | integer | No | Filings from the last N days, 0-3650, default 7. Ignored when startDate is set. |
startDate | string | No | First filing date, YYYY-MM-DD. Empty = use daysBack. |
endDate | string | No | Last filing date, YYYY-MM-DD. Default today (UTC). |
states | array of strings | No | EDGAR location codes (CA, NY, L3...). One search per code, results merged. Empty = all. |
industryGroups | array of strings | No | Form D industry groups to keep, e.g. Other Technology, Biotechnology, or a category such as Health Care. Empty = all. |
minAmountSold | integer | No | Keep filings with totalAmountSold at least this (USD). |
minOfferingAmount | integer | No | Keep filings with totalOfferingAmount at least this (USD); excludes "Indefinite" offerings. |
minInvestors | integer | No | Minimum reported investor count, default 0 (disabled). |
federalExemptions | array of strings | No | Match any exact SEC code, e.g. 06b or 06c; default empty (all). |
keyword | string | No | EDGAR full-text search words, usually part of the company name, e.g. Therapeutics. |
includeAmendments | boolean | No | Also return Form D/A amendments. Default false. |
excludePooledFunds | boolean | No | Drop VC, PE and hedge fund filings (industry "Pooled Investment Fund"). Default true. |
maxItems | integer | No | Maximum results across all locations, 1-10000, default 50. |
maxFilingsToCheck | integer | No | Maximum filings downloaded and checked against the filters, default 1000. |
proxyConfiguration | object | No | Optional proxy. Default none: SEC does not need one. |
Example input: technology offerings in New York in September and early October, amendments included.
{"startDate": "2026-09-01","endDate": "2026-10-10","states": ["NY"],"industryGroups": ["Other Technology"],"minAmountSold": 1000000,"includeAmendments": true,"excludePooledFunds": true,"maxItems": 10}
Example input: biotech and pharma companies with "Therapeutics" in the name, all locations.
{"startDate": "2026-09-01","endDate": "2026-10-15","keyword": "Therapeutics","industryGroups": ["Biotechnology", "Pharmaceuticals", "Other Health Care"],"maxItems": 10}
Filters use AND between fields and OR within federalExemptions. For example, add "minInvestors": 5, "federalExemptions": ["06b", "06c"] to keep filings reporting at least five investors and either exemption. Codes are matched case-insensitively against the filing, not inferred from company names. An unknown code returns no matches. Investor and exemption filters run after XML downloads, so narrow searches may need a larger maxFilingsToCheck. The shared maxItems limit still applies across all locations.
Output
Each filing is one item in the run's dataset. This record comes from a local run for Massachusetts filings from October 1–10, 2026, with minInvestors: 2, federalExemptions: ["06B"] and maxItems: 1:
{"id": "0002004801-26-000001","accessionNumber": "0002004801-26-000001","cik": "0002004801","companyName": "Arkea Bio Corp.","formType": "D","fileDate": "2026-10-09","isAmendment": false,"dateOfFirstSale": "2026-09-28","industryGroup": "Other Technology","investmentFundType": null,"entityType": "Corporation","jurisdictionOfInc": "DELAWARE","yearOfInc": null,"revenueRange": "Decline to Disclose","street1": "500 RUTHERFORD AVE","street2": "STE. 302","city": "CHARLESTOWN","stateOrCountry": "MA","stateOrCountryDescription": "MASSACHUSETTS","zipCode": "02129","phone": "(833) 275-3224","totalOfferingAmount": 32999992,"totalAmountSold": 14999995,"totalRemaining": 17999997,"salesCommissions": 0,"findersFees": 0,"minimumInvestmentAccepted": 0,"totalNumberAlreadyInvested": 2,"federalExemptions": ["06b"],"securityTypes": ["isEquityType"],"relatedPersons": [{"firstName": "Frank","middleName": null,"lastName": "Wooten","relationships": ["Executive Officer","Director"],"city": "Charlestown","stateOrCountry": "MA"},{"firstName": "Zachariah","middleName": null,"lastName": "Serber","relationships": ["Executive Officer"],"city": "Charlestown","stateOrCountry": "MA"},{"firstName": "Chris","middleName": null,"lastName": "Rivest","relationships": ["Director"],"city": "Charlestown","stateOrCountry": "MA"},{"firstName": "Wayne","middleName": null,"lastName": "McNee","relationships": ["Director"],"city": "Charlestown","stateOrCountry": "MA"}],"signerName": "Frank Wooten","signerTitle": "Chief Executive Officer","filingUrl": "https://www.sec.gov/Archives/edgar/data/2004801/000200480126000001/0002004801-26-000001-index.htm","xmlUrl": "https://www.sec.gov/Archives/edgar/data/2004801/000200480126000001/primary_doc.xml","sourceUrl": "https://www.sec.gov/Archives/edgar/data/2004801/000200480126000001/primary_doc.xml"}
Download the dataset as JSON, CSV, Excel, XML or HTML from the Storage tab, or fetch it with the API.
How much does it cost to scrape SEC Form D filings?
SEC Form D Funding Scraper is charged per result: you pay only for the filings returned, and maxItems caps that number. Filings checked but filtered out (wrong industry, too small, pooled fund) are free. See the Pricing tab for the current price. If you set a maximum cost per run, the Actor stops cleanly there and says so in the status message.
Use with AI agents (MCP)
Connect SEC Form D Funding Scraper to Claude, Cursor or any MCP client through the Apify MCP server:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=axiomworks/sec-form-d-scraper"}}}
Example prompts:
- "Find the technology startups in California that filed a Form D in the last 7 days and raised at least 1 million, and list their CEO and phone number."
- "Which biotech companies with Therapeutics in their name filed SEC Form D since September 1? Show amount sold and offering size."
- "Get this week's Form D filings from Texas and New York, excluding funds, and group them by industry."
Integrations and API
Run SEC Form D Funding Scraper from your own code with the Apify API. Set APIFY_TOKEN to your Apify API token (send it in the Authorization header, never in the URL).
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("axiomworks/sec-form-d-scraper").call(run_input={"daysBack": 7, "states": ["CA"], "maxItems": 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["companyName"], item["totalAmountSold"])
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('axiomworks/sec-form-d-scraper').call({ daysBack: 7, states: ['CA'], maxItems: 50 });const { items } = await client.dataset(run.defaultDatasetId).listItems();
cURL
curl -X POST "https://api.apify.com/v2/acts/axiomworks~sec-form-d-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"daysBack": 7, "states": ["CA"], "maxItems": 50}'
On the Integrations tab you can send results to Google Sheets, Make, Zapier, n8n, Slack or a webhook. Schedule the Actor daily or weekly with daysBack set to 1 or 7 to get a running feed of new Form D filings.
FAQ
What do the fee fields mean?
salesCommissions and findersFees copy the numeric amounts disclosed in the corresponding XML sections. Zero means an explicit zero; null means absent or nonnumeric. They do not prove payment, identify investors or establish the net proceeds of a completed financing.
Why did my run return 0 results? EDGAR had no Form D filings for your dates, locations and keyword, or none matched your industry, amount or fund filters. The status message explains whether filters or source access prevented results. Widen dates, loosen filters or retry later. Blocked targets finish successfully with zero records rather than adding error rows. SEC request spacing also applies to retries; each attempt uses only the time remaining in its request deadline. Invalid dates still fail validation with a message explaining the accepted format.
What are EDGAR location codes?
US states use their two-letter postal codes (CA, NY, TX). Canadian provinces and other countries have EDGAR codes such as A6 (Ontario), A1 (British Columbia), L3 (Israel), X0 (United Kingdom), 2M (Germany), K7 (India), U0 (Singapore) or E9 (Cayman Islands). Common state and country names such as "California" or "Israel" are also accepted and converted.
What is the difference between Form D and Form D/A?
Form D/A amends an earlier Form D, for example with a new amount sold. Set includeAmendments to true to get both; formType tells them apart.
Why are there pooled investment funds in Form D, and why are they excluded?
VC, private equity and hedge funds file Form D too and make up a large share of filings. excludePooledFunds (on by default) drops them; turn it off to research funds, which also fills investmentFundType.
Why is totalOfferingAmount null?
Some issuers file their offering size as "Indefinite", usually funds. totalOfferingAmount and totalRemaining are then null, while totalAmountSold is still a number.
Does it need a proxy? No. The SEC serves EDGAR to normal, rate-limited clients. The Actor sends a declared User-Agent and keeps to 5 requests per second, under the SEC's fair-access limit of 10. Rate-limited or failed requests are retried with backoff.
Is it legal to scrape SEC Form D filings?
Form D notices are public records that the SEC publishes on EDGAR for anyone to read. This Actor reads only that public data, with no login, and follows the SEC's fair-access rules for automated tools. The filings contain names of company officers and directors; if you store or use personal data, you are responsible for doing so lawfully (for example under GDPR or CCPA). This is not legal advice.
SEC Form D Funding Scraper is an independent tool. It is not affiliated with, endorsed by or sponsored by the U.S. Securities and Exchange Commission (SEC) or EDGAR.
Feedback
Found a bug or need a field that isn't here? Open an issue on the Issues tab and we'll look at it.