SEC Form D Scraper avatar

SEC Form D Scraper

Pricing

Pay per event

Go to Apify Store
SEC Form D Scraper

SEC Form D Scraper

Scrape SEC EDGAR Form D private-offering filings for issuer, offering amount, investor count, related persons, addresses, and source URLs.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Categories

Share

Extract SEC EDGAR Form D private-offering filings into structured datasets for startup funding intelligence, private-market monitoring, compliance review, and issuer enrichment.

This Apify Actor monitors the latest SEC Form D feed or targets specific accession numbers, CIKs, and EDGAR filing URLs. It uses SEC public endpoints with a compliant User-Agent and saves one clean dataset row per filing.

What does SEC Form D Scraper do?

SEC Form D Scraper turns public Form D filings into analysis-ready records.

It collects issuer names, CIKs, accession numbers, filing dates, offering amounts, amount sold, investor counts, industry groups, issuer addresses, related persons, and SEC source links.

Use it when you need repeatable private-offering data without manually opening EDGAR filing pages.

Who is it for?

  • 💼 Investors tracking new private offerings and startup funding signals.
  • 🧲 Sales teams building issuer and fund lead lists.
  • ⚖️ Compliance and legal teams monitoring exempt offerings.
  • 📊 Data teams enriching private-market databases.
  • 🏢 Service providers looking for newly active issuers.

Why use this actor?

SEC EDGAR is public, but Form D data is split across feeds, index pages, and XML primary documents.

This actor handles discovery, XML parsing, field normalization, polite request pacing, and dataset output in one repeatable workflow.

Key features

  • ✅ Latest SEC Form D current-feed mode.
  • ✅ Exact accession-number mode.
  • ✅ Issuer CIK mode using SEC submissions JSON.
  • ✅ SEC filing index URL mode.
  • ✅ Compliant User-Agent input.
  • ✅ Offering amounts and investor counts.
  • ✅ Related persons with relationship labels.
  • ✅ Direct SEC index and XML source URLs.

Data extracted

FieldDescription
issuerNameIssuer or fund name
cikSEC Central Index Key
accessionNumberFiling accession number
filingDateFiling date when available
industryGroupSEC Form D industry group
offeringAmountUsdTotal offering amount
amountSoldUsdAmount already sold
amountRemainingUsdRemaining amount
totalInvestorsNumber of investors
relatedPersonsDirectors, promoters, executives, and other related people
sourceIndexUrlEDGAR filing index page
primaryDocumentUrlParsed SEC XML document

How much does it cost to scrape SEC Form D filings?

The actor uses pay-per-event pricing.

  • Start event: $0.005 per run.
  • Filing scraped event: tiered per Form D filing saved to the dataset.
  • BRONZE per-filing price: $0.000036462, with lower prices on higher Apify subscription tiers.

Small tests are inexpensive because the default input saves only a limited number of filings.

Input overview

The input is designed around the way analysts search SEC Form D filings.

Choose a source mode, set a maximum number of filings, and optionally provide specific accession numbers, CIKs, or SEC filing URLs.

Input fields

InputTypePurpose
modestringcurrent, accessions, ciks, or urls
maxItemsintegerMaximum filings to save
feedCountintegerSEC current-feed entries to scan
accessionNumbersstring arrayExact Form D accession numbers
ciksstring arrayIssuer CIKs to scan for recent Form D filings
startUrlsrequest listSEC EDGAR filing index pages
includeRelatedPersonsbooleanInclude nested people records
delayMsintegerPolite delay between SEC requests
userAgentstringSEC-compliant User-Agent with contact info

Example input: latest Form D filings

{
"mode": "current",
"maxItems": 20,
"feedCount": 40,
"includeRelatedPersons": true,
"delayMs": 150,
"userAgent": "Your Company Form D monitor contact: data@example.com"
}

Example input: accession numbers

{
"mode": "accessions",
"accessionNumbers": ["0002132077-26-000001"],
"maxItems": 1
}

Example input: CIK monitoring

{
"mode": "ciks",
"ciks": ["2132077"],
"maxItems": 10,
"feedCount": 40
}

Output example

{
"issuerName": "Example Fund LP",
"cik": "0000000000",
"accessionNumber": "0000000000-26-000001",
"filingDate": "2026-07-02",
"industryGroup": "Pooled Investment Fund",
"offeringAmountUsd": 5000000,
"amountSoldUsd": 1250000,
"totalInvestors": 4,
"issuerCity": "NEW YORK",
"issuerStateOrCountry": "NEW YORK",
"relatedPersonCount": 2,
"sourceIndexUrl": "https://www.sec.gov/Archives/...-index.htm",
"primaryDocumentUrl": "https://www.sec.gov/Archives/.../primary_doc.xml"
}

How to run

  1. Choose the input mode.
  2. Keep the default User-Agent or replace it with your organization contact.
  3. Set maxItems for the number of filings you need.
  4. Start the run.
  5. Export the dataset as JSON, CSV, Excel, XML, or via API.

Tips for best results

  • Use current mode for daily monitoring.
  • Use ciks mode when tracking known issuers or funds.
  • Use accession mode for deterministic re-processing of known filings.
  • Keep delayMs non-zero for SEC fair-access behavior.
  • Store your own contact email in userAgent for production workflows.

Integrations

Use this actor in workflows such as:

  • Daily Form D lead alerts into a CRM.
  • Private-market deal database enrichment.
  • Compliance monitoring dashboards.
  • Investor watchlists by issuer CIK.
  • Legal research exports for exempt offerings.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/sec-form-d-scraper').call({
mode: 'current',
maxItems: 20,
feedCount: 40,
});
console.log(run.defaultDatasetId);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/sec-form-d-scraper').call({
'mode': 'current',
'maxItems': 20,
'feedCount': 40,
})
print(run['defaultDatasetId'])

API usage with cURL

curl -X POST 'https://api.apify.com/v2/acts/automation-lab~sec-form-d-scraper/runs?token=YOUR_APIFY_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"mode":"current","maxItems":20,"feedCount":40}'

MCP integration

Connect the actor to Claude Desktop or Claude Code through Apify MCP.

Use the MCP server URL with the actor tool selected:

https://mcp.apify.com/?tools=automation-lab/sec-form-d-scraper

Add the MCP server in Claude Code:

$claude mcp add apify-sec-form-d --url "https://mcp.apify.com/?tools=automation-lab/sec-form-d-scraper"

Claude Desktop JSON configuration:

{
"mcpServers": {
"apify-sec-form-d": {
"url": "https://mcp.apify.com/?tools=automation-lab/sec-form-d-scraper"
}
}
}

MCP example prompts:

Use automation-lab/sec-form-d-scraper to run the latest 50 Form D filings and summarize the largest offerings.
Use the SEC Form D MCP tool to scrape Form D filings for this CIK list and extract issuer addresses.
Run automation-lab/sec-form-d-scraper every morning and identify new pooled investment funds.

SEC compliance notes

SEC public endpoints require respectful access patterns.

This actor uses a descriptive User-Agent, no login, no browser automation, and a default delay between filing requests.

Users should set their own organization contact in the User-Agent field for sustained production monitoring.

Legality

This actor extracts public SEC EDGAR filing data and does not bypass logins or access controls.

This actor extracts public SEC EDGAR data.

You are responsible for using the output lawfully, respecting SEC fair-access policies, and complying with applicable privacy, securities, and data-processing rules.

FAQ

Can I use this for daily funding lead monitoring?

Yes. Use current mode with a schedule and export new dataset rows to your CRM or database.

Does this actor need proxies?

No. It uses public SEC endpoints directly with a compliant User-Agent.

Troubleshooting: no results

Check that the selected mode matches your input.

For accession mode, accession numbers must look like 0000000000-26-000001.

For URL mode, provide SEC filing index URLs ending in -index.htm.

Troubleshooting: SEC access errors

If SEC returns an access error, set a more specific User-Agent with your company name and email, increase delayMs, and reduce maxItems.

Explore other automation-lab actors for finance and lead generation workflows:

Dataset exports

Apify datasets can be exported as JSON, CSV, Excel, HTML, RSS, and XML.

Use CSV for spreadsheet workflows, JSON for enrichment pipelines, and API access for scheduled monitoring.

Scheduling

Schedule this actor daily or hourly to monitor new Form D filings.

Use current mode with a small maxItems for frequent monitoring, or CIK mode for focused issuer watchlists.

Data quality

The actor parses SEC's primary XML documents rather than relying only on rendered HTML.

Some Form D fields are optional. Missing SEC values are returned as null while arrays remain arrays.

Versioning

Output field names are designed to remain stable after publication.

Future versions may add optional fields, but existing field names should remain compatible for downstream integrations.