SAM.gov Contract Opportunity Alerts avatar

SAM.gov Contract Opportunity Alerts

Under maintenance

Pricing

from $3.00 / 1,000 contract notices

Go to Apify Store
SAM.gov Contract Opportunity Alerts

SAM.gov Contract Opportunity Alerts

Under maintenance

New US federal contract opportunities from SAM.gov as clean data: title, agency, deadline, NAICS code, set-aside and contact. Filter by keyword and run it on a schedule to get only new notices. Needs your own free SAM.gov API key.

Pricing

from $3.00 / 1,000 contract notices

Rating

0.0

(0)

Developer

Kye Williams

Kye Williams

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Security

Limited permissions

Share

Get new U.S. federal contract opportunities from SAM.gov as clean data: the title, the agency, the notice type, the response deadline, the NAICS code, the set-aside, the contracting contact and a link to the notice. Search by keyword, filter by agency, NAICS code, set-aside, state and deadline, and run it on a schedule to receive only notices you have not seen.

You need your own free SAM.gov API key. The Actor calls SAM.gov's official Get Opportunities API with your key, so the requests count against your own SAM.gov allowance, not anyone else's. Getting a key takes a few minutes (see "Get your SAM.gov API key" below).

Who it is for

  • Small businesses and government contractors who want a daily list of bids that match their work.
  • Proposal and business-development teams tracking sources-sought and presolicitation notices early.
  • Analysts and researchers building datasets of federal opportunities and awards.
  • Automations and AI agents that need a dependable "what did agencies just post?" feed.

What you get

One row per notice. Each row includes:

  • noticeId, title, solicitationNumber, agency (the full agency path), postedDate, noticeType and baseType
  • responseDeadline, naicsCode, classificationCode, setAside (plain description) and setAsideCode, and active
  • placeOfPerformance (as one line) and placeOfPerformanceState
  • contactName, contactEmail, contactPhone (the primary contact) and contacts (up to five)
  • award for award notices: date, number, amount in USD, awardee name and UEI
  • sourceUrl (the notice's page on sam.gov), descriptionUrl, additionalInfoUrl, and attachmentCount with attachmentLinks

Example row (illustrative values):

{
"noticeId": "a1b2c3d4e5f6",
"title": "Cloud migration support services",
"solicitationNumber": "W911QY-26-R-0042",
"agency": "DEPT OF DEFENSE.DEPT OF THE ARMY.ARMY CONTRACTING COMMAND",
"postedDate": "2026-10-02",
"noticeType": "Solicitation",
"responseDeadline": "2026-10-30T17:00:00-04:00",
"naicsCode": "541511",
"setAside": "Total Small Business Set-Aside (FAR 19.5)",
"contactName": "Pat Buyer",
"contactEmail": "pat.buyer@army.example",
"placeOfPerformance": "Arlington, VA, 22202, USA",
"sourceUrl": "https://sam.gov/opp/a1b2c3d4e5f6/view"
}

Get your SAM.gov API key

  1. Sign in to SAM.gov (create a free account if you do not have one).
  2. Open your Account Details page and request a public API key.
  3. Paste the key into the SAM.gov API key field of this Actor. It is stored as a secret setting, so it is hidden after you save it.

SAM.gov limits how many requests a key can make per day, and the limit depends on the type of account. Accounts without a federal role get a small daily allowance, so this Actor is built to use few requests: one request returns up to 1,000 notices, and the default cap is 5 requests per run. Your own limit is shown in SAM.gov; if you reach it, the Actor stops politely and keeps what it already delivered.

Input

FieldWhat it does
samApiKeyYour SAM.gov API key (required).
keywordsWords to look for in notice titles. Each keyword is a separate search and costs one request. Leave empty to list every notice in the date window.
excludeKeywordsSkip notices whose title contains any of these words.
noticeTypesSolicitation, presolicitation, combined synopsis, sources sought, special notice, award notice, justification, surplus sale, intent to bundle. Empty means all.
agenciesOnly notices whose agency path contains one of these words (for example VETERANS AFFAIRS).
naicsCodesIndustry codes. A short code such as 5415 matches every code that starts with it.
setAsidesOnly notices reserved for these kinds of businesses (small business, 8(a), HUBZone, service-disabled veteran-owned, women-owned and others).
statesTwo-letter state codes for the place of performance.
activeOnlySkip notices SAM.gov marks as no longer active. On by default.
responseDeadlineFrom, responseDeadlineToOnly notices whose response deadline falls in this window. Notices with no deadline are left out when you use it.
daysBack, dateFrom, dateToThe posted-date window. Default: the last 3 days. SAM.gov allows at most one year.
onlyNewDeliver only notices this Actor has not delivered for this exact search. On by default.
maxResultsStop after this many notices. Default 100, up to 10,000.
maxRequestsSafety limit on requests to SAM.gov per run. Default 5.

When you choose exactly one notice type, NAICS code, set-aside or state, the filter is sent to SAM.gov so fewer notices have to be downloaded. With several values, the Actor downloads the window and filters the results itself.

Alerts on a schedule

  1. Paste your key, add your keywords and any filters.
  2. Leave onlyNew on and set daysBack to a little more than the gap between runs (for example 3 for a daily schedule).
  3. Schedule the Actor from the Apify Console (for example every morning).
  4. Each run delivers only notices you have not seen. If a run stops early (cost cap, request cap, key allowance or time limit), the next run continues where it stopped.

The "already delivered" list is kept in a storage called sam-contract-alerts-state in your own Apify account, with one list per distinct search.

Pricing

You pay per notice delivered (pay per event). Apify's platform usage for the run is included, so you are not billed for it separately. See the Pricing tab for the current price. Set a maximum cost per run in the run options to cap spending: the Actor stops as soon as the cap is reached. SAM.gov itself does not charge for the API.

Limits and good to know

  • Your key, your allowance. If SAM.gov reports that your key has used its requests for the day, the run ends with a note and the notices already delivered are kept.
  • Large searches. SAM.gov can report more matching notices than it hands back in one reply. When that happens the Actor reads the period one day at a time, newest day first, and tells you in the run's status message if a single day still had more than it could retrieve. Adding a keyword, notice type or NAICS code narrows the search.
  • Keywords search titles. A keyword matches the notice title, not the full description text.
  • Descriptions and attachments. descriptionUrl and the attachment links are the addresses SAM.gov provides; they are given without your key. Opening them through the API may need your key added, as SAM.gov's documentation describes.
  • Posted dates. The window uses the date a notice was posted. Updates and amendments to older notices are not tracked as new notices.
  • Notice content is written by the agencies. Always check the notice on sam.gov before you act on it.

Data source and disclaimer

Data comes from the SAM.gov Get Opportunities API, a public service of the U.S. General Services Administration. This Actor is not affiliated with, endorsed by or sponsored by SAM.gov, the General Services Administration or any government agency.