Getting started
Discovery vs enrichment
StartupHub is built around proactive discovery: we find companies from domain registrations, government registries, GitHub orgs, and live websites before most of them appear in press. Generic web-search APIs (Tavily, Linkup, Parallel, Exa) answer a different question: what is being written about right now. Both are useful. They are not interchangeable.
The short version
- GET /startups queries our ingested directory (discovered + enriched rows), filterable by country, sector, week, month, stealth, tech stack.
- POST /enrich runs the full profile pipeline on a known company: live Google Search grounding, website scrape, tech fingerprint, founders/funding guards.
- Neither endpoint is a substitute for open-ended web search. Use both when you need stealth + structure.
How we discover new startups
Discovery is a set of scheduled ingestion pipelines. Each pipeline watches a primary signal, stages candidates, probes the website, fingerprints the stack, and promotes a row into startups. No news article required.
| Signal | What it catches | Typical lead time vs press |
|---|---|---|
| New domain registrations (.ai, .io, …) | Stealth / pre-launch sites, coming-soon pages | Days to weeks before coverage |
| Company registries | Israel, Canada (OrgBook BC), UK, US SEC Form D, France, Florida, California, New York, … | Filing date often precedes launch PR |
| GitHub new orgs | Dev-tool startups before marketing sites exist | Very early, dev-first companies |
| RSS / press extraction | Companies mentioned in funding news (secondary path) | Same day as article, but not our primary edge |
After promotion, enrichment fills sectors, description, founders, funding, and tech_fingerprint. Fresh promotes may have empty sectors for a few hours; use created_at for "added this week" and founded_date for "founded this month" (domain/reg filing date until enrichment overwrites with grounded data).
StartupHub vs Tavily / Linkup / Parallel
| StartupHub | Web search RAG APIs | |
|---|---|---|
| Query model | Filter a pre-built, structured directory | Live search per question |
| Finds stealth .ai domains | Yes (primary pipeline) | Only if someone already wrote about them |
| Israel / Canada registry filings | Yes, ingested on schedule | Unreliable unless press covered the filing |
| Cybersecurity sector filter | Yes, once enriched (sector=) | Keyword snippets, not a typed column |
| By week / month | created_at + founded_after | Depends on article dates in results |
| Tech stack, stealth, founder emails | Native filters on detected signals | Not available |
Recipe queries
These are the queries buyers actually run. All use the same endpoint: GET /startups.
New cybersecurity startups in Israel (this month)
curl -G "https://www.startuphub.ai/api/v1/startups" \
-H "Authorization: Bearer sk_live_..." \
--data-urlencode "country=Israel" \
--data-urlencode "sector=Cybersecurity" \
--data-urlencode "founded_after=2026-07-01" \
--data-urlencode "sort=created_at.desc" \
--data-urlencode "limit=50"New AI startups in Canada (added since June)
curl -G "https://www.startuphub.ai/api/v1/startups" \
-H "Authorization: Bearer sk_live_..." \
--data-urlencode "country=Canada" \
--data-urlencode "sector=Artificial Intelligence" \
--data-urlencode "sort=created_at.desc" \
--data-urlencode "founded_after=2026-06-01" \
--data-urlencode "limit=100"Stealth AI on .ai / .io with verified founder emails
Requires Pro Lite+ for stealth=true and has_known_emails=true.
curl -G "https://www.startuphub.ai/api/v1/startups" \
-H "Authorization: Bearer sk_live_..." \
--data-urlencode "stealth=true" \
--data-urlencode "domain_tld=ai,io" \
--data-urlencode "has_known_emails=true" \
--data-urlencode "sort=created_at.desc"What POST /enrich does
Enrichment is for a known company (name + ideally website). It does not discover net-new companies from an open-ended prompt. When the pipeline runs, every paid call enables live Google Search grounding (same engine as admin Fetch Info), then:
- Gemini grounded extraction (description, sectors, HQ, funding with citation guards)
- Direct website scrape (socials, logos, page text)
- Tech fingerprint (CDN, hosting, analytics, payments, ATS, …)
- LinkedIn employee count, open roles sync, GitHub commit emails where available
- Founder/team minting only when grounding sources verify the person matches the domain
curl -X POST "https://www.startuphub.ai/api/v1/enrich" \
-H "Authorization: Bearer sk_live_..." \
-H "Content-Type: application/json" \
-d '{"name":"Acme Security","website":"https://acme.security","force":true}'Flags: fast:true returns cache only;force:true re-runs even if enriched within 7 days. See Enrich Company.
Recommended agent workflow
- Sourcing: poll
GET /startups?sort=created_at.descwith your ICP filters (country, sector, founded window). - Deep dive: for rows you care about, call
POST /enrichor fetchGET /startups/:slug. - Buzz / narrative: use GET /news/mentions or a web-search tool for "who got written about this week" (orthogonal to discovery).
- Lists: POST /lists/ai-generate combines grounded search with directory matching when you have a natural-language brief.
Two different "new" timestamps
created_at = when StartupHub ingested the row.founded_date = domain registration, registry filing, or grounded enrichment. A company can register a domain in July and appear in our directory in August. For "new to us this week" sort by created_at.desc. For "founded this month" use founded_after / founded_before.
Product overview: New Startups API. Full reference: API docs.