Skip to content

Bulk (up to 100)

Bulk vendor screening. Upload up to 100 UEIs in one call and get back a risk report for each. Designed for quarterly vendor reviews where you want to screen your whole subcontractor list in one pass, not one-at-a-time.

Request body

{ "ueis": ["N2EDPB1SMN55", "C1BVCA2N9YB4", "SH2ER4W6LH13"] }
  • ueis - array of 1-100 UEIs. Duplicates deduplicated server-side. Max 100 per request (422 if exceeded).

Response

{
  "requested_count": 3,
  "returned_count": 3,
  "results": [
    { "uei": "N2EDPB1SMN55", "status": "ok",        "report": {"_shape": "same as GET /api/v1/vendor-risk/{uei}"} },
    { "uei": "C1BVCA2N9YB4", "status": "ok",        "report": {"_shape": "same as GET /api/v1/vendor-risk/{uei}"} },
    { "uei": "SH2ER4W6LH13", "status": "not_found", "report": null },
    { "uei": "bad-uei",      "status": "invalid",   "report": null }
  ]
}

Per-row status is one of: ok (report present), not_found (UEI in none of our sources), or invalid (not 12 alphanumeric characters). A bad or stale UEI is surfaced per-row, never failing the whole request, since real vendor lists always contain some. returned_count reflects the post-dedup unique count, so it can be lower than requested_count. An empty ueis list or more than 100 entries returns 422. Each UEI counts against your hourly quota (a 100-UEI bulk = 100 quota hits). Expected latency: ~80ms per UEI on warm paths.

Example

curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ueis":["N2EDPB1SMN55","C1BVCA2N9YB4","SH2ER4W6LH13"]}' \
  https://govconapi.com/api/v1/vendor-risk/bulk

Use cases: quarterly subcontractor review ("which of my 200 vendors now need attention?"), pre-contract screening, M&A target due diligence on a portfolio company's vendor list.

A REST API and MCP server for U.S. federal procurement data.

Get a free key, emailed instantly, or follow the quickstart.

Found something wrong, missing or confusing on this page?

Press Ctrl + Enter to send a note. Highlight text first and it travels with your note.