SAM.gov Contract Opportunities Scraper
Pricing
Pay per event
SAM.gov Contract Opportunities Scraper
Scrape SAM.gov federal contract opportunities: RFPs, solicitations, sources sought and awards. Filter by keyword, NAICS, set-aside, state and date. Get contacts, deadlines, NAICS/PSC and attachments. No API key.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Andres Garcia
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
SAM.gov Contract Opportunities Scraper: Federal RFPs, Bids & Contacts
Export federal contract opportunities from SAM.gov (solicitations, RFPs, RFQs, sources sought, presolicitations and award notices) as clean JSON, CSV or Excel. Filter by keyword, NAICS code, set-aside (8(a), HUBZone, SDVOSB, WOSB, small business), place-of-performance state and posting date. Each row includes the contracting officer's name, email and phone, the response deadline, NAICS/PSC codes and attachment links.
No SAM.gov API key, no login, no proxies. The actor reads the same public JSON endpoints that power the SAM.gov website, so runs are fast and cheap.
What can this SAM.gov scraper do?
- π Search all active federal opportunities by keyword, with optional exact-phrase and title-only matching
- π·οΈ Filter by NAICS codes, notice type, set-aside program and state, the same filters govcon BD teams use every day
- π Relative date windows ("posted in the last 7 days", "deadline from today") for daily or weekly scheduled monitoring
- π€ Contracting officer contacts: primary and secondary point of contact with name, email and E.164 phone
- β° Response deadline + "days left" so you can prioritize bids that are still open
- ποΈ Department, agency, office and office address
- π Award notices: awardee name, UEI, contract number, award amount and date (great for competitor intelligence)
- π Attachment links (SOW, PWS, specifications, amendments) and the official SAM.gov URL
- π Plain-text description (HTML stripped, optional length limit)
- π° Pay only for results, with a hard
maxItemscap
Who uses it?
| Use case | How |
|---|---|
| Government contractors / BD teams | Schedule a daily run with your NAICS codes and set-asides, then push new RFPs to Slack, email or your CRM |
| Proposal writers & consultants | Build pipelines of open solicitations with deadlines and contacts for clients |
| Lead generation for B2B sellers | Find agencies buying your category and the contracting officers behind them |
| Competitive intelligence | Track award notices: who won, for how much, at which agency |
| Market research & AI agents | Feed structured federal procurement data into dashboards, LLMs and RAG pipelines |
How to use it
- Click Try for free (or Start). The input is prefilled with IT-services NAICS codes (541511, 541512, 541519) and the last 14 days, so the first run works in one click.
- Adjust keywords, NAICS codes, set-asides, states and dates to match your niche.
- Click Start and download the results as JSON, CSV, Excel, XML or HTML, or fetch them through the Apify API.
- Schedule it (for example every morning with
Posted on or after = 1 day) and connect an integration (Slack, Google Sheets, Zapier, Make, webhooks) to get new bids automatically.
Input example
{"keywords": "janitorial","noticeTypes": ["o", "k", "r"],"naicsCodes": ["561720"],"setAsides": ["SBA", "WOSB"],"states": ["TX", "OK"],"postedFrom": "7 days","responseDueFrom": "+0 days","maxItems": 200}
| Field | Description |
|---|---|
keywords | Full-text search. With Keywords must appear in the title on (default), only notices whose title contains all words are returned, which removes boilerplate matches. |
noticeTypes | o Solicitation, k Combined Synopsis/Solicitation, p Presolicitation, r Sources Sought, s Special Notice, a Award Notice, u Justification, i Intent to Bundle, g Surplus Sale |
naicsCodes | One or more NAICS codes |
setAsides | SBA, SBP, 8A, 8AN, HZC, HZS, SDVOSBC, SDVOSBS, WOSB, WOSBSS, EDWOSB, EDWOSBSS, VSA, VSS, IEE, ISBEE, BICiv |
states | Place-of-performance states (2-letter codes) |
postedFrom / postedTo | YYYY-MM-DD or relative (7 days = 7 days ago) |
responseDueFrom | Skip notices whose deadline has passed (+0 days = today) |
includeDetails | Contacts, NAICS, PSC, set-aside, place of performance, award data and description (default on) |
includeAttachments | Attachment and link URLs (default on) |
maxItems | Maximum results (up to 10,000 per search) |
Output example
{"noticeId": "afd976c236d1409ebfa10d80aee511af","title": "AFSBn Snow Removal","solicitationNumber": "W911S227QA003","noticeType": "Combined Synopsis/Solicitation","postedDate": "2026-09-30T23:54:57.907+00:00","responseDeadline": "2026-10-16T10:00:00-04:00","daysUntilResponseDeadline": 16,"department": "DEPT OF DEFENSE","agency": "DEPT OF THE ARMY","office": "W6QM FT DRUM CONTRACTING OFFICE","naicsCodes": ["561730"],"pscCode": "S218","setAsideCode": "SBA","setAside": "Total Small Business Set-Aside (FAR 19.5)","primaryContactName": "Mary Summerlin","primaryContactEmail": "mary.e.summerlin3.civ@army.mil","primaryContactPhone": "+13157725053","contacts": [{ "type": "primary", "name": "Mary Summerlin", "email": "mary.e.summerlin3.civ@army.mil", "phone": "+13157725053" },{ "type": "secondary", "name": "Cody Bresette", "email": "cody.a.bresette.civ@army.mil", "phone": null }],"description": "Fort Drum, NY has a requirement for snow plowing, salting, and snow removalβ¦","attachments": [{ "name": "PIEE Solicitation Module Link", "type": "link", "url": "https://piee.eb.mil/β¦" }],"url": "https://sam.gov/opp/afd976c236d1409ebfa10d80aee511af/view"}
The dataset has two ready-made views: Opportunities (deadline, set-aside, contact) and Awards (awardee, UEI, amount).
How much does it cost to scrape SAM.gov?
This actor uses pay-per-event pricing: you pay a small fee when a run starts and a fixed price per opportunity saved. There are no compute or proxy charges on top. The current prices are shown on the Pricing tab, at roughly $1.75 per 1,000 opportunities. A daily run that returns 50 new bids costs about 9 cents. Apify's free plan credits cover many runs per month.
Set maxItems (and optionally Max cost per run in the run options) to keep a hard cap on spend.
Tips
- Daily monitoring: schedule with
postedFrom = "1 day"andresponseDueFrom = "+0 days". You get only new, still-open bids. - Small-business pipelines: combine
setAsides(e.g.SDVOSBC,8A,HZC) with your NAICS codes. - Competitor tracking: set
noticeTypes = ["a"]andactiveOnly = false, then filter the Awards view by awardee. - Broad discovery: turn off Keywords must appear in the title to search inside descriptions too.
FAQ
Do I need a SAM.gov API key? No. The actor uses SAM.gov's public website endpoints, which need no key or account.
Is scraping SAM.gov legal? SAM.gov opportunity data is public US government information published for anyone to read and reuse. This actor only reads public notices and does not access anything behind a login. Contact data is published by the agencies for vendor inquiries. Use it for legitimate business communication and follow applicable laws (e.g. CAN-SPAM).
How fresh is the data? Real time. Every run queries SAM.gov live.
What's the maximum per run? SAM.gov returns up to 10,000 notices per search. Split larger exports by date range or NAICS code.
Can I get the attachments' files? The actor returns direct download links. Files are not downloaded, which keeps runs fast and cheap.
Something broke or you need a field? Open an issue on the Issues tab. We monitor this actor daily and usually respond within 24 hours.
Related actors by WAAGS
- SEC Form D Funding Leads: newly funded US companies with executives
- FMCSA Trucking Carrier Leads: US trucking companies with phone and email
- Bulk Email Validator: clean contact lists before outreach
- US Phone Number Validator: E.164, line type, state and time zone
Not affiliated with, endorsed by, or sponsored by the U.S. General Services Administration or SAM.gov.