Download a stored RFP attachment
Redirects to a 60-second signed URL for Bellwork's stored copy of one attachment. The document must belong to the opportunity in the path. Gated by the `rfp_feed` module entitlement.
Redirects to a 60-second signed URL for Bellwork's stored copy of one attachment. The document must belong to the opportunity in the path. Gated by the rfp_feed module entitlement.
API key (sk_live_... prefix). Generate keys in the UI under Settings > API Keys, then send it as Authorization: Bearer sk_live_...
In: header
Path Parameters
uuiduuidResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://loading/api/v1/rfp-opportunities/497f6eca-6276-4993-bfeb-53cbbbba6f08/documents/497f6eca-6276-4993-bfeb-53cbbbba6f08/download"{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "entitlement_required",
"module": "string",
"message": "string",
"contact": "string"
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}{
"error": "string",
"message": "string",
"statusCode": -9007199254740991
}Get one RFP opportunity with its documents GET
One canonical procurement opportunity, its source portal, and every attachment found for it (solicitation, addenda, Q&A, awards). `stored` marks attachments whose bytes Bellwork holds; a discovered URL alone does not mean the file is held. Gated by the `rfp_feed` module entitlement.
Search the RFP opportunities catalog GET
Enterprise catalog-wide search over canonical procurement opportunities (`rfp_opportunities`) harvested from public portals -- distinct from the legacy per-entity RFP records attached to districts. Filter by buyer state, status, posted/closing date windows, a title keyword, and `k12=true` (district portals and purchasing cooperatives only). Ordered by first_seen_at descending, or `sort=closing_soon` for due date ascending with past due dates excluded. Totals are estimates on broad filters. Gated by the `rfp_feed` module entitlement; otherwise responds 403 entitlement_required.