Government Bids + RFP Documents as RAG Chunks avatar

Government Bids + RFP Documents as RAG Chunks

Under maintenance

Pricing

Pay per event

Go to Apify Store
Government Bids + RFP Documents as RAG Chunks

Government Bids + RFP Documents as RAG Chunks

Under maintenance

US public bids, RFPs and grant notices (E-Rate Form 470, Delaware, Grants.gov) with their attached PDF, DOCX and XLSX documents converted to Markdown and RAG chunks. Each chunk links to its notice, agency, deadline and page. OCR for scans.

Pricing

Pay per event

Rating

0.0

(0)

Developer

OpenDataFrontierLabs

OpenDataFrontierLabs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Security

Limited permissions

Share

Get open US public bids, RFPs and grant notices together with their attached solicitation documents, converted to clean Markdown and heading-aware RAG chunks. Every chunk carries the notice ID, title, agency, dates, official notice link, document link and a citation, so a vector database or AI agent can answer "what does this RFP require?" and point to the source page.

Tutorials & examples: Turn government PDFs into RAG-ready chunks with page citations shows how to load chunks like these into a vector database and answer with citations (GitHub).

Sources (official, public, no login)

SourceWhat you get
E-Rate Form 470 (USAC/FCC)School & library technology RFPs nationwide, with the RFP documents applicants upload (PDF, DOCX, XLSX). One notice per Form 470 application.
State of Delaware (MyMarketplace)Open state bids with their bid documents, specifications and pricing sheets.
Grants.govFederal funding opportunities with their NOFO attachments.

Sources are processed in this order until Max notices is reached, so with the defaults (20 notices, 10 per source) Grants.gov is only reached if the first two sources have fewer than 10 notices with documents. Pick sources explicitly to control the mix.

Notices without downloadable documents are skipped and not charged. States filters E-Rate applicants; Delaware is included only when DE is in the list; Grants.gov opportunities are national and are not filtered by state.

Data: USAC Open Data (E-Rate), Delaware Open Data / Delaware MyMarketplace, Grants.gov. Documents remain the publishers' files; see documentRights.

Output (one item per chunk)

Real item from a platform test run on 2026-10-29 (signed link shortened):

{
"recordType": "chunk",
"id": "d44ba83daab5-0-6",
"noticeId": "erate-form-470:270002130",
"sourceKey": "erate-form-470",
"sourceName": "E-Rate (USAC/FCC) — Form 470 school & library technology RFPs",
"noticeTitle": "tusd_2027_470_c2_new_cabling",
"noticeReference": "270002130",
"agency": "Tucson Unified School District",
"department": "School District",
"noticeType": "Solicitation",
"postedDate": "2026-10-28",
"dueDate": null,
"dueDateTime": null,
"allowableContractDate": "2026-11-25",
"locationState": "AZ",
"noticeUrl": "https://publicdata.usac.org/EPC/Prd/Form470/270002130/143120/22836057-USAC_FCC_FORM_470_APPLICATION_270002130_CERTIFIED.pdf",
"noticeDataLicense": "USAC Open Data (datahub.usac.org) - notice metadata",
"documentRights": "Public procurement record published by Tucson Unified School District; copyright not determined - check the source before reuse.",
"docId": "d44ba83daab5",
"documentUrl": "https://publicdata.usac.org/EPC/Prd/Form470/270002130/143120/22835651-cabling_services_for_e_rate_funding_year_27_28_20261028_215021.pdf",
"fileName": "22835651-cabling_services_for_e_rate_funding_year_27_28_20261028_215021.pdf",
"documentLabel": "RFP document (Form 470 attachment)",
"format": "pdf",
"pageCount": 49,
"sectionCount": null,
"processedFrom": 1,
"processedThrough": 49,
"truncated": false,
"continuation": false,
"billedPages": 49,
"ocrPages": 0,
"sha256": "35945ade14e42cacea54b47e357067a29524ba2d431120e27048b890e4b307d9",
"markdownUrl": "https://api.apify.com/v2/key-value-stores/ewbruSoBjA3KJkejW/records/doc-d44ba83daab5.md?signature=...",
"text": "# **2. Documents Referenced**\n\nDOCUMENTS REFERENCED:\n\nYou may access a copy of the documents referenced within this proposal at the following web addresses:\n\nArizona Revised Statutes (A.R.S.) is available at: www.azleg.state.az.us/ArizonaRevisedStatutes.asp.\n\nThe Arizona School District Procurement Rules in the Arizona Administrative Code is available at:\n\n<u>www.azsos.gov/rules/arizona-administrative-code</u>\n\nI.R.S W-9 Form (Request for Taxpayer I.D. Number) is available at: www.irs.gov/pub/irs-pdf/fw9.pdf.\n\nCode of Federal Regulations is available at: http://www.ecfr.gov",
"headingPath": [
"2. Documents Referenced"
],
"pageStart": 6,
"pageEnd": 6,
"chunkIndex": 6,
"charCount": 580,
"approxTokens": 145,
"chunkCount": 92,
"citation": "Tucson Unified School District Form 470 #270002130 — 22835651-cabling_services_for_e_rate_funding_year_27_28_20261028_215021.pdf, p. 6"
}

Field notes:

  • dueDate: the bid/application deadline when the source publishes one (Delaware, Grants.gov; YYYY-MM-DD, dueDateTime when a time is given). E-Rate Form 470 has no bid due date; allowableContractDate is the earliest date the applicant may sign a contract (certification + 28 days). Check the RFP text for the actual response deadline.
  • truncated: true means you did not get the whole document: it was longer than Max pages per document, or converting it hit Per-document time limit (heavy OCR scans). Pages finished before the limit are delivered and charged; processedFrom/processedThrough say which pages you got. With Only new documents + Continue truncated documents, the next run delivers the following pages (page fees only).
  • pageStart/pageEnd are real PDF page numbers. They are null for DOCX/XLSX/HTML, which have no pages.
  • documentRights: the attached documents are public procurement records published by the issuing agency (school districts, libraries, state and federal agencies); their copyright is not determined by this actor. Check the source before republishing. noticeDataLicense covers only the notice metadata feed.
  • markdownUrl: the full document Markdown in the run's key-value store.

Choose Documents output for one item per document with the full Markdown and the full notice record. Each run's RUN_SUMMARY record lists counts, skipped documents with reasons and the charged events. It is updated after every document, so a run that times out or is aborted still has one (status: in progress or finished).

Pricing (pay per event)

EventPrice
Actor start (per GB of memory; default 2 GB)$0.001
Notice with at least one delivered document$0.004
Document delivered$0.003
Page delivered (PDF page with text; DOCX/XLSX/HTML: per 3,000 characters of content, table pipes not counted; large tables are split at row boundaries with the header row repeated)$0.001
OCR page (scanned PDF page where OCR returned text)$0.004 on top of the page fee, so $0.005 per scanned page

Not charged: notices without documents, blank pages, files that fail to download or convert, HTML error/login pages served instead of a file, oversized or unsupported files (ZIP, DOC, images, CAD), large-format scanned drawing sheets (not OCRed), and pages not reached before the per-document time limit. They are listed in RUN_SUMMARY → skippedDocuments.

The notice fee is per run: if a later run (e.g. with Only new documents) delivers an addendum for a notice you already received, that run charges the notice fee again ($0.004) plus the addendum's document and page fees.

Measured on the platform (2026-10-29, default 2 GB memory):

RunDeliveredChargedRun time
Default input (20 notices, ≤10 documents and ≤100 pages each)20 notices, 56 documents, 1,197 pages (25 OCR), 2,714 chunks$1.5543 min
One Delaware road bid (proposal, 79 plan sheets, cross sections, appendix)1 notice, 4 documents, 200 pages, 545 chunks$0.222.2 min
One Delaware roof bid (131-page ITB, many scanned pages)1 notice, 2 documents, 71 pages (23 OCR); ITB truncated at the 600 s time limit$0.1810 min

Large specifications dominate the cost: in the default run a notice cost $0.01-0.21 (median $0.06). Lower Max pages per document or Max documents per notice to cap it, and set a maximum charge per run. A run never charges more than your limit; it stops cleanly when the limit is reached.

Tips

  • Schedule daily with Only new documents since last run: documents are recognized by content (SHA-256), so a changed file at the same URL is delivered again and an identical re-upload is not. Each saved task keeps its own memory (see State key).
  • If a run is restarted or migrated by the platform, it resumes and does not charge the same document twice (each document is delivered, marked done, then charged). In the rare case of a crash in the instant between delivering a document and marking it done, that document can appear twice in the dataset but is charged once.
  • Contact data: phone numbers are redacted (all common US formats). Only official agency/public-entity emails are kept so vendors can reach the procurement office: official domains (.gov, .mil, .edu, .us, k12) and, for E-Rate, the applicant's own domain (e.g. a school district's .org). Consultant, private-firm and freemail addresses are redacted, even when listed as the Form 470 contact. Choose Redact all to remove every email.
  • OCR text from scanned tables can misalign columns; check numbers against the original (documentUrl).
  • Downloads are polite (delay per site) and respect robots.txt.
  • The issuing agency's official notice always controls; check deadlines and addenda at noticeUrl.

FAQ

Where does the data come from? Official public government portals and open-data APIs (USAC Open Data, data.delaware.gov and the Delaware bid document portal, the Grants.gov API). The actor fetches only documents that are publicly downloadable without a login, captcha or paywall. Reuse of the documents is your responsibility; see documentRights.

Why are some notices missing? Only notices that publish downloadable documents are returned. Need every notice without documents? Use the US Public Bids actor.

Why was a document skipped? See RUN_SUMMARY.skippedDocuments: e.g. a file that the portal no longer serves (it returns an HTML page instead), a password-protected PDF, a ZIP/DOC/CAD file, or a very large drawing set that ran out of time or memory. Skipped documents are not charged.