SAM.gov Federal Contract Opportunities Scraper
Pricing
from $3.00 / 1,000 contract opportunities
SAM.gov Federal Contract Opportunities Scraper
Scrape U.S. federal contract opportunities, RFPs, Sources Sought, and Award Notices from SAM.gov with NO API key required. Filter by NAICS code, SBA/SDVOSB/8(a) set-aside, state, notice type, and keyword. Extracts full PWS/SOW text, direct RFP attachment links, and POC emails.
Pricing
from $3.00 / 1,000 contract opportunities
Rating
0.0
(0)
Developer
Lumul
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
SAM.gov Contract Opportunities Scraper (No API Key, RFPs & POCs)
Extract active and historical U.S. federal contract opportunities, Solicitations (RFPs/RFQs), Sources Sought / RFIs, Presolicitations, Combined Synopsis/Solicitations, Special Notices, Award Notices, and Sole Source Justifications (J&As) directly from SAM.gov—with zero SAM.gov API keys required.
Built for GovCon capture teams, BD agencies, proposal automation pipelines, and AI / MCP agents, this Actor bypasses SAM.gov's restrictive 10-request/day public API limit to deliver clean, schema-locked JSON with full Performance Work Statement (PWS) text, direct attachment download links, and verified Contracting Officer contact details.
Why Use This SAM.gov Scraper?
- No SAM.gov API Key Required: Skip the SAM.gov system account registration, entity validation delays, and 10–1,000 request/day public API rate limits. Run immediately on demand or on a schedule.
- Direct RFP & SOW Attachment Download Links (
attachmentLinks): Automatically resolves direct, unauthenticated download URLs for every attached PDF, Word document, Excel pricing matrix, and SF-30 amendment—ready to feed directly into LLM/RAG bid-scoring pipelines. - Verified Contracting Officer Contacts (
pointOfContact): Extracts primary and secondary Point of Contact names,.mil/.govemail addresses, phone numbers, titles, and fax numbers for immediate GovCon capture and RFI outreach. - Dual-Speed Execution for AI & MCP Agents (
includeFullDescription):- Full Capture Mode (
includeFullDescription: true): Fetches, strips HTML/entities, and normalizes complete multi-page Performance Work Statements (PWS) and Statements of Work (SOW). - MCP Fast-Scan Mode (
includeFullDescription: false): Bypasses secondary description/resource requests for sub-second discovery scans across hundreds of notices.
- Full Capture Mode (
- Multi-NAICS & Socioeconomic Set-Aside Filtering: Filter by single or multiple NAICS prefixes/codes (e.g.,
541511,541512,541519), Set-Aside codes (SBA,8A,SDVOSBC,WOSB,HZC), U.S. State (VA,MD,DC), Notice Types, and Posted Date windows. - Crash-Resilient & Deduplicated: Persists pagination and deduplication state across Apify container migrations so long runs never emit duplicate
noticeIdrecords or lose progress.
What Data Can You Extract? (19 Locked Fields)
Every record pushed to the dataset is strictly validated against a 19-field schema:
| Field | Type | Description |
|---|---|---|
noticeId | string | Unique 32-character SAM.gov opportunity identifier |
title | string | Cleaned, quote-normalized contract opportunity title |
solicitationNumber | string | null | Official agency solicitation / RFQ / RFP number (e.g., 36C26026Q1017) |
department | string | null | Top-level Federal Department (e.g., DEPT OF DEFENSE, VETERANS AFFAIRS, DEPARTMENT OF) |
subTierAgency | string | null | Sub-tier agency or command (e.g., DEPT OF THE NAVY, DEFENSE LOGISTICS AGENCY) |
office | string | null | Contracting office name and code |
noticeType | string | Standardized type (Solicitation, Presolicitation, Combined Synopsis/Solicitation, Sources Sought, Special Notice, Award Notice, Justification) |
naicsCode | string | null | Primary NAICS code (e.g., 541511, 541519, 236220) |
setAsideCode | string | null | SBA Set-Aside code (e.g., SBA, SDVOSBC, 8A, WOSB, NONE) |
setAsideDescription | string | null | Full FAR Set-Aside description (e.g., Total Small Business Set-Aside (FAR 19.5)) |
postedDate | string | ISO-8601 publication timestamp |
responseDeadLine | string | null | ISO-8601 proposal/response due date with timezone offset |
active | boolean | true if the opportunity is currently active on SAM.gov |
pointOfContact | array<object> | Array of contact objects (fullName, email, phone, title, type, fax) |
placeOfPerformance | object | Structured location object (city, state, country, zip) |
uiLink | string | Direct link to view the opportunity on SAM.gov |
descriptionText | string | null | Full HTML-sanitized, whitespace-normalized solicitation/PWS body text |
attachmentLinks | array<string> | Direct download URLs for all public RFP/SOW/amendment files |
scrapedAt | string | ISO-8601 UTC timestamp when the record was extracted |
Input Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
keyword | string | "software development" | Search keywords for contract opportunities |
naicsCodes | array<string> | ["541511"] | Filter by one or more NAICS codes or prefixes (e.g., ["541511", "541512"]) |
noticeTypes | array<string> | All types | Filter by notice types (Solicitation, Presolicitation, Combined Synopsis/Solicitation, Sources Sought, Special Notice, Award Notice, Justification) |
setAside | string | Any | Filter by SBA set-aside code (e.g., SBA, 8A, SDVOSBC, WOSB, HZC, NONE) |
state | string | Any | Two-letter U.S. state/territory code for Place of Performance (e.g., VA, MD, DC) |
activeOnly | boolean | true | Fetch only currently active contract opportunities |
postedFrom | string | Any | Start date filter in YYYY-MM-DD format |
postedTo | string | Any | End date filter in YYYY-MM-DD format |
includeFullDescription | boolean | true | Set to true to fetch full PWS/SOW description text and attachment download URLs, or false for fast metadata-only scans |
maxItems | integer | 25 | Maximum number of contract opportunities to extract |
limit | integer | 100 | Page size per API request |
pageSize | integer | 100 | Alias for limit (custom page size override for pagination) |
proxyConfiguration | object | Apify Proxy | Optional proxy configuration |
Input Configuration Examples
1. Capture Team Daily RFP & Sources Sought Monitor (Full Descriptions + Attachments)
{"keyword": "software development","naicsCodes": ["541511", "541512", "541519"],"setAside": "SBA","noticeTypes": ["Sources Sought","Presolicitation","Solicitation","Combined Synopsis/Solicitation"],"activeOnly": true,"includeFullDescription": true,"maxItems": 100}
2. Fast-Scan Mode for AI & MCP Agents (Metadata + POCs Only)
Set "includeFullDescription": false when an AI agent needs to rapidly triage titles, agencies, deadlines, and Contracting Officer emails before selectively fetching full RFPs:
{"keyword": "cybersecurity","activeOnly": true,"includeFullDescription": false,"maxItems": 50}
Sample Output Record
{"noticeId": "f50d635e4b9d4404916c47df2357fc66","title": "Admin Management, Data Management, Software Development (Quality Assurance Inspection Software for EMS)","solicitationNumber": "36C26026Q1017","department": "VETERANS AFFAIRS, DEPARTMENT OF","subTierAgency": "VETERANS AFFAIRS, DEPARTMENT OF","office": "260-NETWORK CONTRACT OFFICE 20 (36C260)","noticeType": "Combined Synopsis/Solicitation","naicsCode": "541519","setAsideCode": "SDVOSBC","setAsideDescription": "Service-Disabled Veteran-Owned Small Business (SDVOSB) Set-Aside (FAR 19.14)","postedDate": "2026-10-13T22:26:14+00:00","responseDeadLine": "2026-11-03T17:00:00-08:00","active": true,"pointOfContact": [{"fullName": "Tyrone Whalen, Contract Specialist","email": "tyrone.whalen@va.gov","phone": null,"title": null,"type": "primary","fax": null},{"fullName": "Danielle Carrico","email": "danielle.carrico@va.gov","phone": null,"title": null,"type": "secondary","fax": null}],"placeOfPerformance": {"city": null,"state": "OR","country": "USA","zip": "97239"},"uiLink": "https://sam.gov/opp/f50d635e4b9d4404916c47df2357fc66/view","descriptionText": "Amendment 0001- Answer Questions submitted from vendors by questions deadline of 10/05/2026 and adding attachment 1 revised RFQ 36C26026Q1017 The is for the acquisition of admin management, data management, software development (Quality Assurance Inspection Software for EMS)","attachmentLinks": ["https://sam.gov/api/prod/opps/v3/opportunities/resources/files/7bfc532463ae431e9691354505f1bd82/download?&status=public","https://sam.gov/api/prod/opps/v3/opportunities/resources/files/8d4538ae37f045d890881c5479afbee1/download?&status=public","https://sam.gov/api/prod/opps/v3/opportunities/resources/files/83bc8d042ae24ecaa4ae84307d8a1e3e/download?&status=public"],"scrapedAt": "2026-10-20T17:57:20.230Z"}
Integrations: MCP Server, n8n & Clay
Connect to Claude Desktop, Cursor, or Windsurf (Apify MCP Server)
Give your AI assistant real-time access to live federal contracts via the official @apify/actors-mcp-server:
{"mcpServers": {"sam-gov-contracts": {"command": "npx","args": ["-y","@apify/actors-mcp-server","--actors","lumul/sam-gov-federal-contract-opportunities-scraper"],"env": {"APIFY_TOKEN": "your_apify_api_token"}}}}
Automated Bid / No-Bid Pipeline in n8n or Make.com
- Schedule Trigger: Run every weekday morning at 7:00 AM EST.
- Apify Node: Run this Actor with your target
naicsCodes,setAside, andpostedFromset to today's date. - LLM Node (OpenAI / Anthropic): Pass
title,descriptionText, andresponseDeadLineagainst your company capability statement to score Bid / No-Bid (0–100). - Slack / CRM Node: Post high-scoring opportunities directly to Slack or HubSpot with one-click
attachmentLinksandpointOfContact[0].email.
GovCon Lead Generation in Clay.com
Import the dataset into Clay to enrich pointOfContact .mil and .gov Contracting Officer emails, match solicitationNumber to incumbent contractors on Award Notices, and automate Sources Sought / RFI capability statement submissions before solicitations drop.