SAM.gov + USAspending Scraper - Federal Contract Leads
Pricing
from $5.00 / 1,000 opportunity records
SAM.gov + USAspending Scraper - Federal Contract Leads
$700B/year US federal contract intel. Active opportunities (SAM.gov), historical awards (USAspending), re-compete radar, vendor competitive intel, set-aside filter (8(a), WOSB, SDVOSB, HUBZone). For B2B vendors selling to government.
Pricing
from $5.00 / 1,000 opportunity records
Rating
0.0
(0)
Developer
Seibs.co
Maintained by CommunityActor stats
2
Bookmarked
2
Total users
1
Monthly active users
12 days ago
Last modified
Categories
Share
US Gov Contracts Intel
TL;DR for GovCon vendors, capture teams, and federal-contracting consultants: Pulls US federal contract awards from SAM.gov and USAspending with normalized fields (agency, NAICS, PSC, vendor UEI, place of performance, set-aside type, recompete window) plus open opportunities and recompete-watch by date. Compared to GovWin or Bloomberg Government at $5,000-$25,000/yr, you get the underlying SAM.gov and USAspending data normalized with recompete windows, set-aside filtering, and NAICS-coded vendor history at Apify PPE pricing. Free Apify plan covers exploration on your $5 platform credit. Bring your own SAM.gov API key for higher rate limits. Upgrade to Apify Starter ($49/mo) for production volume.
Run it in 30 seconds
# Via the Apify Python SDKfrom apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("seibs.co/us-gov-contracts-intel").call(run_input={"mode": "historical_awards","naics_codes": ["541512"],"date_from": "2025-10-01","max_results": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Or via curl:
curl -X POST "https://api.apify.com/v2/acts/seibs.co~us-gov-contracts-intel/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"mode": "historical_awards", "naics_codes": ["541512"], "date_from": "2025-10-01", "max_results": 100}'
Or click "Try for free" on this page if you prefer the no-code UI.
What you get
Each run produces:
- A clean dataset, filterable in the Apify console and downloadable as CSV or JSON
- An OUTPUT.html dashboard preview of your top records
- A sample-output preview at ./.actor/sample-output.json
Per-archetype custom artifacts shipped with this actor:
- awards.csv (normalized agency, NAICS, PSC, vendor UEI, value, place of performance)
- recompete-watch.csv (awards expiring inside your recompete_window_months)
- vendor-history.csv (per-vendor award history for competitive analysis)
What does US Gov Contracts Intel do?
It pulls and intelligence-classifies records from two official public APIs - SAM.gov Opportunities v2 (active RFPs / RFIs / sources sought / synopses / award notices) and USAspending v2 ($7T+ of historical contract awards back to 2000, plus FPDS subaward data). Both are free; SAM.gov requires a free API key.
Features
- Active opportunity monitor - filter live SAM.gov opportunities by NAICS, agency, value range, set-aside type, response-deadline window.
- Historical award analysis - last N years of awards for any agency or vendor via USAspending.
- Re-compete radar - flag contracts whose period of performance ends inside the next 6 / 12 / 18 months.
- Vendor competitive intel - given a vendor name or UEI/DUNS, returns total federal revenue, agencies served, NAICS distribution, win count, prime-vs-sub split, largest awards, first/last award dates.
- Subcontractor opportunity feed - subaward data for smaller vendors winning under big primes.
- Set-aside filter - 8(a) / WOSB / EDWOSB / SDVOSB / VOSB / HUBZone / IndianEconomic only.
Use cases
- B2B vendors selling INTO the federal government building daily opportunity feeds.
- Capture / business-development teams scoring win-loss against agencies they target.
- GovCon consultants building competitive vendor profiles for clients.
- Teaming opportunity discovery via subaward data (find the primes who routinely sub).
- Recompete pipeline planning 12-18 months ahead of incumbent contracts.
- Federal market analysts tracking set-aside flow and small-business contracting trends.
FAQ
Q: Is this legal? A: Yes. SAM.gov and USAspending.gov are official US-government public-data systems. Every record this actor pulls is mandated-public under federal transparency law (FFATA / DATA Act). No login is required to read this data.
Q: Do I need a SAM.gov API key?
A: Yes for any mode that hits active_opportunities or set_aside_only (SAM.gov's Opportunities API requires an API key). The key is free - sign up at https://sam.gov, request a key from your Account Details > API Key panel. USAspending.gov modes (historical_awards, recompete_radar, vendor_intel, subcontracts) do not require any key.
Q: Why might a run fail? A: The three most common failure modes are (1) missing or invalid SAM.gov API key for opportunity modes, (2) SAM.gov rate limits (1,000 requests/day per key - the actor handles backoff but a heavy run may need a higher-tier key), and (3) overly broad NAICS / PSC filters returning millions of records - narrow your filters or split into per-agency runs.
Q: How fresh is the data? A: SAM.gov active opportunities update in near-real-time as agencies post solicitations. USAspending awards lag by 30-90 days as agencies report obligations. Subaward data lags by 30 days from prime-contract obligation. The actor stamps every record with its source-system load date so you can compute true freshness.
Q: Can I schedule this daily or weekly?
A: Yes. Daily cron is appropriate for active_opportunities and set_aside_only (new solicitations drop every business day). Weekly is appropriate for historical_awards and vendor_intel. Monthly is appropriate for recompete_radar (12-18 month look-ahead planning). Apify Schedules + dedupe on notice_id (opportunities) or award_id_piid (awards) gives clean deltas.
Q: Does it integrate with my CRM or data tooling? A: Yes. Apify webhooks POST every run to HubSpot, Salesforce, Pipedrive, Apollo, or any HTTP endpoint. Zapier, Make.com, and n8n templates available. Dataset exports as JSON / CSV / Excel / XML for Salesforce GovCon Cloud, GovTribe, or your in-house capture system.
Q: How does pricing work? A: PAY_PER_EVENT. You pay per opportunity / award / subaward record emitted, with surcharges on enriched vendor-intel rollups. You only pay for what the actor actually emits.
Related Actors
- sec-edgar-intel - pull SEC filings for the public companies you find in vendor-intel rollups (8-K M&A, going-concern, executive departures) before pitching them as teaming partners.
- b2b-sales-triggers - convert award notifications and recompete-radar windows into outbound sales triggers for your BD / capture team.
- uspto-patent-intel - check IP portfolio of competitors and teaming candidates before submitting a proposal.
Integrations
- Zapier - push to HubSpot/Salesforce/Pipedrive/Apollo
- Make.com - workflow automation
- n8n - self-hosted automation
- Apify webhooks - POST to your endpoint
- API + dataset export (JSON/CSV/Excel/XML)
- MCP / AI agents - call from Claude/GPT/LangChain
Modes
| Mode | Source | SAM.gov key needed? |
|---|---|---|
active_opportunities | SAM.gov | yes |
historical_awards | USAspending | no |
recompete_radar | USAspending | no |
vendor_intel | USAspending | no |
subcontracts | USAspending subaward | no |
set_aside_only | SAM.gov filtered | yes |
Input
See .actor/INPUT_SCHEMA.json. Sample: every active 8(a) IT services opportunity in VA/MD/DC closing in 30 days:
{"mode": "set_aside_only","sam_gov_api_key": "YOUR_KEY","naics_codes": ["541512", "541511", "541519"],"set_aside_types": ["8(a)"],"place_of_performance_state": ["VA", "MD", "DC"],"response_deadline_days": 30,"max_results": 500}
DOD IT contracts expiring in the next 12 months (recompete pipeline):
{"mode": "recompete_radar","naics_codes": ["541512"],"agencies": ["Department of Defense"],"recompete_window_months": 12,"min_value_usd": 1000000,"max_results": 500}
Output
Sample output: ./.actor/sample-output.json â€" copy-paste-ready preview of real-looking records.
First record inline:
{"scraped_at": "2026-05-13T21:02:14Z","mode": "opportunity_search","source": "sam_gov","available": true,"reason": null,"notice_id": "fa872126r0042","solicitation_number": "FA8721-26-R-0042","title": "C-130J Avionics Sustainment & Engineering Support Services","description": "The Air Force Life Cycle Management Center seeks engineering and sustainment support for the C-130J avionics suite, including software maintenance, hardware refresh planning, and integration of next-generation comms upgrades over a 5-year base + 5 option years.","opportunity_type": "Solicitation","contract_type": "IDIQ","set_aside": null,"set_aside_description": null,"naics": "541330","naics_description": "Engineering Services","classification_code": "AC23","agency": "Department of Defense","sub_agency": "Department of the Air Force","office": "Air Force Life Cycle Management Center / WLNN","agency_code": "5700","place_of_performance": {"city": "Robins AFB","state": "GA","zip": "31098","country": "United States","country_code": "USA"},"response_deadline": "2026-07-22T17:00:00Z","posted_date": "2026-05-08T13:00:00Z","archive_date": "2026-08-22T17:00:00Z","action_date": null,"award_amount": null,"base_and_all_options_value": 480000000.0,"total_obligated_amount": null,"recipient_name": null,"recipient_uei": null,"recipient_duns": null,"recipient_address": null,"period_of_performance_start": "2026-10-01","period_of_performance_end": "2031-09-30","url": "https://sam.gov/opp/fa872126r0042/view","raw_links": [{"label": "Attachment_J1_PWS.pdf","url": "https://sam.gov/api/prod/opps/v3/opportunities/fa872126r0042/resources/J1.pdf"}],"recompete_months_remaining": null,"recompete_window_months": null,"is_recompete_candidate": null,"prime_recipient_name": null,"prime_award_id": null,"subaward_type": null,"vendor_metrics": null}
Every record is normalized to one shape regardless of source. Sample:
{"scraped_at": "2026-05-14T12:00:00Z","mode": "recompete_radar","source": "usaspending","available": true,"title": "IT Services Recompete Vehicle - DoD CIO","agency": "Department of Defense","naics": "541512","set_aside": "8(a)","recipient_name": "Booz Allen Hamilton","base_and_all_options_value": 12500000,"period_of_performance_end": "2027-03-31","recompete_months_remaining": 10.5,"is_recompete_candidate": true,"url": "https://www.usaspending.gov/award/CONT_AWD_..."}
Failed lookups still emit a row with available: false and a reason.
Pricing
Pay-per-event:
| Event | Price |
|---|---|
opportunity_record | $0.005 |
award_record | $0.005 |
recompete_alert | $0.010 |
vendor_intel_record | $0.015 |
subcontract_record | $0.005 |
FAQ
Q: Do I need a SAM.gov API key?
A: Only for SAM.gov-backed modes (active_opportunities, set_aside_only). USAspending modes need no key. Get a free SAM key at https://open.gsa.gov/api/get-opportunities-public-api/ in five minutes.
Q: How often is USAspending data refreshed? A: USAspending updates nightly from FPDS / FABS. Action dates older than 24 hours should appear in the feed.
Q: Does this hit PACER, FedBizOpps legacy, or DLA-only feeds? A: No - SAM.gov and USAspending only. Both are the canonical post-2017 government feeds and cover the active vendor universe.
Q: How does the recompete classifier work?
A: It computes months between today and period_of_performance_end. Contracts inside recompete_window_months are tagged is_recompete_candidate: true with recompete_months_remaining populated.
Save your input as an Apify Task
Apify Tasks let you save a configured input once and re-run it with a single click - no need to re-type search terms, locations, filters, or tier settings every time. Tasks are the foundation for everything that comes next: schedules, monitor mode, and webhook routing all attach to a saved Task, not to the raw actor.
Steps to save your current input as a Task:
- On this actor's Apify Store page, click
Runwith your input fully configured. - Click the
Save as taskbutton at the top of the run page. - Name the task something memorable (e.g.
IT services solicitations - daily). - Reload the task page and click
Startanytime to re-run with the same inputs.
Tasks unlock the next two features below: scheduling and monitor mode.
Run this weekly with Apify Schedules
Apify Schedules cron-run any saved Task automatically. Pair this with the saved Task above and you get hands-off recurring runs with no manual clicks, no missed weeks, and a steady stream of fresh data into your CRM or warehouse.
Steps to schedule a Task:
- Save your input as a Task (see above).
- Go to https://console.apify.com/schedules and click
Create new schedule. - Pick your Task and set the cron expression. Common patterns:
- Daily at 9am UTC:
0 9 * * * - Weekly on Mondays at 9am:
0 9 * * 1 - Monthly on the 1st:
0 9 1 * *
- Daily at 9am UTC:
- Save. Apify will run your Task on that schedule automatically, push the dataset to whatever integrations you have wired up, and fire run-completion webhooks for downstream automation.
Run daily to monitor for new SAM.gov solicitations, awards, and modifications in your NAICS codes.
Monitor mode (v2, beta)
Monitor mode is the v2 evolution of this actor and is currently in BETA. It turns a recurring schedule into a true change-feed instead of a firehose of duplicate records.
How it works:
- When this actor runs under an Apify Schedule, monitor mode is enabled automatically.
- Instead of emitting ALL records every run, it emits ONLY records that are NEW or CHANGED since the last scheduled run.
- A digest record summarizes the delta (X new, Y changed, Z removed) at the top of every run.
- Optional: provide a Slack or email webhook URL in the
monitor_webhook_urlinput field and the digest fires there too, so your team gets the delta in their inbox or channel without polling the dataset. - Cost: a single
scheduled_delta_runevent ($0.05) per scheduled run, plus standard PPE on emitted delta records only. Predictable monthly cost, no surprise bills from re-charging for unchanged records.
Monitor mode is rolling out to the top 3 actors first (this one included if it's hotel-motel-lead-finder, google-maps-reviews-pro, or mcp-accounting-firm-leads). Full portfolio coverage by end of June.
Support
Open an issue on the actor's GitHub or contact the maintainer through Apify Store. Include the run ID and the mode + input config used.
Changelog
See ./CHANGELOG.md.
Found this useful?
If this actor saved you time or money, please consider leaving a quick review on the Apify Store. Reviews help other buyers find work that solves their problem and let me prioritize the features paying customers actually use. Leave a review: https://apify.com/seibs.co/us-gov-contracts-intel#reviews