Tools / Grants.gov Scraper – Status, Eligibility & Award Details
Grants.gov Scraper – Status, Eligibility & Award Details
Search and enrich US federal grant opportunities from the official Grants.gov API: keyword, agency, status, eligibility and funding-category filters, plus optional award ceiling/floor, eligibility text and full synopsis via detail lookup.
Run it
curl -X POST https://fetchsmith.com/api/v1/run/grants-gov-scraper \
-H "Authorization: Bearer YOUR_KEY" -H "Content-Type: application/json" \
-d '{"keyword": "water quality", "maxResults": 100, "oppStatuses": ["posted"]}'
Output fields
id opportunityNumber title agencyCode agency openDate closeDate oppStatus docType cfdaList url agencyName topAgencyName topAgencyCode opportunityCategory postingDate responseDate archiveDate costSharing awardCeiling awardFloor applicantEligibilityDesc applicantTypes fundingInstruments fundingActivityCategories synopsisText cfdas fundingDescLinkUrl synopsisDocumentURLs assistURL lastUpdatedDate modComments
Sample output
{
"agency": "U.S. National Science Foundation",
"agencyCode": "NSF",
"applicantEligibilityDesc": "*Who May Submit Proposals: Proposals may only be submitted by the following:\n -Non-profit, non-academic organizations: Independent museums, observatories, research laboratories, professional societies and similar organi\u2026",
"awardCeiling": null,
"awardFloor": null,
"cfdaList": [
"47.050"
],
"closeDate": null,
"costSharing": false,
"id": "357579",
"openDate": "12/07/2024",
"oppStatus": "posted",
"opportunityCategory": "Discretionary",
"opportunityNumber": "25-519",
"title": "Water, Landscape, and Critical Zone Processes",
"url": "https://www.grants.gov/search-results-detail/357579"
}
Guides
- Grants.gov's search API never returns an error — a typo in your filter just silently returns zero results — Grants.gov's public search2/fetchOpportunity API needs no key, but a bad enum value returns "Webservice Succeeds" with an empty result set instead of a 400, and parent agency codes don't roll up to sub-agencies.
Only publicly accessible pages are read. Respect the source site's terms when using the data.