# US Private Funding Rounds: Form D Filings Feed (`clearpath-data/us-private-funding-rounds`) Actor

Daily feed of new US private placement notices (Form D): startups and companies raising money, with amount, amount sold, industry, state and exemption. Pooled funds excluded by default, amendments flagged, only filings new since your last run.

- **URL**: https://apify.com/clearpath-data/us-private-funding-rounds.md
- **Developed by:** [Clearpath Data](https://apify.com/clearpath-data) (community)
- **Categories:** Lead generation, Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.20 / 1,000 offerings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## US Private Funding Rounds: Form D Filings Feed

Get a daily feed of new private funding rounds in the US: companies that have just filed a **Form D notice** for an exempt offering (Regulation D Rule 506(b), 506(c), Rule 504 and similar). Each row gives the issuer, industry, state, offering size, amount already sold, exemptions claimed and a link to the filing. Pooled investment funds are excluded by default, amendments are flagged, and on a schedule you get **only the filings that are new since your last run**.

The data comes from the U.S. Securities and Exchange Commission's public Form D filings, read from the public archive at sec.gov. This Actor is an independent tool. It is not made, endorsed or reviewed by the Commission.

### What does US Private Funding Rounds do?

- Reads each business day's index of new Form D and Form D/A filings, then reads each filing's Form D document.
- Skips **pooled investment funds** (hedge, private equity, venture and other funds raising from their own investors) unless you switch them on. They are usually most of the day's Form D filings.
- Filters by **date range, industry sector or group, issuer state or country, entity type, federal exemption, offering size, amount sold, incorporation age and issuer name**.
- **Deduplicates amendments**: if an offering and one or more of its amendments (D/A) are filed in the same run, you get the latest one. It lists the filings it replaced in `supersedesInThisRun`. Every amendment has `isAmendment: true` and the accession number it amends.
- **New since last run** mode: remembers what it has delivered, per task (named state), so a daily schedule returns only new filings. The first run already returns rows from the last few days.
- Leaves out personal data by default (see below).

### Quick start

1. Click **Try for free** and keep the default input. You get the newest operating-company filings (no funds), up to 20 rows.
2. Pick filters, e.g. Industry sectors = Technology and Health Care, Issuer states = CA, NY, MA, Min total offering amount = 1,000,000.
3. Save it as a **task**, give it its own **State name** and schedule it daily (for example at 10:00 UTC on weekdays). Each run returns only filings you haven't had yet.
4. Connect the dataset to Google Sheets, Slack, e-mail, Make, Zapier or your CRM through Apify integrations or webhooks.

For a one-off pull, set **Mode** to **Date range** and set **Filed from** and **Filed to**.

### Sample output

Default fields (overview view). Personal names are not included unless you switch them on.

| Filed      | Form | Issuer                 | Industry          | State | Offering (USD) | Sold (USD) | Exemptions | First sale   |
| ---------- | ---- | ---------------------- | ----------------- | ----- | -------------- | ---------- | ---------- | ------------ |
| 2026-10-23 | D    | Folio Photonics Inc.   | Other Technology  | OH    | 15,999,983     | 9,078,957  | 06b        | 2026-10-13   |
| 2026-10-23 | D/A  | Land Therapeutics Inc. | Pharmaceuticals   | MA    | 92,111,706     | 17,511,614 | 06b        | 2024-12-23   |
| 2026-10-23 | D    | Norwich & Main Ltd.    | Restaurants       | OH    | 3,000,000      | 0          | 06b        | yet to occur |
| 2026-10-23 | D    | ASAL International     | Business Services | TX    | Indefinite     | 0          | 06b        | yet to occur |

One full row (shortened):

```json
{
    "recordType": "offering",
    "accessionNumber": "0002051104-26-000003",
    "formType": "D/A",
    "isAmendment": true,
    "amendsAccessionNumber": "0002051104-25-000001",
    "supersedesInThisRun": [],
    "filedDate": "2026-10-23",
    "cik": "2051104",
    "issuerName": "Land Therapeutics Inc.",
    "issuerEntityType": "Corporation",
    "jurisdictionOfIncorporation": "DELAWARE",
    "yearOfIncorporation": 2024,
    "incorporatedWithinFiveYears": true,
    "issuerCity": "CHARLESTOWN",
    "issuerStateOrCountry": "MA",
    "industrySector": "Health Care",
    "industryGroup": "Pharmaceuticals",
    "isPooledInvestmentFund": false,
    "revenueRange": "Decline to Disclose",
    "federalExemptions": ["06b"],
    "dateOfFirstSale": "2024-12-23",
    "securityTypes": ["equity"],
    "minimumInvestment": 0,
    "totalOfferingAmount": 92111706,
    "totalOfferingAmountIndefinite": false,
    "totalAmountSold": 17511614,
    "totalRemaining": 74600092,
    "hasNonAccreditedInvestors": false,
    "totalNumberAlreadyInvested": 12,
    "salesCompensationRecipientsCount": 0,
    "relatedPersonsCount": 6,
    "relatedPersonRoles": { "executiveOfficer": 1, "director": 6, "promoter": 0 },
    "personalDataIncluded": false,
    "relatedPersons": null,
    "filingIndexUrl": "https://www.sec.gov/Archives/edgar/data/2051104/000205110426000003/0002051104-26-000003-index.htm",
    "primaryDocumentUrl": "https://www.sec.gov/Archives/edgar/data/2051104/000205110426000003/primary_doc.xml",
    "retrievedAt": "2026-10-26T19:04:06.534Z"
}
```

Every field is described in the **Output** tab (dataset schema). Amounts are in US dollars as filed. `null` means the form doesn't give the value; "Indefinite" amounts are `null` with the matching `…Indefinite` flag set to `true`.

### How "new since last run" works

- State is kept in a named key-value store, `us-private-funding-rounds-state`, in your own Apify account, with one record per **State name**. Use a different State name for each task or filter set.
- The first run (no state yet) covers the last **First run: days back** days (3 by default), or starts at **Filed from**.
- Each daily index is published once and does not change, so the next run starts at the first day not yet fully delivered. If a run stops at Max results or at your maximum cost per run, the next run continues on the same day and skips what it already delivered.
- Filtered-out filings count as handled, so changing filters under the same State name does not bring back older filings. The run report warns you when the filters differ from the ones the state was built with.
- An amendment filed on a later day than the original is returned again on that day, with `isAmendment: true` and `amendsAccessionNumber`, so you can update your record.
- **Update state after the run** = off gives a dry run: the next run returns the same filings.

### Use cases

- **Deal sourcing and market maps**: startups and growth companies raising money in your sector or region.
- **Sales prospecting**: companies that have just raised capital and may be buying (software, services, office space, hiring).
- **Research and journalism**: counts and sizes of private offerings by industry, state and exemption over time.
- **Monitoring**: watch for new or amended offerings by issuer name keywords.

### Input

| Field                                                             | What it does                                                                                    |
| ----------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| Mode                                                              | New since last run (default) or Date range                                                      |
| Filed from / Filed to                                             | Dates as 2026-10-01 or relative like "7 days". Date range needs Filed from; 2012-01-01 or later |
| First run: days back                                              | First-run window when there's no state yet (default 3)                                          |
| Include pooled investment funds                                   | Off by default                                                                                  |
| Industry sectors / Industry groups                                | Form D Item 4 industry; sector and group selections are combined as either/or                   |
| Issuer state or country codes                                     | Two-character codes of the principal place of business (e.g. CA, NY; E9 = Cayman Islands)       |
| Issuer entity types                                               | Corporation, LLC, LP, General Partnership, Business Trust, Other                                |
| Federal exemptions                                                | e.g. 06b, 06c, 04, 3C.1                                                                         |
| Min / max total offering amount, min amount sold                  | USD. Indefinite offering amounts pass a minimum and fail a maximum                              |
| Incorporated within the last five years only                      | A rough filter for young companies                                                              |
| Amendments (D/A)                                                  | Include (default), Exclude or Only amendments                                                   |
| Issuer name contains                                              | Keywords, any match                                                                             |
| Include related persons / Include issuer street address and phone | Personal data switches, off by default                                                          |
| State name, Update state                                          | Memory for New since last run                                                                   |
| Max results                                                       | Stop after this many offerings                                                                  |

Example input for a daily task:

```json
{
    "mode": "new",
    "industrySectors": ["Technology", "Health Care"],
    "issuerStates": ["CA", "NY", "MA"],
    "minTotalOfferingAmount": 1000000,
    "amendments": "include",
    "stateName": "tech-health-ca-ny-ma",
    "maxResults": 500
}
```

Each run also writes a **run report** (key `RUN_REPORT` in the run's key-value store). It has the date window, the days read, filings found, filtered out by reason, replaced by amendments and saved, requests made, the state used, the stop reason and any warnings.

### Integrations, schedules and AI agents

Run it on an Apify schedule and send results anywhere with integrations (Google Sheets, Slack, e-mail, Zapier, Make, webhooks) or through the Apify API. Inputs and outputs are fully described by schemas.

- **AI agents and assistants (MCP):** connect an MCP client to `https://mcp.apify.com?tools=clearpath-data/us-private-funding-rounds` with your Apify account (OAuth or API token) and the agent can run this Actor as a tool, charged per event at the prices under "How much does it cost?". Agents without an Apify account can use a prepaid token from Apify's [agentic payments](https://docs.apify.com/agents/payments) (experimental). See the [Apify MCP server docs](https://docs.apify.com/mcp).

### How much does it cost?

The Actor is priced per event:

| Event                               | Price                                              |
| ----------------------------------- | -------------------------------------------------- |
| Offering returned (one dataset row) | $0.002 (Silver: $0.0016, Gold and higher: $0.0012) |
| Actor start                         | $0.00005 per run (set by Apify)                    |

That is $2.00 per 1,000 offerings on the Free and Bronze plans. Filtered-out filings, pooled funds you don't include and replaced amendments are never charged. Rows are saved first and then charged, and the run stops at your **maximum cost per run**, so you are never charged for rows you didn't get. Recent business days had roughly 250–350 Form D filings in total, and often half or more of them were pooled funds.

### Personal data: use it responsibly

Form D filings name the issuer's **executive officers, directors and promoters**, the person who signed, and brokers or finders paid for sales, with addresses.

- **Off by default**: you get only counts and roles (`relatedPersonsCount`, `relatedPersonRoles`) and the issuer's city, state and ZIP.
- **Include related persons** adds names, relationships, city and state or country of related persons (street addresses are never output), sales-compensation recipients and the signer's name and title. **Include issuer street address and phone** adds the issuer's street and phone as filed. Rows then have `personalDataIncluded: true`.
- Although the filings are public, names and contact details are personal data under laws such as the GDPR and CCPA. **You are responsible for having a lawful basis for collecting, storing and using it**, for honouring opt-outs and deletion requests, and for following marketing rules (e.g. CAN-SPAM, TCPA, PECR). Don't use it for spam, harassment or any unlawful purpose.

### Limits and honest notes

- **About one business day behind**: the daily index for a business day is usually published by the next morning (US Eastern time), so a morning run returns the previous business day's filings. Weekends and federal holidays have no filings.
- **Form D is a notice, not a closed round.** It is filed within 15 days after the first sale. The offering amount is a target and the amount sold is as of the filing date. Some filings are made long after the offering started, and some offerings never complete.
- **Amendments**: a D/A may change any field. Within a run only the latest filing of an offering is kept. Across runs you get each amendment as its own row, linked by `amendsAccessionNumber`. Some amendments don't name the filing they amend, so they can't be linked.
- **Industry and revenue** are as the issuer selected them. Many issuers choose "Other" or "Decline to Disclose".
- A filing whose Form D document can't be read is skipped in that run, retried in the next run, and skipped for good after three failed runs. The run report lists them.
- To stay polite to the source, requests are limited to 4 per second, with back-off when the site asks to slow down. A day of filings takes roughly 1–2 minutes without filters on the index line.
- Not legal, investment or tax advice. Check the original filing (`filingIndexUrl`) before relying on any value.

### Sources and notices

- U.S. Securities and Exchange Commission, Form D filings: daily form-type indexes and each filing's `primary_doc.xml`, from the public archive at sec.gov. Public-domain US government information; the Commission does not endorse this Actor.
- Every row links to the original filing.

### Related Clearpath Data Actor

- [us-federal-contract-opportunities](https://apify.com/clearpath-data/us-federal-contract-opportunities): daily US federal contract opportunities and award notices from SAM.gov's public extract, to see which companies just won federal contracts.

### FAQ

#### How fresh is the data?

It covers filings up to the latest published daily index, usually the previous business day. See the run report's `latestPublishedDayRead`.

#### Why do I get so few rows?

Pooled investment funds are excluded by default, and they are usually most Form D filings. Switch on **Include pooled investment funds** to get them. Also check the run report's `filteredOut` counts.

#### Why did my scheduled run return 0 rows?

No new index was published since the last run (for example, on weekends), or nothing matched your filters.

#### Can I get older filings?

Yes. Use Date range with Filed from 2012-01-01 or later. Large ranges take a while because each filing is read separately; use filters and Max results.

#### Can I export to CSV or Excel?

Yes, from the run's Storage tab or the API (`format=csv` or `xlsx`). Use the overview view for a compact table.

#### Is this official data?

The filings are the issuers' official submissions to the Commission. This Actor itself is not an official or endorsed product.

# Changelog

This Actor's version history is a separate document: https://apify.com/clearpath-data/us-private-funding-rounds/changelog.md

# Actor input Schema

## `mode` (type: `string`):

New since last run: only Form D filings you haven't received yet under this state name (the first run covers the last few days). Date range: every matching filing between the dates below; nothing is remembered.

## `filedFrom` (type: `string`):

First filing date, as 2026-10-01 or relative like "7 days" (2012-01-01 or later). Required for Date range; in New since last run it sets where the first run starts.

## `filedTo` (type: `string`):

Last filing date (inclusive) for Date range. Leave empty for up to the latest published day.

## `firstRunLookbackDays` (type: `integer`):

When there's no saved state yet (and no "Filed from"), the first run covers this many calendar days back. Filings are published once per business day.

## `includePooledInvestmentFunds` (type: `boolean`):

Off (default): skip filings whose industry group is Pooled Investment Fund (hedge, private equity, venture and other funds raising from their investors), which are most Form D filings. On: include them. Selecting "Pooled Investment Fund" under Industry groups also includes them.

## `industrySectors` (type: `array`):

Only these sectors (each covers several Form D industry groups). Combined with Industry groups as either/or. Leave empty for all.

## `industryGroups` (type: `array`):

Only these Form D industry groups (Item 4 of the form). Leave empty for all.

## `issuerStates` (type: `array`):

Two-character codes of the issuer's principal place of business, e.g. CA, NY, TX. Non-US places use the filing's own codes (e.g. E9 = Cayman Islands, X0 = United Kingdom, A6 = Ontario). Leave empty for all.

## `entityTypes` (type: `array`):

Only these kinds of issuer. Leave empty for all.

## `exemptions` (type: `array`):

Only filings claiming at least one of these exemption codes, as written on the form: 06b (Rule 506(b)), 06c (Rule 506(c)), 04 (Rule 504), 04.1–04.3, 3C, 3C.1, 3C.7 (Investment Company Act sections), 4a5. Leave empty for all.

## `minTotalOfferingAmount` (type: `integer`):

Only offerings with a total offering amount of at least this. Offerings marked Indefinite pass this filter.

## `maxTotalOfferingAmount` (type: `integer`):

Only offerings with a total offering amount of at most this. Offerings marked Indefinite are excluded.

## `minAmountSold` (type: `integer`):

Only offerings that report at least this much already sold.

## `incorporatedWithinFiveYearsOnly` (type: `boolean`):

Only issuers that tick "within the last five years" for year of incorporation (a rough proxy for young companies).

## `amendments` (type: `string`):

Include: new notices and amendments (amendments are flagged with isAmendment). Exclude: new notices only. Only: amendments only.

## `keywords` (type: `array`):

Only issuers whose name contains any of these words (case-insensitive). Leave empty for all.

## `includeRelatedPersons` (type: `boolean`):

Off (default): only counts and roles. On: also names, roles and city/state of executive officers, directors and promoters, the sales-compensation recipients, and the signer's name and title. This is personal data; you are responsible for using it lawfully.

## `includeIssuerContactDetails` (type: `boolean`):

Off (default): city, state and ZIP only. On: also the issuer's street address and phone number as filed.

## `stateName` (type: `string`):

Name for the "since last run" memory. Use a different name per task or filter set so they don't share progress. Letters, numbers and dashes.

## `updateState` (type: `boolean`):

Off: a dry run in New since last run mode; the next run gets the same filings again.

## `maxResults` (type: `integer`):

Stop after this many offerings (each one is a charged event). In New since last run mode, the next run continues where this one stopped. Leave empty for no limit (your maximum cost per run still applies).

## Actor input object example

```json
{
  "mode": "new",
  "firstRunLookbackDays": 3,
  "includePooledInvestmentFunds": false,
  "industrySectors": [],
  "industryGroups": [],
  "issuerStates": [],
  "entityTypes": [],
  "exemptions": [],
  "incorporatedWithinFiveYearsOnly": false,
  "amendments": "include",
  "keywords": [],
  "includeRelatedPersons": false,
  "includeIssuerContactDetails": false,
  "stateName": "default",
  "updateState": true,
  "maxResults": 20
}
```

# Actor output Schema

## `offerings` (type: `string`):

One row per Form D offering (latest filing of each offering in the run)

## `runReport` (type: `string`):

Window, days read, counts by filter, state used, stop reason, warnings and sources

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxResults": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("clearpath-data/us-private-funding-rounds").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "maxResults": 20 }

# Run the Actor and wait for it to finish
run = client.actor("clearpath-data/us-private-funding-rounds").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxResults": 20
}' |
apify call clearpath-data/us-private-funding-rounds --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,clearpath-data/us-private-funding-rounds"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/575TZCzRYbMwpkvSz/builds/R5Zbn3JZIN4zouHYQ/openapi.json
