2026
SAM.gov Federal Contract Opportunity & Award Alerts (2026)
Search US federal contract opportunities and awards by NAICS, agency, keyword, set-aside, notice type and state — from the official SAM.gov registry. Full solicitation text included. No API key needed. Pay per result.
Verification
Not yet in the weekly verification report.
Output fields
Authoritative field set from the dataset schema.
| Field | Type |
|---|---|
notice_id | string|null |
title | string|null |
solicitation_number | string|null |
agency | string|null |
office | string|null |
notice_type | string|null |
naics_code | string|null |
set_aside | string|null |
posted_date | string|null |
response_deadline | string|null |
archive_date | string|null |
place_of_performance_state | string|null |
place_of_performance_city | string|null |
contact_name | string|null |
contact_email | string|null |
contact_phone | string|null |
description | string|null |
award_amount | string|null |
award_date | string|null |
award_number | string|null |
awardee_name | string|null |
ui_link | string|null |
source_url | string|null |
scraped_at | string|null |
status | string|null |
Sample row
{
"notice_id": "bfbe1f99b3fb44e981d3729d8622c940",
"title": "Microsoft 365 Data Migration Project",
"solicitation_number": "N6471026Q0016",
"agency": "DEPT OF DEFENSE",
"office": "STRATEGIC WEAPONS FAC PAC FINANCIAL",
"notice_type": "Solicitation",
"naics_code": "541512",
"set_aside": "NONE",
"posted_date": "2026-09-09T00:20:23+00:00",
"response_deadline": "2026-09-14T17:00:00-07:00",
"archive_date": "2026-09-29",
"place_of_performance_state": "WA",
"place_of_performance_city": "Silverdale",
"contact_name": "Tabbatha Austin",
"contact_email": "tabbatha.austin@swfpac.navy.mil",
"contact_phone": "3605643069",
"ui_link": "https://sam.gov/opp/bfbe1f99b3fb44e981d3729d8622c940/view",
"source_url": "https://sam.gov/opp/bfbe1f99b3fb44e981d3729d8622c940/view"
} Inputs
| Field | Type | Req | Default | Description |
|---|---|---|---|---|
naicsCodes | array | no | ["541512"] | Industry codes to match (e.g. '541512'). Leave empty to match any industry. |
keyword | string | no | — | Free-text match across the opportunity (e.g. 'cybersecurity'). |
keywords | array | no | [] | Look up many in ONE run instead of starting a run per lookup. Takes the same values as 'Keyword'. Combined with 'Keyword' if you fill both, and duplicates are removed. Billing is unchanged: you are charged per record returned, not per entry submitted. |
agency | string | no | — | Buying organization name, matched anywhere in the notice's department / agency / office chain (e.g. 'VETERANS AFFAIRS' or 'GENERAL SERVICES ADMINISTRATION'). Partial names work. |
setAside | string | no | — | Set-aside code, e.g. SBA (small business), 8A, WOSB, SDVOSBC. Comma-separate for several. Leave empty for all. |
noticeTypes | array | no | ["o","k","p","r"] | Which kinds of notice to return, as SAM.gov's one-letter codes. Defaults to the four open-solicitation types: o = Solicitation, k = Combined Synopsis/Solicitation, p = Presolicitation, r = Sources Sought. Also available: a = Award Notice (who won and for how much — pair it with 'Active notices only' switched off), s = Special Notice, u = Justification (J&A), g = Sale of Surplus Property, i = Intent to Bundle Requirements, m = Modification/Amendment. A code outside this list is ignored and logged rather than silently widening your search. |
activeOnly | boolean | no | true | On by default. Turn it off to include notices SAM.gov has archived — needed for most award-notice searches, since an award is usually posted after the solicitation closes. |
state | string | no | — | Two-letter state code the work is performed in, e.g. 'CA'. Comma-separate for several. Leave empty for anywhere. |
lookbackDays | integer | no | 1 | Fetch opportunities posted within this many days. Every run returns everything in the window that matches, so a wide window on a frequent schedule returns the same notices again. |
maxResults | integer | no | 100 | Cap on opportunities fetched per run. Applied per keyword when you submit a batch. |
proxyConfiguration | object | no | {"useApifyProxy":true} | SAM.gov serves this data without an account or an API key, but it meters by IP. Leaving Apify Proxy on is the tested configuration and costs very little bandwidth for this actor. |
Pricing
Pay per result (dataset-item) — no charge for empty runs.
Example: 50 opportunities returned at $0.0025/result ≈ $0.13.
FAQ
Where does the data come from?
SAM.gov's own public contract-opportunity search — the same source that powers sam.gov's search page. Each row is also enriched from that notice's public detail record, which is where the NAICS code, set-aside, place of performance and point of contact live.
Do I need a SAM.gov account or an API key?
No. This actor needs neither. You do not register with SAM.gov, data.gov or login.gov, and there is no API key to paste in or keep topped up.
Does each run only return new opportunities?
No — each run returns the current opportunities matching your filters within your lookback window. Use a short lookbackDays (e.g. 1) on a daily schedule to keep results focused on recent postings.
Can I get email or Slack alerts?
Yes — schedule the actor and connect Apify's native email/Slack/webhook integrations to new dataset items.
How many results can one search return?
Up to 1,000 per keyword per run. SAM.gov itself will not page beyond 10,000 records for a single query; if a search is broad enough to hit that, the run says so in a free row rather than quietly returning less.
How am I charged?
Per opportunity returned. Runs that return no matches are free, and so is the row the actor emits to explain an upstream problem.
Can I see who won a contract?
Yes. Set Notice types to 'Award Notice' and turn off 'Active notices only' (an award is normally posted after the solicitation closes). Those rows carry the awardee, the award amount, the award date and the contract number.
Which notice types can I search?
Solicitation, Combined Synopsis/Solicitation, Presolicitation, Sources Sought, Award Notice, Special Notice, Justification (J&A), Sale of Surplus Property, Intent to Bundle Requirements, and Modification/Amendment. The default is the four open-solicitation types.
Do rows include the full solicitation text?
Yes, in the 'description' field, with HTML stripped to plain text. Across 150 notices sampled on 2026-09-09 it was present on 139; the rest genuinely publish no description.
Guides & use cases
Related actors