Developer tools · Other
NIH Grants Scraper — RePORTER Funding & PI Data
Search NIH RePORTER and export funded grants — title, abstract, award amount, fiscal year, institution, PI and NIH institute/center — as clean, structured data, no API key required.
Free Apify credit covers a first run. No credit card to try.
What this Actor scrapes
NIH RePORTER is the federal government's public record of every grant it funds — but its unfiltered corpus is 2.9 million project records, its search API caps how deep any single query can page, and it packs research topics into a single string like <code><Term A><Term B></code> instead of a usable list. This Actor requires a real filter (fiscal year, text, institution, PI or agency), pages within the platform's own limits, and flattens every project — title, abstract, award amount, institution, PI and agency — into one clean row.
What we handle for you
- 🏛️ Required-filter guardrail — we block an unfiltered run before it starts so you never accidentally pay for a crawl of NIH's entire 2.9M-project history.
- 🔁 Retries with exponential backoff on
429/5xxand transient network errors — up to 5 attempts per page. - 📄 Pagination that respects NIH's own ceilings — page size and offset limits handled for you, with a clear status message if a search is too broad to page all the way through.
- 🧹 Terms and PI lists flattened — NIH's bracket-packed
<Term A><Term B>strings become a real JSON array, and every principal investigator is a structured record. - 🧊 Clean, typed dataset rows — Pydantic-validated, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
- 💰 Pay-Per-Event pricing — you only pay for grant records that hit your dataset. No data, no charge.
Use cases
- Track who got NIH funding in your therapeutic area before a partnership or licensing conversation.
- Build a competitive-intelligence feed of a rival institution's or PI's active grants.
- Size a research niche's funding trend across fiscal years for a market or investment thesis.
- Feed a grant-writing or business-development CRM with fresh award data instead of a stale export.
Input
Paste this into the Apify Console, or send it as the run input over the API. Proxy settings are on by default; you rarely need to touch them.
| Field | Type | Required | What it does |
|---|---|---|---|
fiscalYears | array | no | Only grants active/awarded in these fiscal years, e.g. [2024, 2025]. |
textSearch | string | no | Match this text against project title, abstract and indexed research terms. |
orgNames | array | no | Recipient institution names to match, e.g. 'Harvard University'. |
piNames | array | no | Principal investigator names to match, e.g. 'Smith'. |
agencies | array | no | NIH institute/center abbreviation codes to match, e.g. 'NCI', 'NIAID'. |
minAwardAmount | integer | no | Only grants awarded at least this much, in US dollars. |
maxAwardAmount | integer | no | Only grants awarded at most this much, in US dollars. |
maxResults | integer | no | Stop after this many grant records. Each record is one billed result row. NIH RePORTER caps how deep any single search can page (~15,000 records) — narrow your filters to go beyond that. |
{
"fiscalYears": [
2024
],
"textSearch": "cancer immunotherapy",
"maxResults": 3,
"proxyConfiguration": {
"useApifyProxy": false
}
} Output
One row per result, schema-validated before it is written. Export JSON, CSV, Excel or XML from the run, or read it over the API.
project_titleabstract_textfiscal_yearaward_amountorg_namecontact_pi_nameagency_nameproject_detail_url
{} Pricing
| Event | Price | When |
|---|---|---|
| Actor start | $0.20 | Once per run, covers warm-up and proxy session setup. |
| Result emitted | $0.0060 | Per result written to the dataset. |
You pay only for results that land. Cap any run with maxTotalChargeUsd. See pricing & billing for worked examples.
Limitations
- Returns NIH RePORTER's published record only — no reviewer scores, summary statements or non-NIH federal funders.
- A single search can page roughly 15,000 records deep; broader topics need multiple narrower runs (e.g. one per fiscal year).
FAQ
Do I need an API key?
Why do I have to set a filter?
Is there a limit on how many results I can page through?
Ready to run it?
Open the listing on Apify, paste the input above, and watch rows land. If it ever breaks, it is our problem before it is yours.
Related Actors