SAM.gov Federal Contracts Monitor + USAspending Awards
Pricing
from $2.00 / 1,000 opportunities
SAM.gov Federal Contracts Monitor + USAspending Awards
Find US federal contract opportunities on SAM.gov, plus USAspending awards. In: keywords, NAICS, PSC, set-aside, agency, state, dates (all optional). Out: one JSON row per notice: title, agency, NAICS, set-aside, deadline, link; optional full text + attachments. $0.002/notice; 20 by default.
Pricing
from $2.00 / 1,000 opportunities
Rating
0.0
(0)
Developer
Krundle Freako
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Find U.S. federal contract opportunities on SAM.gov and get alerts when new ones match your filters. Optionally, look up who won similar contracts on USAspending.gov. No API key, login or SAM.gov account needed.
The Actor reads GSA's official daily Contract Opportunities extract (the full CSV published on data.gov, about 200 MB and 70,000 active notices). It streams and filters that file in a few seconds instead of paging through a rate-limited search API, so runs are fast, cheap and consistent. If you want them, it then pulls the full description and all attachment download links for each match from sam.gov. It can also query the free USAspending.gov awards API.
What you can do
- Search opportunities by keywords (any/all, with exclusions), NAICS (prefix match:
5415covers 541511/541512/541519), PSC (prefix match:D,DA01), set-aside type (SBA, 8(a), HUBZone, SDVOSB, WOSB, EDWOSB, VOSB, ...), agency (department, sub-tier or office name, abbreviation such asVA/DHS/DLA, or CGAC/AAC code), place-of-performance state, notice type (solicitation, combined synopsis, sources sought, presolicitation, award notice, ...), posted date and response deadline ranges, active only and still open for response. You can also look up exact solicitation numbers or notice IDs. - Alerts. Only new since last run remembers what it already delivered (in a named key-value store), so a daily schedule returns, and charges for, new notices and amendments only. If GSA hasn't published a new extract since your last complete run, the run ends in under a second.
- Full details (optional). Adds the full HTML/text description (the extract cuts descriptions at 32,000 characters) and every attachment and link with a stable sam.gov download URL, file type, size and posting date, plus the latest modified date, status and cancellation flag.
- Contracting officer contacts (optional, off by default). Primary and secondary contact name, title, email and phone.
- USAspending awards (optional). Search awarded contracts and IDVs by recipient, NAICS, PSC, awarding agency, state, set-aside, keywords, amount and date window (action date, new awards only, or last modified). Use it to see incumbents, competitors' wins and agency spending in your niche. The award lookup can reuse your opportunity NAICS/agency/state filters automatically.
Example inputs
Cybersecurity work under NAICS 541512:
{ "keywords": ["cybersecurity"], "naicsCodes": ["541512"], "maxOpportunities": 100 }
Daily alert for open SDVOSB/small-business VA notices in VA/MD/DC, with attachments, plus recent VA awards in the same NAICS:
{"agencies": ["Veterans Affairs"],"setAsideCodes": ["SDVOSBC", "SBA"],"naicsCodes": ["541512", "541519"],"states": ["VA", "MD", "DC"],"stateMatch": "placeOfPerformanceOrOffice","openForResponseOnly": true,"includeDetails": true,"onlyNew": true,"stateKey": "va-it-dmv","baselineOnFirstRun": true,"searchAwards": true,"awardDateType": "new_awards_only","awardLookbackDays": 30,"maxAwards": 50}
Awards only. Booz Allen's largest VA contracts and IDVs since January:
{"searchOpportunities": false,"searchAwards": true,"awardRecipients": ["Booz Allen Hamilton"],"awardAgencies": ["Department of Veterans Affairs"],"awardTypes": ["contracts", "idvs"],"awardDateFrom": "2026-01-01","awardSortBy": "amount","maxAwards": 25}
Output
Every dataset item has recordType: opportunity or award. Use the Opportunities and Awards views in the dataset tab, or export to JSON, CSV or Excel.
Opportunity (real example, shortened):
{"recordType": "opportunity","noticeId": "d6491df7d2f04213b1330e1e96e99cbc","title": "Technical and Programmatic Support Services (TPSS) MATOC III","solicitationNumber": "W912DY27RA014","noticeType": "Combined Synopsis/Solicitation","department": "DEPT OF DEFENSE","subTier": "DEPT OF THE ARMY","office": "W2V6 USA ENG SPT CTR HUNTSVIL","postedDate": "2026-10-01T19:04:38.000Z","responseDeadline": "2026-10-19T14:00:00.000Z","daysUntilResponse": 1,"naicsCode": "541519","pscCode": "J059","setAsideCode": null,"placeOfPerformance": { "city": null, "state": null, "zip": null, "country": null },"officeAddress": { "city": "REDSTONE ARSENAL", "state": "AL", "zip": "35898-0000", "country": "USA" },"description": "Amendment 0003 - provide responses to remaining questions ...","url": "https://sam.gov/opp/d6491df7d2f04213b1330e1e96e99cbc/view","matchedKeywords": ["cybersecurity"],"attachments": [{"name": "PIEE Solicitation Module Link for W912DY27RA014","type": "link","url": "https://piee.eb.mil/sol/xhtml/unauth/search/oppMgmtLink.xhtml?noticeId=W912DY27RA014¬iceType=CombinedSynopsisSolicitation"}],"attachmentCount": 4,"lastModifiedDate": "2026-10-15T16:48:53.412+00:00","detailsFetched": true}
A file attachment looks like this. The url redirects to a short-lived signed download, so it keeps working.
{ "name": "ATTACHMENT B SOW Hemochron Reagents.docx", "type": "file", "mimeType": "docx", "sizeBytes": 27499,"url": "https://sam.gov/api/prod/opps/v3/opportunities/resources/files/f7f50f810c984dbaaad37709046814df/download" }
Award (real example, shortened):
{"recordType": "award","awardId": "15B40827F00000039","awardType": "DELIVERY ORDER","recipientName": "BCT PARTNERS LLC","recipientUei": "PFSLMY1VAK71","amount": 3012.04,"baseObligationDate": "2026-10-16","startDate": "2026-11-01","endDate": "2026-11-30","awardingAgency": "Department of Justice","awardingSubAgency": "Federal Prison System / Bureau of Prisons","naicsCode": "541512","pscCode": "Q522","placeOfPerformance": { "state": "NJ", "country": "USA", "zip5": "07103" },"url": "https://www.usaspending.gov/award/CONT_AWD_15B40827F00000039_1540_HHSN316201200074W_7529"}
With Include contracting officer contacts on, opportunities also get primaryContact/secondaryContact objects (title, fullName, email, phone, fax). Each run also stores a RUN_SUMMARY record in the default key-value store, with the filters, rows scanned, number of matches, already-seen skips and charged events.
Alerts: "only new since last run"
- Turn on Only new since last run and set a State key (e.g.
my-naics-alert). - Optionally turn on Baseline on first run. The first run then marks everything that matches today as seen, without outputting or charging for it, so you are alerted only about notices posted afterwards.
- Schedule the Actor daily (GSA refreshes the extract once a day, early morning US Eastern), and connect the dataset to email, Slack, Google Sheets, Zapier or Make via Apify integrations.
The memory lives in the named key-value store samgov-contracts-state on your account. Delete the store or change the state key to start over. SAM.gov gives every amendment a new notice ID, so amendments of tracked solicitations show up as new items.
Pricing (pay per event)
| Event | Price | When |
|---|---|---|
| Actor start | $0.00005 | once per run (Apify standard) |
| Opportunity | $0.002 ($2 per 1,000) | each opportunity saved, data from the extract |
| Opportunity with details | $0.004 ($4 per 1,000) | instead of Opportunity when full details (full description + attachments) were loaded |
| Award | $0.003 ($3 per 1,000) | each USAspending award saved |
You don't pay for platform compute. Already-seen items in alert mode are free, and so are runs when nothing changed. Set a maximum cost per run in the Console and the Actor stops cleanly at that limit. Example: a daily alert that finds 15 new notices with details and 10 awards costs 15 × $0.004 + 10 × $0.003 + $0.00005 ≈ $0.09 a day.
Use from AI agents and the API (MCP, x402, Skyfire)
Tool summary for agents. Input (all optional): keywords, naicsCodes, pscCodes, setAsideCodes, agencies, states, noticeTypes, postedWithinDays or postedFrom/postedTo, responseFrom/responseTo; set searchAwards: true for USAspending awards. Output: one JSON item per record with recordType opportunity (title, noticeType, department, naicsCode, setAside, postedDate, responseDeadline, url…) or award (recipientName, amount, awardingAgency…). Defaults: 20 opportunities, 20 awards. Cost: $0.002 per opportunity, so a default call costs about $0.04 and finishes in about 20 seconds. Set includeDescription: false for compact output in LLM context.
- REST API:
POST https://api.apify.com/v2/acts/krundle~samgov-federal-contracts-monitor/run-sync-get-dataset-itemswithAuthorization: Bearer <token>and the input JSON as the body. - MCP:
https://mcp.apify.com?tools=krundle/samgov-federal-contracts-monitorworks in Claude, Cursor, ChatGPT and other MCP clients. - Agentic payments (no Apify account): agents can pay with x402 (USDC on Base or Solana) or MPP through a prepaid token from agi.apify.com, or with Skyfire via
https://mcp.apify.com?payment=skyfire&tools=krundle/samgov-federal-contracts-monitor. This Actor is pay-per-event with limited permissions, so it is eligible for both.
Tips and limitations
- Data freshness. The extract is regenerated once a day, so notices posted after the latest refresh appear in the next day's file. For same-hour alerts, run the Actor after GSA's morning refresh.
- Active notices only. The full extract contains currently active notices (about 70,000). Older archived notices are not included.
- Place of performance is filled in only on about a quarter of notices. Use State match → Or office state to also catch notices whose contracting office is in your state.
- Keyword search is a case-insensitive word-start match on the title, solicitation number and description in the extract (not SAM.gov's relevance search).
cybermatches cybersecurity. Phrases match across spaces and hyphens. - Descriptions in the extract are capped at 32,000 characters (
descriptionTruncated: true). Turn on details for the full text. - Attachments. Controlled-access (CUI/export-controlled) files still require a SAM.gov login to download. They are listed with
accessLevelandexportControlled. - USAspending only searches awards from 2007-10-01 on. Agency names are mapped to USAspending's agency list (the log shows the mapping). Award data typically lags by days to weeks behind contract signature, and DoD data by about 90 days.
- Large exports. Exporting everything (
maxOpportunities: 0with no filters) works with the default 512 MB memory and takes about 2 minutes for 70,000 notices. Use 1 GB for extra headroom.