Form D capital-raise radar
Surface new Form D private placements above a size threshold and resolve each issuer to a canonical entity.
Form D capital-raise radar
Find fresh Form D private placements (Reg D exempt offerings) above a dollar threshold — the raw signal behind sourcing, competitive intel, and fundraising trackers — and resolve each issuer to a canonical entity.
Prerequisites
- A Clous API key — get one free. Export it:
export CLOUS_API_KEY=clous_live_...
1. Pull recent raises above a threshold
GET /v1/raises?min_amount=5000000&limit=10curl -s "https://api.clous.ai/v1/raises?min_amount=5000000&limit=10" \
-H "Authorization: Bearer $CLOUS_API_KEY"import os, requests
r = requests.get(
"https://api.clous.ai/v1/raises",
params={"min_amount": 5_000_000, "limit": 10},
headers={"Authorization": f"Bearer {os.environ['CLOUS_API_KEY']}"},
)
raises = r.json()["data"]
for x in raises:
print(x["issuer_name"], x["issuer_state"], x.get("total_offering_amount"))const r = await fetch(
"https://api.clous.ai/v1/raises?min_amount=5000000&limit=10",
{ headers: { Authorization: `Bearer ${process.env.CLOUS_API_KEY}` } },
);
const { data: raises } = await r.json();2. Filter to a sector or state
Add industry, state, or a name search (q):
curl -s "https://api.clous.ai/v1/raises?min_amount=5000000&state=CALIFORNIA&q=AI" \
-H "Authorization: Bearer $CLOUS_API_KEY"3. Resolve the issuer to an entity
Each raise carries an issuer_cik; resolve it for canonical name, ticker, and the
entity_id you can join on across endpoints.
curl -s "https://api.clous.ai/v1/entities?cik=0002126250" \
-H "Authorization: Bearer $CLOUS_API_KEY"4. Page through everything
Follow page.next_cursor — cursor pagination, no offset ceiling:
url, params = "https://api.clous.ai/v1/raises", {"min_amount": 5_000_000, "limit": 100}
while True:
resp = requests.get(url, params=params, headers=headers).json()
handle(resp["data"])
if not resp["page"]["has_more"]:
break
params["cursor"] = resp["page"]["next_cursor"]How it works
/v1/raises serves entity-resolved Form D
offerings from EDGAR. To get a webhook the moment a new raise lands instead of
polling, create a monitor on target_type: form,
target_value: "D" — see Real-time material-event alerts.