Grants.gov Opportunities Scraper - Federal Funding Data
Pricing
from $3.00 / 1,000 grant opportunities
Grants.gov Opportunities Scraper - Federal Funding Data
Search the official Grants.gov API for posted and forecast federal funding opportunities, agencies, dates, numbers and assistance listings.
Pricing
from $3.00 / 1,000 grant opportunities
Rating
0.0
(0)
Developer
Ben
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Turn **Grants.gov Search API** into clean JSON, CSV or Excel rows without maintaining a custom integration. This Actor is designed for grant writers, nonprofits, universities, consultancies, startups and public-sector business-development teams. It uses the source's supported public feed, official API or open-data interface, keeps the default run intentionally small, and stores one normalized record per default-dataset item.The Actor is production-oriented rather than a demo. It includes bounded inputs, retries for transient service errors, explicit empty-result failures, a structured dataset view and source links that make each row traceable. Run it manually, call it through the Apify API, schedule it, or connect it to Make, Zapier and n8n.## What this Actor returnsSearch the official Grants.gov API for posted and forecast federal funding opportunities, agencies, dates, numbers and assistance listings.Core output fields include:- `opportunity_id`
-
opportunity_number -
title -
agency_code -
agency -
open_date -
close_date -
status -
document_type -
assistance_listing_numbers -
opportunity_urlAdditional source and search fields may be included when they improve traceability. Fields that are not available for a particular record are returned as
nullrather than guessed.Why use this data source?
Grants.gov is the US government's central portal for federal grant opportunities. Its public search service exposes opportunity identifiers, agencies, status, dates and assistance listing numbers in structured JSON.
Using the first-party interface matters. It reduces blocking and proxy cost, makes daily monitoring practical, and preserves identifiers that can be checked against the publisher. The Actor does not copy a competitor implementation or depend on a third-party resale database. It normalizes current responses from the named source.
Common use cases
Monitor new funding opportunities for a program area
The structured output makes this workflow repeatable: run it on demand, schedule it, or pass the rows to the next system without manually copying records. Keep the input narrow enough to produce relevant results and retain the source identifiers for verification.
Route matching grants to internal owners
The structured output makes this workflow repeatable: run it on demand, schedule it, or pass the rows to the next system without manually copying records. Keep the input narrow enough to produce relevant results and retain the source identifiers for verification.
Build a funding calendar with close dates
The structured output makes this workflow repeatable: run it on demand, schedule it, or pass the rows to the next system without manually copying records. Keep the input narrow enough to produce relevant results and retain the source identifiers for verification.
Analyze which agencies fund a market or technology
The structured output makes this workflow repeatable: run it on demand, schedule it, or pass the rows to the next system without manually copying records. Keep the input narrow enough to produce relevant results and retain the source identifiers for verification.
## Input| Field | Type | Description || --- | --- | --- || `keyword` | `string` | Keyword or phrase to search across federal funding opportunities. Default: `"climate"`. |
| statuses | array | Grants.gov statuses to include. Common values are posted, forecasted, closed and archived. Default: ["posted", "forecasted"]. |
| maxResults | integer | Maximum number of funding opportunity rows to save. Default: 10. |
The default `maxResults` is deliberately low so a first run finishes quickly and produces an inexpensive proof dataset. Increase it only after confirming that your filters return the records you need.### Example input```json{
"keyword": "artificial intelligence", "statuses": [ "posted", "forecasted" ], "maxResults": 25 } ```
## Output and export formatsEvery matching record is pushed separately to the default Apify dataset. From the Dataset tab you can download JSON, CSV, Excel, XML, RSS or JSONL. API clients can use the dataset-items URL returned by the run object. Because the schema is stable, the output can be loaded into a database, spreadsheet, data warehouse or agent workflow without scraping log text.A representative row contains the source identifier, human-readable title or name, the most useful status and date fields, and a direct source URL when the publisher exposes one. The exact fields are documented above and shown in the dataset table view.## How it works1. The Actor validates and bounds the supplied input.2. It calls the supported **Grants.gov Search API** interface with a descriptive request identity.3. Transient timeouts, rate limits and server errors are retried with backoff.4. Source-specific nested fields are normalized into one flat business-friendly row.5. Each row is written to the default dataset, where Apify automatically applies the configured pay-per-event result charge.6. A zero-row response fails clearly instead of reporting a misleading successful run.The Actor runs with limited permissions and only requests permission to write its result dataset. It does not require access to your other Actors, key-value stores or account resources.## Scheduling and automationCreate an Apify Schedule to run the Actor hourly, daily or weekly. A schedule is useful for monitoring fresh records, while a one-off run is better for research or backfills. Keep inputs in the Task rather than hard-coding them in an external workflow so they can be reviewed and changed safely.In Make, Zapier or n8n, use the Apify integration to run this Actor and then iterate over default-dataset items. For custom code, call `POST /v2/acts/benthepythondev~grants-gov-opportunities-scraper/runs`, poll the run to a terminal state, and fetch items from the run's default dataset. Never place an Apify token in a public frontend.## PricingThis Actor uses transparent pay-per-event pricing: `$0.00005` when a run starts and `$0.0030` for each record written to the default dataset. A run that returns 100 records therefore has a result charge of about `$0.30`, plus the small start event and normal Apify platform usage. The input limit controls both dataset size and result-event spend.## Data quality and responsible useSearch results are discovery records and may omit full eligibility, award ceiling or attachment details. Always open the official opportunity page and read the complete notice before preparing an application.Public does not mean context-free. Preserve attribution and source URLs, respect intellectual-property and privacy obligations, and do not use the data for prohibited discrimination, harassment or unsolicited bulk messaging. If a record drives a legal, financial, safety or compliance decision, verify it with the authoritative publisher and a qualified professional.The upstream service can add fields, revise records, enforce quotas or experience downtime. The Actor retries transient failures, but it cannot guarantee that the source is always available or that every upstream record is complete. Scheduled users should monitor failed runs and retain the source ID so changed rows can be reconciled.## FAQ### Do I need an account or API key?The default workflow uses a public, supported interface and does not require a user login. If the publisher changes its access policy in the future, the Actor will fail clearly rather than collecting data through an unrelated account.### Can I export the results to CSV or Excel?Yes. Open the default dataset after a run and select the desired download format. JSON and JSONL are best for code, while CSV and Excel are convenient for review and enrichment.### Can I run it on a schedule?Yes. Save a Task with the filters you want, then attach an Apify Schedule. Start with a daily run and adjust only after observing result volume, change frequency and cost.### How are duplicates handled?The Actor returns records supplied by the source for the requested query. Where the source exposes stable identifiers, those identifiers are included so downstream systems can upsert instead of append. Some sources intentionally publish several rows for one broader case or process; the README limitations explain those situations.### Why did my run return no rows?A filter may be too narrow, a date range may have no current records, or the source may be temporarily unavailable. Review the Actor log, broaden one filter at a time and keep `maxResults` small while testing.### Is this an official product of the source publisher?No. This is an independent Apify Actor that reads a public interface and links back to the authoritative source. Source names are used only to describe compatibility.### How do I get support?Open an issue on the Actor page with the run ID, a redacted input example and the field you expected. Do not post API tokens, personal credentials or private feed URLs in a public issue.## You might also like- [federal-register-scraper](https://apify.com/benthepythondev/federal-register-scraper)
-
If the Actor produced a useful dataset, please leave a short Apify Store review. Reviews help prioritize maintenance and show other users which workflows are working in production.
Keywords: grants gov opportunities scraper, grants.gov search api, data API, public data scraper, Apify Actor, automation, structured dataset, JSON export, CSV export, scheduled monitoring, market research, business intelligence.