NIH Research Grants Search avatar

NIH Research Grants Search

Pricing

Pay per usage

Go to Apify Store
NIH Research Grants Search

NIH Research Grants Search

Search NIH-funded research grants. Filter by topic, PI name, organization, fiscal year, and amount. Returns titles, abstracts, investigators, funding, and detail URLs. No API key needed.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

ryan clinton

ryan clinton

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

What does NIH Research Grants Search do?

NIH Research Grants Search queries the NIH Reporter API to find and extract detailed information about research grants funded by the National Institutes of Health. The actor returns structured data on grant projects including award amounts, principal investigators, institutions, project abstracts, funding agencies, and activity codes.

The NIH funds over $40 billion in biomedical research annually across thousands of institutions. This actor gives you programmatic access to that funding data -- search by keywords, researcher name, institution, fiscal year, or minimum award amount, and get clean structured output ready for analysis.

Why use NIH Research Grants Search on Apify?

  • No API complexity -- The NIH Reporter API uses a POST-based search with nested JSON criteria objects. This actor translates a simple input form into the correct API format automatically.
  • Sorted by award amount -- Results are sorted by award amount (largest first), so you immediately see the highest-funded grants.
  • Automatic pagination -- Fetches up to 10,000 results across multiple API pages (500 per page) with built-in 300 ms rate limiting.
  • Rich output -- Each grant includes principal investigators, institution details, direct/indirect costs, funding agency breakdown, activity codes, project dates, and optional full abstracts.
  • Schedule for monitoring -- Run weekly to track newly funded grants in your research area or from competing institutions.
  • No API key required -- The NIH Reporter API is free and does not require authentication.

Key features

  • Keyword search -- Search across grant titles, abstracts, and scientific terms (e.g., "CRISPR", "machine learning cancer", "Alzheimer biomarker").
  • PI search -- Find grants by principal investigator name.
  • Institution filter -- Filter by organization name (e.g., "Stanford University", "MIT", "Johns Hopkins").
  • Fiscal year filter -- Narrow results to specific fiscal years.
  • Minimum award amount -- Focus on large grants by setting a dollar threshold.
  • Active grants toggle -- Filter to only currently active grants.
  • Optional abstracts -- Include or exclude full project abstract text to control output size.
  1. Navigate to the NIH Research Grants Search actor on the Apify Store.
  2. Click Try for free to open the actor in Apify Console.
  3. Enter search keywords (e.g., "artificial intelligence"), a PI name, or an institution name.
  4. Optionally set fiscal years, minimum award amount, and active-only filter.
  5. Click Start and wait for the run to complete.
  6. Download your results from the Dataset tab in JSON, CSV, or Excel format.

Input parameters

ParameterTypeRequiredDefaultDescription
searchTextstringNo--Search across grant titles, abstracts, and terms (e.g., "CRISPR", "machine learning cancer")
piNamestringNo--Principal investigator name (e.g., "Zhang", "Smith, John")
orgNamestringNo--Institution name (e.g., "Stanford University", "MIT")
fiscalYearsstringNo--Comma-separated fiscal years (e.g., "2024,2025,2026"). Leave empty for all.
minAmountintegerNo--Minimum award amount in US dollars
activeOnlybooleanNofalseOnly return currently active grants
includeAbstractsbooleanNotrueInclude full project abstract text in output
maxResultsintegerNo100Maximum number of grants to return (1--10,000)

Input examples

AI research grants in 2025:

{
"searchText": "artificial intelligence",
"fiscalYears": "2025",
"maxResults": 500
}

Large grants from a specific institution:

{
"orgName": "Stanford University",
"minAmount": 1000000,
"activeOnly": true,
"maxResults": 200
}

Grants by a specific researcher:

{
"piName": "Zhang",
"fiscalYears": "2024,2025",
"includeAbstracts": true,
"maxResults": 100
}

Cancer research funding overview:

{
"searchText": "cancer immunotherapy",
"minAmount": 500000,
"activeOnly": true,
"maxResults": 1000
}

Input tips

  • Use specific keywords for targeted results. "CRISPR gene therapy" is more precise than just "CRISPR".
  • PI name search is flexible. You can search by last name only ("Zhang") or full name ("Zhang, Feng").
  • Fiscal years are comma-separated. Use "2024,2025" to search two years at once.
  • Disable abstracts for smaller output. Abstracts can be very long and significantly increase dataset size.
  • Combine filters for precision -- e.g., a PI name at a specific institution with a minimum award amount.

Output example

{
"applicationId": 10589234,
"projectNumber": "5R01CA278123-02",
"projectTitle": "Machine Learning Approaches for Early Cancer Detection",
"abstractText": "This project aims to develop novel machine learning models...",
"contactPiName": "ZHANG, FENG",
"principalInvestigators": ["ZHANG, FENG", "SMITH, JENNIFER A."],
"organization": "MASSACHUSETTS INSTITUTE OF TECHNOLOGY",
"orgCity": "CAMBRIDGE",
"orgState": "MA",
"orgCountry": "UNITED STATES",
"agencyCode": "NCI",
"agencyName": "National Cancer Institute",
"fundingAgencies": ["NCI"],
"awardAmount": 1250000,
"directCost": 850000,
"indirectCost": 400000,
"fiscalYear": 2025,
"activityCode": "R01",
"awardType": "5",
"projectStartDate": "2024-04-01T00:00:00Z",
"projectEndDate": "2029-03-31T00:00:00Z",
"isActive": true,
"isNew": false,
"covidResponse": null,
"terms": "Cancer; Machine Learning; Artificial Intelligence; Early Detection...",
"congressionalDistrict": "MA-07",
"detailUrl": "https://reporter.nih.gov/project-details/10589234",
"extractedAt": "2025-06-15T10:30:45.123Z"
}

Output fields

FieldTypeDescription
applicationIdnumberNIH application ID (unique per grant application)
projectNumberstringFull NIH project number (e.g., "5R01CA278123-02")
projectTitlestringTitle of the research project
abstractTextstring|nullFull project abstract (null if abstracts disabled)
contactPiNamestringContact principal investigator name
principalInvestigatorsstring[]All PI names on the grant
organizationstringGrantee institution name
orgCitystringInstitution city
orgStatestringInstitution state code
orgCountrystringInstitution country
agencyCodestringAdministering NIH institute code (e.g., "NCI", "NINDS", "NIAID")
agencyNamestringFull name of the administering NIH institute
fundingAgenciesstring[]All funding agency abbreviations
awardAmountnumberTotal award amount in US dollars for this fiscal year
directCostnumber|nullDirect cost portion of the award
indirectCostnumber|nullIndirect (facilities & administration) cost portion
fiscalYearnumberFederal fiscal year of the award
activityCodestringGrant mechanism type (e.g., "R01", "R21", "U01", "P01")
awardTypestringAward type code
projectStartDatestring|nullProject start date (ISO format)
projectEndDatestring|nullProject end date (ISO format)
isActivebooleanWhether the grant is currently active
isNewbooleanWhether this is a new grant (vs. continuation)
covidResponsestring|nullCOVID-19 response designation, if applicable
termsstring|nullScientific terms and keywords associated with the grant
congressionalDistrictstring|nullCongressional district of the institution
detailUrlstring|nullDirect URL to the grant detail page on NIH Reporter
extractedAtstringISO 8601 timestamp of extraction

Use cases

  • Research intelligence -- Track funding trends in your field. Identify which topics are receiving the most NIH investment.
  • Competitive analysis -- See what grants your institution's competitors are receiving, their award amounts, and research topics.
  • Collaboration discovery -- Find PIs working on related topics at other institutions for potential collaboration.
  • Grant writing -- Analyze successful grants in your area to understand funding levels, activity codes, and research directions.
  • Policy analysis -- Track how NIH funding is distributed across states, congressional districts, and research topics.
  • Academic journalism -- Investigate how federal research dollars are allocated across institutions and topics.
  • Industry R&D monitoring -- Track NIH-funded research that could lead to commercial products or licensing opportunities.

Programmatic access (API)

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("ryanclinton/nih-research-grants").call(run_input={
"searchText": "artificial intelligence",
"fiscalYears": "2025",
"minAmount": 500000,
"maxResults": 500,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"${item['awardAmount']:,.0f} - {item['projectTitle']}")
print(f" PI: {item['contactPiName']} at {item['organization']}")
print(f" Agency: {item['agencyName']} ({item['activityCode']})")

JavaScript:

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client.actor("ryanclinton/nih-research-grants").call({
searchText: "artificial intelligence",
fiscalYears: "2025",
minAmount: 500000,
maxResults: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
console.log(`$${item.awardAmount.toLocaleString()} - ${item.projectTitle}`);
console.log(` PI: ${item.contactPiName} at ${item.organization}`);
}

cURL:

# Start a run
curl "https://api.apify.com/v2/acts/ryanclinton~nih-research-grants/runs" \
-X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-d '{
"searchText": "artificial intelligence",
"fiscalYears": "2025",
"minAmount": 500000,
"maxResults": 500
}'
# Fetch results (after run completes)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?format=json" \
-H "Authorization: Bearer YOUR_API_TOKEN"

How it works -- technical details

Input (searchText, piName, orgName, fiscalYears, minAmount)
┌─────────────────────────────────────────────┐
│ 1. Criteria Builder │
│ • searchText → advanced_text_search obj │
{operator: "and", search_field: "terms"}
│ • piName → pi_names: [{any_name: name}]
│ • orgName → org_names: [name]
│ • fiscalYears → comma-split to int array │
│ • minAmount → award_amount_range.min_amount│
│ • activeOnly → is_active: true │
└──────────────────┬──────────────────────────┘
┌─────────────────────────────────────────────┐
│ 2. Paginated POST Fetcher │
│ • POST api.reporter.nih.gov/v2/projects/ │
│ search │
│ • Body: {criteria, offset, limit,
│ sort_field: "award_amount",
│ sort_order: "desc"}
│ • 500 results per page (API max) │
│ • Increment offset by limit each page │
│ • 300 ms delay between requests │
│ • Stop at maxResults or end of results │
└──────────────────┬──────────────────────────┘
┌─────────────────────────────────────────────┐
│ 3. Transform │
│ • PIs: extract full_name from each PI obj │
│ • Org: flatten organization nested object │
│ • Agencies: map to abbreviation strings │
│ • Costs: direct + indirect breakdown │
│ • Abstract: include or exclude per input │
│ • Detail URL: link to NIH Reporter page │
└──────────────────┬──────────────────────────┘
┌─────────────────────────────────────────────┐
│ 4. Output & Summary │
│ • Each grant → Apify dataset │
│ • Summary: total funding, avg award,
│ unique orgs, agencies, active count │
└─────────────────────────────────────────────┘

API details

The NIH Reporter API uses a POST endpoint at https://api.reporter.nih.gov/v2/projects/search. The request body contains:

FieldDescription
criteriaNested search criteria object (keyword search, PI names, org names, fiscal years, award range, active status)
offsetPagination offset (starts at 0)
limitResults per page (max 500)
sort_fieldSort by award_amount
sort_orderdesc (largest awards first)

Criteria mapping

InputAPI criteria fieldFormat
searchTextadvanced_text_search{operator: "and", search_field: "terms", search_text: "..."}
piNamepi_names[{any_name: "..."}]
orgNameorg_names["..."]
fiscalYearsfiscal_years[2024, 2025] (parsed from comma-separated string)
minAmountaward_amount_range{min_amount: 500000}
activeOnlyis_activetrue

Common activity codes

CodeMeaning
R01Research Project Grant (standard investigator-initiated)
R21Exploratory/Developmental Grant (smaller, higher risk)
R43/R44Small Business Innovation Research (SBIR)
U01Cooperative Agreement (NIH involvement in research)
P01Program Project Grant (multi-project)
K01/K08/K23Career Development Awards
T32Training Grants
F31/F32Fellowship Awards

How much does it cost to use?

ScenarioGrantsPagesTimeEst. cost
Quick search1001~10 sec~$0.001
Medium search5001~15 sec~$0.005
Large dataset5,00010~1 min~$0.01
Maximum extraction10,00020~2 min~$0.02

The NIH Reporter API is completely free with no API key required. Apify's free tier includes $5 of monthly platform usage.

Limitations

  1. 10,000 result maximum -- The actor caps at 10,000 results per run. Use fiscal year filters to split larger datasets across multiple runs.
  2. NIH grants only -- This actor searches NIH-funded grants only. It does not include NSF, DOD, DOE, or other federal agency grants.
  3. Keyword search uses AND logic -- The advanced text search combines terms with AND. "machine learning cancer" finds grants containing both terms. Use more specific phrases for targeted results.
  4. Fiscal year data availability -- Some fiscal years may have incomplete data, especially the current year where not all grants have been awarded yet.
  5. Abstract length -- Grant abstracts can be very long. With abstracts enabled, dataset files can be large. Disable includeAbstracts for compact output.
  6. No full-text search of documents -- The search covers titles, abstracts, and indexed terms, but not the full text of grant applications or progress reports.
  7. Award amounts are per fiscal year -- The awardAmount field represents funding for the specified fiscal year, not the total grant amount across all years.
  8. Uppercase names -- PI and organization names are stored in uppercase format.

Responsible use

  • NIH grant data is public information funded by US taxpayers. Use it responsibly for research, analysis, and transparency purposes.
  • Follow the NIH Reporter Terms of Use when using the data.
  • Do not overload the NIH Reporter API with excessive requests. The actor's built-in 300 ms delay between pages handles rate limiting automatically.
  • When publishing analysis of NIH funding data, cite NIH Reporter as the data source.

FAQ

Do I need an API key? No. The NIH Reporter API is free and does not require authentication.

How current is the data? NIH Reporter data is updated regularly as grants are awarded and renewed throughout the fiscal year. New awards typically appear within a few weeks of being funded.

What is the difference between direct and indirect costs? Direct costs fund the actual research (personnel, equipment, supplies). Indirect costs (also called F&A -- facilities and administration) cover institutional overhead like building maintenance, utilities, and administration.

What do the activity codes mean? Activity codes indicate the grant mechanism type. R01 is the standard investigator-initiated research grant, R21 is for exploratory research, U01 is a cooperative agreement with NIH involvement, and K-series awards are career development grants. See the full list at NIH activity codes.

Can I search by NIH institute? Not directly through the input, but the output includes agencyCode and agencyName fields (e.g., "NCI" for National Cancer Institute, "NIAID" for National Institute of Allergy and Infectious Diseases). You can filter results after extraction.

The output dataset can be exported in JSON, CSV, or Excel format, or accessed programmatically via the Apify API. Use webhooks to trigger automated workflows when a run completes.

Related ActorDescriptionUse with
PubMed Biomedical Literature SearchSearch biomedical research papersFind publications from NIH-funded researchers
Clinical Trial TrackerSearch ClinicalTrials.govCross-reference grants with clinical trials they fund
OpenAlex Research Paper SearchSearch academic papersTrack publications resulting from NIH grants
Semantic Scholar Paper SearchAI-powered paper searchFind cited and citing papers from grant-funded research
Grants.gov Federal Grant SearchSearch all federal grantsFind grants from agencies beyond NIH
ORCID Researcher SearchLook up researcher profilesConnect PIs to their full publication records

Connect with any Apify integration including Google Sheets, Zapier, Make (Integromat), Amazon S3, and custom API endpoints to build automated research funding monitoring workflows.