NIH RePORTER Grants Scraper
Pricing
Pay per event
NIH RePORTER Grants Scraper
Search NIH RePORTER grants and export projects, PIs, organizations, institutes, abstracts, awards, dates, and public URLs from the official API.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Extract public NIH grant and project records from NIH RePORTER using the official public API.
Use this actor to monitor funded biomedical research, map grant landscapes, find principal investigators, follow universities or biotech competitors, and export structured funding intelligence into CSV, JSON, Excel, databases, or dashboards.
What does NIH RePORTER Grants Scraper do?
NIH RePORTER Grants Scraper searches the public NIH RePORTER Projects API and saves one dataset row per grant or project record.
It returns normalized records with project numbers, titles, abstracts, fiscal years, organizations, principal investigators, NIH institutes and centers, award amounts, dates, terms, and public RePORTER URLs.
The actor uses the official JSON API rather than a browser. That makes it faster, cheaper, and more reliable than scraping rendered pages.
Who is it for?
- ๐ University research offices tracking awards by institution, PI, fiscal year, or topic.
- ๐งฌ Biotech and pharma business-development teams mapping funded science and potential collaborators.
- ๐ Grant intelligence platforms building recurring NIH funding datasets.
- ๐ฅ Hospitals and research institutes monitoring competitor funding.
- ๐งโ๐ฌ Researchers looking for similar projects, active awards, or funding trends.
- ๐งพ Consultants preparing market maps, diligence reports, and landscape summaries.
Why use this actor?
- โ Uses the official NIH RePORTER API.
- โ No login, cookies, or private credentials required.
- โ Supports topic, fiscal year, agency/IC, organization, PI, activity code, award type, and project number filters.
- โ Produces clean, typed, export-ready rows.
- โ Includes direct RePORTER project links for review and citation.
- โ Handles pagination and retryable NIH API errors politely.
Data returned
| Field group | Examples |
|---|---|
| Project IDs | applId, projectNumber, coreProjectNumber, projectSerialNumber |
| Grant content | projectTitle, abstractText, publicHealthRelevance, terms, preferredTerms |
| Fiscal/funding | fiscalYear, awardAmount, directCostAmount, indirectCostAmount, totalCostByIc |
| Organization | organizationName, city, state, country, organization type |
| People | principalInvestigators, contactPiName |
| NIH context | agencyCode, administeringIcCode, administeringIcName, fundingIcs |
| Dates | project start/end, budget start/end, award notice date |
| Links | reporterUrl, sourceSearchUrl |
How much does it cost to scrape NIH RePORTER grants?
This actor uses pay-per-event pricing.
- A small start event is charged once per run.
- A result event is charged for each saved grant/project row.
- You control cost with
maxItems.
The official API does not require a proxy, so runs are designed to stay inexpensive and predictable.
Quick start
- Open the actor on Apify.
- Enter a topic such as
cancer immunotherapy. - Optionally add fiscal years, agencies, organization names, PI names, or project numbers.
- Set
maxItems. - Run the actor.
- Export results from the dataset as CSV, JSON, Excel, XML, or RSS.
Input options
Text query
Searches project title, abstract, and NIH terms.
Example:
{"query": "Alzheimer biomarker"}
Fiscal years
Restrict results to NIH fiscal years.
{"fiscalYears": [2024, 2025]}
Agencies / ICs
Use NIH agency or Institute/Center abbreviations such as NCI, NIAID, NHLBI, NIA, or NINDS.
{"agencies": ["NCI"]}
Organizations and PIs
Track awards by institution or investigator.
{"organizationTerms": ["Harvard"],"principalInvestigatorTerms": ["Smith"]}
Award and activity codes
Filter by NIH award type or activity code.
{"awardTypes": ["1"],"activityCodes": ["R01", "R21"]}
Project numbers
Retrieve known project numbers.
{"projectNumbers": ["R01CA123456"]}
Example input
{"query": "cancer immunotherapy","fiscalYears": [2024, 2025],"agencies": ["NCI"],"maxItems": 100,"pageSize": 100}
Example output
{"projectNumber": "5P30CA015704-51","fiscalYear": 2026,"projectTitle": "Lung Cancer","organizationName": "FRED HUTCHINSON CANCER CENTER","principalInvestigators": ["A McGarry Houghton"],"administeringIcCode": "CA","awardAmount": 401412,"reporterUrl": "https://reporter.nih.gov/project-details/11303351"}
Use cases
Grant intelligence
Build recurring exports of NIH funded projects by disease area, modality, institution, PI, or fiscal year.
Competitive intelligence
Track which universities, hospitals, startups, or pharma partners receive funding in a scientific area.
Business development
Find active principal investigators and funded labs that may be relevant for partnerships, licensing, or clinical collaborations.
Academic reporting
Export award histories for a department, center, or institution without manual RePORTER searches.
Tips for better results
- Use specific scientific terms for high precision.
- Use fiscal years when you only need recent awards.
- Use agency filters for institute-specific landscapes.
- Start with
maxItems: 100, inspect output, then increase for larger exports. - Combine organization and topic filters for targeted monitoring.
Integrations
You can connect the dataset to:
- Google Sheets or Excel exports for analysts.
- BI dashboards such as Looker Studio, Power BI, or Tableau.
- CRM or deal-flow databases for BD teams.
- Data warehouses for repeat grant-intelligence pipelines.
- LLM workflows for summarizing abstracts and identifying trends.
API usage
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/nih-reporter-grants-scraper').call({query: 'cancer immunotherapy',fiscalYears: [2024, 2025],agencies: ['NCI'],maxItems: 100,});console.log(run.defaultDatasetId);
Python
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/nih-reporter-grants-scraper').call(run_input={'query': 'Alzheimer biomarker','fiscalYears': [2024, 2025],'maxItems': 100,})print(run['defaultDatasetId'])
cURL
curl -X POST "https://api.apify.com/v2/acts/automation-lab~nih-reporter-grants-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"query":"cancer immunotherapy","fiscalYears":[2024,2025],"maxItems":100}'
MCP usage
Use the Apify MCP server with this actor enabled:
https://mcp.apify.com/?tools=automation-lab/nih-reporter-grants-scraper
Claude Code setup:
$claude mcp add apify-nih-reporter "https://mcp.apify.com/?tools=automation-lab/nih-reporter-grants-scraper"
Claude Desktop JSON config:
{"mcpServers": {"apify-nih-reporter": {"url": "https://mcp.apify.com/?tools=automation-lab/nih-reporter-grants-scraper"}}}
Example prompts:
- "Run the NIH RePORTER grants scraper for CRISPR delivery grants from 2024 and summarize top institutions."
- "Find NCI-funded cancer immunotherapy projects and group them by principal investigator."
- "Export NIH Alzheimer's biomarker awards and identify collaboration targets."
Output quality notes
NIH records can vary by year, institute, and award type. Some fields may be null when NIH does not provide them for a record.
The actor preserves both normalized fields and source URLs so you can inspect the original public RePORTER page.
Limitations
- This actor returns public NIH RePORTER project data only.
- It does not access private grant applications or restricted NIH systems.
- It depends on the public NIH API availability and accepted query fields.
- Very broad searches should use a sensible
maxItemscap.
Legality
The actor uses NIH's public RePORTER API and collects public grant/project metadata. You are responsible for using exported data in compliance with applicable laws, Apify terms, and your organization's policies.
FAQ
Does it require a NIH API key?
No. The checked Projects API endpoint is public and did not require authentication.
Can I search by project number?
Yes. Use the projectNumbers input for known full or core project numbers.
Why are some award fields null?
NIH does not provide every cost or award field for every record. Null values mean the source response did not include a usable value.
Why did I get fewer rows than maxItems?
The API may have fewer matching records than your requested cap, or your filters may be too narrow.
How do I monitor one university?
Set organizationTerms to the university name and optionally add fiscal years or research topic terms.
Related scrapers
Explore other automation-lab actors for public research, government, and funding intelligence workflows:
- https://apify.com/automation-lab/pubmed-search-scraper
- https://apify.com/automation-lab/clinicaltrials-gov-studies-scraper
- https://apify.com/automation-lab/samgov-government-contracts-scraper
- https://apify.com/automation-lab/world-bank-projects-scraper
Support
If the NIH API changes or you need an additional filter/output field, open an issue on the actor page with your input and expected result.
Version
Initial version: official NIH RePORTER Projects API search with normalized grant intelligence output.