> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usecroma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SAM.gov Exclusions

> Every party excluded from US federal contracts, grants and programs: people, firms, clinics and pharmacies debarred or suspended by HHS, OPM, DOJ, EPA and some fifty other agencies. Search by name, agency, kind of exclusion, state, Unique Entity ID, CAGE code or NPI, and read one exclusion's full record.

SAM.gov is where the US government registers the entities it pays and
records the ones it may not. Federal agencies enter every exclusion there: the
Department of Health and Human Services excludes providers from Medicare and
Medicaid, the Office of Personnel Management from federal employees' health
benefits, and the Department of Justice, the EPA, HUD, the military services
and some fifty other agencies debar or suspend contractors and grantees. An
excluded party may not receive federal contracts, grants or program payments.

Every exclusion in force, about 168,000: some 133,000 people, 8,300 firms,
25,600 other entities such as clinics and pharmacies, and 1,300 vessels. Each comes with the
party's name, city and state, its Unique Entity ID, CAGE code or National
Provider Identifier when it has one, the excluding agency, the kind of
exclusion and its dates. Brought up to date every day.

SAM.gov also carries the Treasury's OFAC sanctions list, one row per name and
alias, under the agency `OFAC` (about 42,000 rows); its copy lags OFAC's own.
For current sanctions use [OFAC sanctions](/guides/united-states/ofac) or the
[Consolidated Screening List](/guides/united-states/csl).

<Note>
  The whole source, organized and ready to query: every endpoint on this page answers in milliseconds. Every response carries `as_of`: how current the data is. [How datasets work](/datasets).
</Note>

## Search exclusions

`POST /us/sam/exclusions-search/v1` <a className="dataset-pill" href="/datasets">Dataset</a>

Searches every exclusion in force by any combination of name, classification,
agency, kind of exclusion, state, identifier and date.

| Field            | Type    | Notes                                                                                                                                 |
| ---------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `query`          | string  | Optional. Words in the party's name: an entity's name, or a person's first, middle and last name. Every word must match; no stemming. |
| `classification` | enum    | Optional. `individual`, `firm`, `special_entity_designation` (an entity other than a firm, such as a clinic or pharmacy) or `vessel`. |
| `agency`         | string  | Optional. The excluding agency's code, e.g. `HHS`, `OPM`, `DOJ`, `EPA`, `HUD`, `DLA`.                                                 |
| `exclusion_type` | enum    | Optional. `prohibition_restriction`, `ineligible_proceedings_completed`, `ineligible_proceedings_pending` or `voluntary_exclusion`.   |
| `state`          | string  | Optional. The state or province, the two-letter code for a US state, e.g. `FL`.                                                       |
| `uei`            | string  | Optional. The party's Unique Entity ID, twelve letters and digits.                                                                    |
| `cage`           | string  | Optional. The party's CAGE code, five letters and digits.                                                                             |
| `npi`            | string  | Optional. A health care provider's ten-digit National Provider Identifier.                                                            |
| `from_date`      | string  | Optional. The earliest date the exclusion took effect, yyyy-mm-dd.                                                                    |
| `to_date`        | string  | Optional. The latest date the exclusion took effect, yyyy-mm-dd.                                                                      |
| `page`           | integer | Optional. 1-based page. Default `1`.                                                                                                  |
| `per_page`       | integer | Optional. Results per page, 1-50. Default `20`.                                                                                       |

```bash theme={"dark"}
curl https://api.croma.run/us/sam/exclusions-search/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "query": "pharmacy", "agency": "HHS" }'
```

Returns `as_of` (how current the data is), the applied filters, `total` (matches across every page), `page`, `per_page`, `total_pages`, `count` and `exclusions[]`, by name.

Every exclusion carries `id` (SAM.gov's number for the record, the key), `classification` (`individual`, `firm`, `special_entity_designation` or `vessel`), `name`, a person's `prefix`, `first_name`, `middle_name`, `last_name` and `suffix`, `address_1`, `address_2`, `city`, `state`, `zip_code`, `country` (three letters, e.g. `USA`), `uei` (Unique Entity ID), `cage`, `npi` (National Provider Identifier), `exclusion_program` (`Reciprocal`, `Procurement` or `NonProcurement`), `excluding_agency`, `ct_code`, `exclusion_type`, `comments` (the agency's note), `cross_reference` (other names and related parties), `active_date`, `termination_date` (null when `indefinite`), `indefinite`, `record_status` and `updated_date`.

Empty fields are `null`. SAM.gov publishes no street address for a person.

<Note>
  The list carries the exclusions in force. Brought up to date daily; an
  exclusion that ends stops matching.
</Note>

<Warning>
  A name match is a starting point, not a determination. Confirm a hit against
  the party's Unique Entity ID, CAGE code, NPI or location before acting on it:
  many excluded people share common names.
</Warning>

## One exclusion

`POST /us/sam/exclusion/v1` <a className="dataset-pill" href="/datasets">Dataset</a>

Resolves one exclusion by its SAM number and returns the full record.

| Field | Type   | Notes                                                                        |
| ----- | ------ | ---------------------------------------------------------------------------- |
| `id`  | string | **Required.** The exclusion's SAM number, a UUID, as returned by the search. |

```bash theme={"dark"}
curl https://api.croma.run/us/sam/exclusion/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "id": "c11dcac9-e974-4e97-9350-077d697b8909" }'
```

Returns `found`, `id`, `as_of` and `exclusion` (null when not found).

Every exclusion carries `id` (SAM.gov's number for the record, the key), `classification` (`individual`, `firm`, `special_entity_designation` or `vessel`), `name`, a person's `prefix`, `first_name`, `middle_name`, `last_name` and `suffix`, `address_1`, `address_2`, `city`, `state`, `zip_code`, `country` (three letters, e.g. `USA`), `uei` (Unique Entity ID), `cage`, `npi` (National Provider Identifier), `exclusion_program` (`Reciprocal`, `Procurement` or `NonProcurement`), `excluding_agency`, `ct_code`, `exclusion_type`, `comments` (the agency's note), `cross_reference` (other names and related parties), `active_date`, `termination_date` (null when `indefinite`), `indefinite`, `record_status` and `updated_date`.

Empty fields are `null`. SAM.gov publishes no street address for a person.

<Note>
  An id the list does not carry returns `found: false` with HTTP 200, not an
  error. That is also the answer for an exclusion that has ended.
</Note>

<Card title="Full reference" icon="code" href="/api-reference/overview">
  Schemas, all response fields, and an interactive playground.
</Card>
