Grants.gov
Grants.gov federal funding notices with watch-term digests
This Actor queries the official Grants.gov opportunity API for bounded feeds (keywords, agencies, eligibility) and emits source-linked funding digest rows. It is a Grants.gov notice watcher, not a TED/SAM.gov bid queue.
Not TED, SAM.gov, or USASpending award monitoring. Not NIH RePORTER awards. Not grant-writing or award-probability advice.
from $8.00 / 1,000 Grants.gov funding digest ($0.008 per delivered apify-default-dataset-item). No Actor Start. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.
Open Grants.gov Scraper on Apify
Grants.gov Scraper, not a neighboring Actor
Use this page for this Actor’s job. Use TED, SAM.gov & Grants Bid Alerts for Procurement notices; Use NIH RePORTER Funding Landscape Report for NIH awards; Use Government Contract Award Change Report for Awarded contracts.
| This Actor | TED, SAM.gov & Grants Bid Alerts | NIH RePORTER Funding Landscape Report | Government Contract Award Change Report | |
|---|---|---|---|---|
| Intent | Grants.gov Scraper | Procurement notices | NIH awards | Awarded contracts |
| Primary input | see schema | keywords / jurisdictions | org/term filters | award watches |
| What it reads | Public sources listed on the Store page | SAM/TED/Grants.gov | NIH RePORTER | TED/USASpending |
| Primary output | Dataset rows billed per live PPE | opportunity rows | award rows | award-change rows |
| Not this job | Not TED, SAM.gov, or USASpending award monitoring. Not NIH RePORTER awards. Not grant-writing or award-probability advice. | Not FDA/NHTSA/CPSC recalls or SEC filings | Not Grants.gov opportunity notices | Not Grants.gov pre-award notices |
Store ID: taroyamada/grants-gov-funding-digest. Respect source terms, robots.txt, and rate limits.
Use cases
- Keyword + agency notice watches
- Closing-soon / high-value flags from live schema fields
- Scheduled snapshotKey digests
How is Grants.gov Scraper different from TED, SAM.gov & Grants Bid Alerts and NIH RePORTER Funding Landscape Report?
Grants.gov Scraper (taroyamada/grants-gov-funding-digest): This Actor queries the official Grants.gov opportunity API for bounded feeds (keywords, agencies, eligibility) and emits source-linked funding digest rows. It is a Grants.gov notice watcher, not a TED/SAM.gov bid queue. Not TED, SAM.gov, or USASpending award monitoring. Not NIH RePORTER awards. Not grant-writing or award-probability advice. TED, SAM.gov & Grants Bid Alerts is for Procurement notices (input keywords / jurisdictions; SAM/TED/Grants.gov; opportunity rows). Not FDA/NHTSA/CPSC recalls or SEC filings. NIH RePORTER Funding Landscape Report is for NIH awards (input org/term filters; NIH RePORTER; award rows). Not Grants.gov opportunity notices. Government Contract Award Change Report is for Awarded contracts (input award watches; TED/USASpending; award-change rows). Not Grants.gov pre-award notices.
What input is required?
Live required fields: feeds. Published exampleRunInput is shown below. Quickstart: set feeds with at least one entry and one filter (agencies, fundingCategories, or keyword)
| Field | Type | Default | Notes |
|---|---|---|---|
feeds |
object[] required | empty |
required Funding feeds to monitor (required). One entry per watch target. Each feed produces one digest row. At minimum, set id, name, and at least one filter (agencies, fundingCategories, or keyword). No API key required. Each item supports id, name, keyword, agencies, fundingCategories, fundingInstruments, oppStatuses, minAwardCeiling. |
watchTerms |
string | empty |
Watch terms — keywords to flag in opportunity titles and synopses (comma-separated). Terms to flag in opportunity titles and synopses. Any opportunity matching a watch term receives a watch_term_hit signal tag and appears in the digest's watchTermHits section. |
lookbackDays |
integer | 14 |
Opportunity lookback window (days). Include opportunities opened within this many days. Keep short (14–30) for recurring runs; widen for initial discovery. min=1 max=365 |
maxOpportunitiesPerFeed |
integer | 50 |
Max opportunities per feed. Upper bound on opportunities fetched per feed per run. min=1 max=500 |
minAwardCeiling |
number | 0 |
Global minimum award ceiling (USD). Skip opportunities with award ceiling below this value. Applied globally unless overridden per feed. Set 0 to include all. min=0 |
closingSoonDays |
integer | 14 |
Closing-soon threshold (days). Opportunities closing within this many days receive a closing_soon signal tag. min=1 max=90 |
highValueThreshold |
number | 1000000 |
High-value award ceiling threshold (USD). Opportunities with awardCeiling >= this value receive a high_value signal tag. min=0 |
delivery |
string enum | dataset |
Delivery mode. dataset stores results in the Apify dataset. webhook posts the digest JSON to webhookUrl. enum: dataset, webhook |
webhookUrl |
string | empty |
Webhook URL (required when delivery=webhook). POST target for funding digest payload. Leave empty for dataset delivery. |
datasetMode |
string enum | all |
Dataset output mode. all emits every feed digest row. action_needed emits only feeds with new or closing-soon opportunities. new_only emits only feeds with opportunities not seen in the previous run. enum: all, action_needed, new_only |
snapshotKey |
string | grants-funding-digest-state |
Snapshot key for recurring state. Stable key used to persist seen opportunity IDs across recurring runs. |
grantsGovApiUrl |
string | https://api.grants.gov/v1/api/search2 |
Grants.gov search2 API URL. Grants.gov legacy search2 endpoint. No API key required. |
requestTimeoutSeconds |
integer | 30 |
HTTP request timeout (seconds). Timeout for each API request. min=5 max=120 |
notifyOnNoNew |
boolean | true |
Emit digest even when no new opportunities found. When true, every feed always produces a digest row even if no new opportunities were found. |
dryRun |
boolean | false |
Dry run (skip snapshot writes and webhook delivery). Validate and fetch without persisting state or posting webhooks. Safe for testing input shapes. |
nowIso |
string | empty |
Override current time (ISO string, for testing). Set to a fixed ISO timestamp to make runs deterministic against fixture data. |
grantsGovFixturePath |
string | empty |
Grants.gov fixture file path (testing). Local JSON fixture for offline Grants.gov tests. |
Published Store example run input (omitted fields take schema defaults):
{
"feeds": [
{
"id": "doe-clean-energy-grants",
"name": "DOE Clean Energy Grants",
"agencies": "DOE",
"fundingCategories": "EN",
"fundingInstruments": "G",
"oppStatuses": "posted"
}
],
"watchTerms": "climate,solar,wind,battery",
"lookbackDays": 14,
"maxOpportunitiesPerFeed": 50,
"minAwardCeiling": 0,
"closingSoonDays": 14,
"highValueThreshold": 1000000,
"delivery": "dataset",
"datasetMode": "all",
"snapshotKey": "grants-funding-digest-quickstart",
"notifyOnNoNew": true,
"dryRun": false
}
Run Grants.gov Scraper on Apify
How do dataset, webhook, and dry-run delivery work?
delivery defaults to dataset on the live schema. Dataset output is the billable surface when rows are written. webhookUrl is used when delivery is webhook (and typically not during dryRun). dryRun true validates or samples without the usual dataset/webhook side effects described on the Store schema. datasetMode can limit emits to changes_only / changed_only / action_needed versus all. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.
What does a result contain?
Published README Output Example / Sample Output JSON. Treat README samples as illustrations, not a live coverage guarantee. There is no published output JSON schema on the Store page.
How is Grants.gov Scraper priced?
Billing is pay per event. The live Store card is from $8.00 / 1,000 Grants.gov funding digest ($0.008 per delivered apify-default-dataset-item). No Actor Start. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE. Current PPE:
| Event | Price | Emitted when |
|---|---|---|
apify-default-dataset-item (Grants.gov funding digest) |
$0.008 | Charged only for one delivered Grants.gov funding opportunity digest row. |
The published README Cost block is stale versus the live Store pricing tab. README Cost still quotes actor-start $0.01. README Cost quotes dataset-item $0.003; live primary is $0.008 (Grants.gov funding digest). Live: Grants.gov funding digest $0.008. This page quotes live PPE only.
from $8.00 / 1,000 Grants.gov funding digest ($0.008 per delivered apify-default-dataset-item). No Actor Start. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.
See Grants.gov Scraper pricing on Apify
Limits to keep in mind
- feeds is required
- Public Grants.gov API only
- Caps via maxOpportunitiesPerFeed
- Not SAM.gov/TED procurement
- Respect source terms, robots.txt, and rate limits.
Open Grants.gov Scraper on Apify
Related pages
- TED, SAM.gov & Grants Bid Alerts — Multi-jurisdiction bid queue; this page is Grants.gov-only.
- NIH RePORTER Funding Landscape Report — NIH awards, not Grants.gov notices.
- Government Contract Award Change Report — Awarded contracts, not open notices.
- Campaign Finance Scraper — FEC/LDA, not grants.
- SAM.gov Vendor Pursuit Intelligence — keyword opportunity scrape.
- Public RFP Rebid Watch Report — snapshot and rebid timing.
- GovCon Recompete & Spend Shift Watch — award windows and concentration.
- Government Tender & Grants Alert Report — multi-source tender/grant watches.
- Tools