Municipal RFP & Government Bid Deadline Monitor
Under maintenancePricing
$25.00 / 1,000 qualified procurement opportunities
Municipal RFP & Government Bid Deadline Monitor
Under maintenanceMonitor supplied public city and county procurement pages for qualified new RFPs, RFQs, government bids, material changes, and bid deadline changes.
Pricing
$25.00 / 1,000 qualified procurement opportunities
Rating
0.0
(0)
Developer
Blake Panter
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
18 days ago
Last modified
Categories
Share
Monitor supplied public city and county procurement pages for qualified new RFPs, RFQs, government bids, material changes, and bid deadline changes. The paid result is a change signal—not an arbitrary page link or an unchanged opportunity charged again on every run.
Use it for public-sector sales, construction estimating, vendor research, proposal teams, and local-government procurement intelligence. Each signal can include the agency, opportunity title, bid number, due date, category, supporting documents, source URL, confidence, qualification evidence, explicit old/new field values, and a stable deduplication key.
This Actor does not discover every government opportunity on the web. You provide the public procurement pages to monitor. It qualifies an item only when the page contains a bid number, an explicitly labeled solicitation deadline, or solicitation-document evidence, and it never logs in or bypasses access controls.
What it does
- Accepts bounded public HTTP(S) procurement URLs (coverage is limited to URLs you supply).
- Blocks private, reserved, loopback, link-local, and metadata destinations and pins each validated DNS answer into that redirect hop's connection.
- Reads at most 500,000 response bytes and rejects (rather than parses) oversized HTML.
- Requires a real bid number, an explicitly labeled solicitation due/closing/deadline date, or explicit solicitation-document evidence before an item can be staged or charged. Generic meeting and policy dates are not deadlines.
- Filters navigation and legal-citation false positives, including the O.C.G.A.
36-…regression. - Emits
new,changed, ordeadline-changesignals from durable cross-run state. - Makes
includePdfLinks: falseproduce an emptydocumentsarray.
Input
{"startUrls": [{ "url": "https://www.dallasga.gov/rfps" },{ "url": "https://www.kennesaw-ga.gov/city-clerk/bids-and-rfps/" }],"maxPages": 25,"maxItems": 100,"includePdfLinks": true,"requestTimeoutSecs": 30,"baselineStoreName": "municipal-rfp-bid-monitor-state","outboxLimit": 1000,"snapshotLimit": 5000}
| Field | Description |
|---|---|
startUrls | Public procurement/listing pages. HTTP(S) only; redirects receive the same destination checks. |
maxPages | Maximum supplied pages fetched in one run. |
maxItems | Maximum pending/new signals delivered in one run. Old pending work consumes this budget first. |
includePdfLinks | Controls whether documents is populated. |
requestTimeoutSecs | Timeout covering request headers and complete bounded body consumption. |
baselineStoreName | Deliberately named key-value store reused by scheduled runs. |
outboxLimit | Durable pending-signal bound. Pending unpaid events are never truncated or evicted. |
snapshotLimit | Persistent identity capacity. At capacity the Actor stops staging unknown identities; it never evicts remembered identities or charges an unchanged identity as new again. |
Typed output contract
Each dataset item is one qualified change signal:
{"signalType": "deadline-change","agency": "Dallas, GA","opportunityTitle": "Bid-2026-04: Shiloh Church Water Line Improvements & Sewer Service Connect","bidNumber": "2026-04","dueDate": "07/22/2026","category": "construction","summary": "Bid-2026-04: Shiloh Church Water Line Improvements...","documents": ["https://www.dallasga.gov/publicworks/page/bid-2026-04-shiloh-church-water-line-improvements-sewer-service-connect"],"sourceUrl": "https://www.dallasga.gov/rfps","detectedAt": "2026-07-06T12:42:57.000Z","identityKey": "64-character-sha256-opportunity-identity","confidence": "high","qualificationEvidence": ["bid-number", "due-date"],"changedFields": ["dueDate"],"changes": { "dueDate": { "oldValue": "07/15/2026", "newValue": "07/22/2026" } },"occurrenceSequence": 42,"dedupeKey": "64-character-sha256-signal-key"}
The dataset and Actor output schemas are explicitly wired in .actor/actor.json. Changed signals include field-level oldValue/newValue evidence. identityKey stays stable when a deadline changes. occurrenceSequence is incremented durably when each observation is staged, so repeated transitions such as A→B→A→B receive distinct dedupeKey values; a retry of the same pending occurrence retains both values.
Delivery semantics
Delivery is at least once:
- Pending work from an earlier run is drained before any newer observation is staged.
- A snapshot and its payable signal are persisted together in a bounded outbox before output.
- Each signal is acknowledged and removed only after its own successful
Actor.pushDatacall. - Failure,
maxItems, or a charge-limit stop leaves remaining work durable for the next run.
A crash after the dataset accepts an item but before acknowledgement persistence can deliver a duplicate. Consumers must deduplicate on dedupeKey; do not assume exactly-once delivery.
Historical validation evidence
The pre-remediation project README and retained sample dated 2026-07-06 recorded these real-source observations (historical evidence, not a claim of current availability):
- Dallas, GA Bids/RFPs produced active water/sewer and culvert-replacement opportunities; the retained example included Bid
2026-04and a Dallas source URL. - Rockdale County, GA's current bids/RFP/RFQ page produced public bid signals while navigation-menu false positives were filtered.
- Kennesaw, GA and Fayetteville, GA procurement pages were fetched as public coverage probes.
Some government sites returned 403 during that validation. Such pages were skipped and logged; the Actor did not bypass access controls. Verify every deadline and document at the official source.
Local reproducibility
The direct dependencies, Node 24 multi-platform image digest, npm 12.0.2, and npm lockfile are pinned. The deployment build uses only:
npm ci --omit=dev
Local release checks:
npm cinpm run lintnpm testnpm run typechecknpx --yes apify-cli validate-schema
This Actor does not log in, bypass access controls, or provide an official procurement record.