Skip to content

Search

Search SAM.gov Exclusions database for debarred entities (companies and individuals prohibited from federal contracting). Perfect for vendor due diligence and compliance screening.

How It Works

  • Dataset: 163,000+ exclusion records from SAM.gov (refreshed daily). Check /api/v1/status for current count and freshness. This is a full replace of SAM's current list, so it is current state, not history: a terminated exclusion drops out entirely rather than being returned as expired.
  • Search Logic: Multiple filters are combined with AND logic. For example, classification_type=Firm&state=CA returns only California firms (not firms OR California)
  • Partial Matching: Name and agency filters use case-insensitive partial matching. entity_name=Smith matches "John Smith", "Smithson Corp", etc.
  • Name matching uses SAM's romanized spelling. Names are stored the way SAM romanizes them (ASCII letters, straight quotes), and the match is literal against that form, so normalize your input before screening: fold accents to ASCII (Muñoz to Munoz) and use a straight apostrophe rather than the curly one a document paste inserts. An accented or smart-quote spelling can otherwise miss a stored record. A search that contains non-Latin letters (Cyrillic, Arabic, and the like) returns a 400 naming the romanized spelling to use, rather than a silent empty result that would read as a false clean on a debarment screen.
  • Individuals vs Firms: Most records are individuals (classification_type=Individual); fewer are firms. Most individuals don't have UEI identifiers, so search them by name.

Filter Parameters

  • entity_name - Entity or person name (partial match, case-insensitive). Aliases: name and q (the same name-search param used on /entities/search and /companies/search); if more than one is sent, entity_name wins, then name, then q.
  • uei_sam - UEI SAM identifier (exact match, case-insensitive). Alias: uei (if both are sent, uei_sam wins). Note: most exclusions (individuals) have no UEI, so do not pass the literal string null to find them; it matches zero rows. Omit the param instead.
  • cage_code - CAGE code (exact match, case-insensitive). Only about 0.3% of records carry one, so an empty result here means the field is absent, not that the entity is clear.
  • excluding_agency - Excluding agency code or name substring, e.g. HHS or DEFENSE LOGISTICS (partial, case-insensitive; matches excluding_agency_code or excluding_agency_name, because many records carry only the name).
  • classification_type - Type: Individual, Firm, Vessel, Special Entity Designation. Case-insensitive; an unrecognized value returns 400 listing the valid set rather than a silent empty result.
  • exclusion_type - Exclusion category: Prohibition/Restriction, Ineligible (Proceedings Completed), Ineligible (Proceedings Pending), Voluntary Exclusion. Case-insensitive; an unrecognized value returns 400 listing the valid set. SAM publishes two spellings of one value, Ineligible (Proceedings Complete) and Ineligible (Proceedings Completed); either input matches both, so filtering on the common spelling does not drop the several hundred records stored under the other.
  • state - State/province code (e.g., CA, TX)
  • country - Country code (e.g., USA). Unreliable for the sanctioned (OFAC) slice, where SAM codes many foreign entities as USA or as the non-ISO bucket XUN. Do not rely on it for sanctions screening; screen by name instead.
  • active_only - Boolean, default true (only active exclusions)
  • limit - Results per page. Default 100; maximum 100 on the free trial and 1,000 on paid plans. Over the maximum returns 402.
  • offset - Pagination offset
  • fields - Comma-separated response fields. uei_sam always included. Example: fields=uei_sam,entity_name,excluding_agency_code,activate_date. See Response Shaping.

Common Use Cases:

  • Vendor screening: Search by company name before contract award
  • Individual background checks: Search by person's full name
  • Agency analysis: Find all HHS or DOJ exclusions
  • Compliance reporting: Export all exclusions by state

Response

{
  "data": [
    {
      "uei_sam": "N2EDPB1SMN55",
      "entity_name": "Bella Mia Donna LLC",
      "classification_type": "Firm",
      "exclusion_type": "Ineligible (Proceedings Pending)",
      "excluding_agency_name": "DEFENSE LOGISTICS AGENCY",
      "record_status": "Active",
      "city": "POMPANO BEACH",
      "state_or_province_code": "FL",
      "activate_date": "2025-11-19",
      "termination_date": null,
      "_additional": "30 fields total per record"
    }
  ],
  "pagination": {
    "limit": 20,
    "offset": 0,
    "total": 10000,
    "total_is_estimate": true,
    "has_next": true
  },
  "filters_applied": {}
}

total is capped at 10,000 on broad queries: at or under the cap it is exact and total_is_estimate is false; above it, total reads 10000 with total_is_estimate: true. Paging past that point still works, so a bulk consumer should page until a short page rather than trusting total as the depth.

Results are ordered most-recent-first by activate_date, then entity_name. Records with no activate_date (about 7% of the list, including much of the OFAC set) sort last rather than first.

Examples

Search by entity name:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://govconapi.com/api/v1/exclusions/search?entity_name=Smith&limit=10"

Returns every individual and firm with "Smith" in the name (over a thousand)

Find California firms:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://govconapi.com/api/v1/exclusions/search?classification_type=Firm&state=CA"

Returns the excluded firms in California (several hundred)

HHS exclusions:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://govconapi.com/api/v1/exclusions/search?excluding_agency=HHS&limit=10"

Returns HHS exclusions, the largest single excluding agency (a broad filter like this reports total_is_estimate: true, with the count capped at 10,000)

OFAC sanctions match by name:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  "https://govconapi.com/api/v1/exclusions/search?entity_name=VIETNAM-RUSSIA%20JOINT%20VENTURE%20BANK&limit=1"

Returns the OFAC sanctions record for the named entity. Same response envelope as the DLA / HHS query above; the differentiating fields are excluding_agency_code: "OFAC", exclusion_type: "Prohibition/Restriction", exclusion_program: "Reciprocal", classification_type: "Special Entity Designation", and the international country_code (here "VNM"). The additional_comments field is "Redacted for security reasons" on OFAC records; the agency cite for the underlying action is on the published OFAC SDN list, not in our database. One screening pipeline reads OFAC and DLA records uniformly.

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.