Public API documentation
RESTful API for accessing PA procurement data programmatically
Authentication
Public endpoints require no authentication. Rate limited per IP; the issue-report endpoint is limited more tightly.
Base URL
https://procurement.pa.gov/api/v1/api/v1/public/searchFull-text search within an entity
Parameters: q, entity (solicitations|contracts|suppliers), page, limit
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/search" \ -H "Accept: application/json"
/api/v1/public/solicitationsList solicitations with filters
Parameters: status, noticeType, agencyId, sort, order, page, limit
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/solicitations" \ -H "Accept: application/json"
/api/v1/public/solicitations/:idGet solicitation detail
Parameters: id (path)
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/solicitations/1" \ -H "Accept: application/json"
/api/v1/public/contractsList contracts
Parameters: status, category, agencyId, isCostars, sort, order, page, limit
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/contracts" \ -H "Accept: application/json"
/api/v1/public/contracts/:idGet contract detail
Parameters: id (path)
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/contracts/1" \ -H "Accept: application/json"
/api/v1/public/suppliersPublic supplier directory
Parameters: county, sort, order, page, limit
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/suppliers" \ -H "Accept: application/json"
/api/v1/public/suppliers/:idGet supplier profile
Parameters: id (path)
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/suppliers/1" \ -H "Accept: application/json"
/api/v1/public/help-articlesHelp center knowledge base
Parameters: category
Example request
curl -X GET "https://procurement.pa.gov/api/v1/public/help-articles" \ -H "Accept: application/json"
/api/v1/public/issue-reportsSubmit an issue report (rate limited)
Parameters: category, severity, subject, description, reporterEmail
Example request
curl -X POST "https://procurement.pa.gov/api/v1/public/issue-reports" \ -H "Accept: application/json"