SAM.gov Contract Opportunities Watcher - New Federal Bids Daily
Pricing
from $2.00 / 1,000 contract notices
SAM.gov Contract Opportunities Watcher - New Federal Bids Daily
Daily new federal contract opportunities from SAM.gov filtered by NAICS, state, set-aside and notice type. Returns only notices that are new since your last run. No API key needed.
Pricing
from $2.00 / 1,000 contract notices
Rating
0.0
(0)
Developer
Musedenny
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
SAM.gov Contract Opportunities Watcher – New Federal Bids Daily
Get new federal contract opportunities from SAM.gov every day, filtered to what you can actually bid on: NAICS code, state, set-aside, notice type and keywords. Each notice is returned once: schedule it daily and you only ever see what's new since the last run.
- No API key needed. Uses SAM.gov's free official daily Contract Opportunities bulk extract, so you are not limited by the public API's ~10 requests/day. (You can switch to the API with your own key if you prefer.)
- Reliable by design: one official file per day, retries with backoff, a clear error message if SAM.gov is down, and no scraping of the SAM.gov website.
- Clean, consistent output: agency, office, NAICS, PSC, set-aside, response deadline, place of performance, award details and a direct SAM.gov link.
- No personal data: point-of-contact names, emails and phone numbers are left out.
Input
{"naicsCodes": ["5415", "541611"],"states": ["CO", "UT"],"setAsideCodes": ["SBA", "SDVOSBC"],"noticeTypes": ["Solicitation", "Combined Synopsis/Solicitation", "Presolicitation", "Sources Sought"],"keywords": ["cloud", "software"],"postedWithinDays": 3,"onlyNew": true}
| Field | Default | Description |
|---|---|---|
naicsCodes | all | 2–6 digit codes or prefixes (5415 matches 541511, 541512, …). |
states | all | Two-letter codes, matched on place of performance (office state if missing). stateField switches to office or either. |
setAsideCodes | all | SAM.gov codes, e.g. SBA, SBP, 8A, 8AN, HZC, SDVOSBC, WOSB, EDWOSB, VSA, ISBEE. NONE = no set-aside. |
noticeTypes | Solicitation, Combined Synopsis/Solicitation, Presolicitation, Sources Sought | Also: Special Notice, Award Notice, Justification, Intent to Bundle Requirements (DoD-Funded), Sale of Surplus Property. |
keywords / excludeKeywords | – | Matched in title and description (any word; case-insensitive). |
postedWithinDays | 3 | Window of posting dates to consider. |
onlyNew | false | Turn on for daily schedules: return each notice only once per filter set (state kept in a named key-value store). |
activeOnly | true | Skip archived/inactive notices. |
excludeExpired | true | Skip notices whose response deadline has passed. |
includeDescription | true | Include the description text (first 2,000 chars). |
maxResults | 5000 | Cap per run. |
source | bulk | api uses the SAM.gov public API with samApiKey. |
Output
{"noticeId": "c9d8c27ff1b24620b4918251397f0c57","title": "CTX ARMORED CAR SERVICES","solicitationNumber": "36C257-27-AP-0929","agency": "VETERANS AFFAIRS, DEPARTMENT OF","subTier": "VETERANS AFFAIRS, DEPARTMENT OF","office": "257-NETWORK CONTRACT OFFICE 17 (36C257)","postedDate": "2026-10-31 17:58:22","noticeType": "Sources Sought","baseType": "Sources Sought","setAsideCode": null,"setAside": null,"responseDeadline": "2026-11-10T10:00:00-06:00","naicsCode": "561613","pscCode": "V127","placeOfPerformance": {"city": "Temple", "state": "TX", "zip": "76504", "country": "USA"},"officeLocation": {"city": "San Antonio", "state": "TX", "zip": "78240"},"active": true,"archiveDate": "2026-11-25","award": null,"description": "Armored Car Services **SEE Attachment for DETAILS**","additionalInfoLink": null,"link": "https://sam.gov/workspace/contract/opp/c9d8c27ff1b24620b4918251397f0c57/view","source": "bulk-extract","firstSeenAt": "2026-11-01T09:00:00Z"}
Scheduling
Create a daily schedule (e.g. 07:00 Eastern; SAM.gov refreshes the extract early each morning). If the extract hasn't changed since the last run, the run ends in seconds without downloading it again.
Pricing (pay per event + usage)
| Event | Price | When |
|---|---|---|
apify-actor-start | $0.003 | Apify built-in event, charged once per run (per GB of memory above 1 GB). Covers start-up cost and deters empty runs. |
notice | $0.002 | One new contract opportunity matching your filters. |
Example: a daily watch returning 20 new notices costs $0.003 + 20 × $0.002 = $0.043 per day.
Plus Apify platform usage for the run itself (server time), typically $0.0002–0.0005 per run because the Actor is lightweight and capped at 512 MB. The run stops cleanly when your maximum cost per run is reached.
Notes
- The extract is ~200 MB; a full run takes about a minute and needs 1 GB memory.
- The API source can't combine several NAICS codes/states in one request, so it fetches broader results and filters locally; with no registered entity, SAM.gov allows only ~10 API requests per day.
Local development
pip install -r requirements.txt pytest pytest-asyncio respxpytest # HTTP mocked, uses a recorded sample of the real extract (contacts removed)python -m src # reads storage/key_value_stores/default/INPUT.json