Overview

The Exclusions API will allow users to request Public Exclusion Information based on various optional request parameters. The response will be provided in the JSON format in a paginated manner.

Key Features of the Exclusion API:

  • It offers several optional search parameters, filtering by sections, AND (&), OR (~), NOT (!), WILD CARD(*) conditions and a free text search q to obtain the desired data. Please note that q does not support null (‘’), not-null (!’’) or not (!) searches. Additionally, q accepts only AND, OR, :, =, * (denotes wild card) operators.
  • It returns synchronous responses directly in the browser.
  • It returns ten records per page in the JSON format.
  • It can return only the first 10,000 records.
  • The following characters are not allowed to be sent in the parameter values with the API request: & | { } ^ \
  • Values involving / must be enclosed within double quotes if they are to be requested via a search parameter.

Additional Features of the Exclusion API: It can serve as an Extract API with the addition of “format” parameter in the request. Following are the key features of the Exclusion Extract API:

  • It offers several optional search parameters, filtering by sections, AND (&), OR (~), NOT (!), WILD CARD(*) conditions and a free text search q to obtain the desired data. Please note that q does not support null (‘’), not-null (!’’) or not (!) searches. Additionally, q accepts only AND, OR, :, =, * (denotes wild card) operators.
  • It returns asynchronous responses by sending file downloadable links in the browser and in the user emails.
  • It returns data in the JSON or CSV format as selected by the user.
  • It can return only the first 1,000,000 records.

Back to top

Getting Started

Exclusions API can be accessed from Production or Alpha via the following version 1, version 2 and version 3 endpoints:

  • Production Version 1: https://api.sam.gov/entity-information/v1/exclusions?api_key=< value >
  • Production Version 2: https://api.sam.gov/entity-information/v2/exclusions?api_key=< value >
  • Production Version 3: https://api.sam.gov/entity-information/v3/exclusions?api_key=< value >
  • Alpha Version 1: https://api-alpha.sam.gov/entity-information/v1/exclusions?api_key=< value >
  • Alpha Version 2: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< value >
  • Alpha Version 3: https://api-alpha.sam.gov/entity-information/v3/exclusions?api_key=< value >

Generating a personal API Key:

  • Registered users can request for a public API on ‘Account Details’ page. This page can be accessed here: Account Details page on sam.gov
  • Users must enter their password on ‘Account Details’ page to view the API Key information. If an incorrect password is entered, an error will be returned.
  • After the API Key is generated on ‘Account Details’ page, the API Key can be viewed on the Account Details page immediately. The API Key is visible until users navigate to a different page.
  • If an error is encountered during the API Key generation/retrieval, then users will receive an error message and they can try again.

Generating a System Account API Key:

  • Users registered with a non-government email address and associated with an entity OR users registered with a government email address may request a system account for public data access.
  • If a user satisfies the above registration criteria they will be able to access the System Accounts widget from their Workspace page after logging in.
  • The user can then select ‘Go to System Accounts’ from the widget and fill out the required sections.
  • The requested system account will then need to be approved. After approval the user will be notified via email and they can also see the updated status in the System Account widget.
  • The user can select ‘Go to System Accounts’ again in the widget from their workspace and enter a new system account password.
  • After setting up the password the user will see a new section for retrieving a system account API Key.
  • The user must enter their password again to retrieve the key.

Type of Connections and Rate Limits

Connecting Source Type of Connection Default Rate Limit
Non-federal user with no role Personal API key 10 requests/day
Non-federal user with a role Personal API key 1,000 requests/day
Federal User Personal API key 1,000 requests/day
Non-federal system System account API key 1,000 requests/day
Federal system System account API key 10,000 requests/day

Utilizing the Exclusion API as an extract:

  • To utilize this API as an Extract an additional parameter called ‘format’ has been implemented.
  • To retrieve Exclusion data in a CSV format, the parameter ‘&format=csv’ must be provided in the request.
  • To retrieve Exclusion data in a JSON format, the parameter ‘&format=json’ must be provided in the request.
  • If the requests that contain the ‘format’ parameter are executed successfully, then they will provide the user with a file downloadable URL in the response.
  • In the file downloadable URL, the phrase REPLACE_WITH_API_KEY must be deleted and replaced with a valid API Key and sent as another request.
  • If the file is ready for download, then the users can retrieve it. If the file is not ready for download, then the users will need to try again in some time.
  • Users can also provide another parameter, “emailId” with a valid email address if they choose to receive the file downloadable link in their emails.

Back to top

API Description

Query String Parameters

Parameter Name Description Applicable Versions
classification Allows a partial text or a complete text (Individual, Firm, Vessel, Special Entity Designation).

This parameter can be used inside the ‘q’ parameter.

Example: ‘classification=Firm’, ‘classification=!INDIVIDUAL’, ‘classification=[Vessel~Special]’, ‘q=((classification:Vessel) OR (classification:Special))’
v1
v2
v3
exclusionName Allows a partial text or a complete text.

This parameter must not be used inside the ‘q’ parameter.

This parameter accepts multi-text values in any order and in any case, and will apply the AND operator between the texts.

Examples: ‘exclusionName=J Roy’, ‘exclusionName=ROY j’
v1
v2
v3
exclusionType Allows a partial text or a complete text (a string).

Allowable values are: Ineligible (Proceedings Pending), Ineligible (Proceedings Completed), Prohibition/Restriction and Voluntary Exclusion.

This parameter can be used inside the ‘q’ parameter. When not used inside the ‘q’ parameter, this parameter will apply the AND operator if a multi-text value is provided in any order and in any case.

Examples: ‘q=exclusionType:Ineligible (Proceedings Pending)’, ‘exclusionType=Ineligible PENDING’, ‘exclusionType=[Pending~Voluntary]’
v1
v2
v3
exclusionProgram Allows a complete text (a string).

Allowable values are: Reciprocal, NonProcurement and Procurement.

This parameter can be used inside the ‘q’ parameter.

Examples: ‘q=((exclusionProgram:Reciprocal) OR (exclusionProgram:Procurement))’, ‘exclusionProgram=[NonProcurement~RECIPROCAL]’, ‘exclusionProgram=!NonProcurement’
v1
v2
v3
addressLine1 Mainly used to search Individuals with their address. Allows a partial text, a complete text and null.

This parameter must not be used inside the ‘q’ parameter.

Examples: ‘addressLine1=””’, ‘addressLine1=”7th Floor, Buraengdang Building 530-14”‘

NOTE: If addressLine1 is used in a request with exclusionName, it must match 85% of an Individual’s address in order for the address information to be returned in the response (not case sensitive).
v1
v2
v3
addressLine2 Mainly used to search Individuals with their address. Allows a partial text, a complete text and null.

This parameter must not be used inside the ‘q’ parameter.

Examples: ‘addressLine2=””’, ‘addressLine2=”Dapsipri, 5 Dong, Dongdaemun-K”‘

NOTE: If addressLine2 is used in a request with exclusionName, it must match 85% of an Individual’s address in order for the address information to be returned in the response (not case sensitive).
v1
v2
v3
stateProvince Allows 2-character codes for the USA, names for foreign countries and null (a string).

Examples: ‘stateProvince=AR’, ‘stateProvince=[VA~MICHOACÁN]’, ‘stateProvince=””’
v1
v2
v3
country Allows 3-character codes, numerical values and null (a string).

Examples: ‘country=USA’ ‘country=[RUS~292~mex]’, ‘country=!””’, ‘q=((country:RUS) OR (country:292) OR (country:mex))’
v1
v2
v3
zipCode Allows 5-digit values for the USA, any value as it was provided for foreign countries and null (a string).

Example: ‘zipCode=20171’, ‘zipCode=[901-2132~V3M 5P8~C.P. 44890]’, ‘zipCode=””’, ‘q=((zipCode:901-2132) OR (zipCode:20147))’
v1
v2
v3
ueiSAM Denotes Unique Entity Identifier SAM.

Allows 12-character values, null and also wildcard searches.

Examples: ‘ueiSAM=””’, ‘ueiSAM=!””’, ‘ueiSAM=PX1’, ‘q=((ueiSAM:PMC9YQMXJZU1) OR (ueiSAM:PG4XZ77WRC21))’
v1
v2
v3
excludingAgencyCode Allows a partial text, a complete text and null (a string).

Examples: ‘excludingAgencyCode=ICE’, ‘excludingAgencyCode=DHS-ICE’, ‘excludingAgencyCode=[AF~HUD~””]’, ‘q=((excludingAgencyCode:AF) OR (excludingAgencyCode:HUD))’
v1
v2
v3
excludingAgencyName Allows a partial text, a complete text and null (a string).

This parameter can be used inside the ‘q’ parameter. When not used inside the ‘q’ parameter, this parameter will apply the AND operator if a multi-text value is provided in any order and in any case

Examples: ‘excludingAgencyName=Of URBAN housing’, ‘excludingAgencyName=[Geological~Navy]’, q=((excludingAgencyName:Geological) OR (excludingAgencyName:Navy))
v1
v2
v3
ctCode Allows a complete text, null and also wild card searches (a string).

Examples: ‘ctCode=SDN’, ‘ctCode=[AA~””], ‘q=((ctCode:AA) OR (ctCode:03-SDN-01))’
v1
v2
v3
activationDate Allows a single Date or Date range.
Formats: MM/DD/YYYY or [MM/DD/YYYY,MM/DD/YYYY]

Examples: ‘activationDate=01/01/2019’, ‘activationDate=[01/01/2019,05/29/2019]’
v1
v2
v3
creationDate Allows a single Date or Date range.
Formats: MM/DD/YYYY or [MM/DD/YYYY,MM/DD/YYYY]

Examples: ‘creationDate=01/01/2019’, ‘creationDate=[01/01/2019,05/29/2019]’
v1
v2
v3
updateDate Allows a single Date or Date range.
Formats: MM/DD/YYYY or [MM/DD/YYYY,MM/DD/YYYY]

Examples: ‘updateDate=01/01/2019’, ‘updateDate=[01/01/2019,05/29/2019]’’
v1
v2
v3
terminationDate Allows a single Date or Date range.
Formats: MM/DD/YYYY or [MM/DD/YYYY,MM/DD/YYYY]

Examples: ‘terminationDate=01/01/2019’, ‘terminationDate=[01/01/2019,05/29/2019]’
v1
v2
v3
cageCode Allows a complete value, null and also wild card searches (a string).

Examples: ‘cageCode=0*0’, ‘cageCode=[0XLE0~1CM51~””]’, ‘q=((cageCode:0XLE0) OR (cageCode:1CM51))’
v1
v2
v3
npi Allows 1234567890 (this is masked data) and null (a string).

Examples: ‘npi=1234567890’, ‘npi=””’, ‘npi=!””’
v1
v2
v3
recordStatus The API returns only Active records.

Allows a complete text (a string).

Allowable value is: Active, active

Example: ‘recordStatus=active’
v1
v2
v3
page Denotes a page number.

Allowable values are 0 to 999.

Example: ‘page=0’
v1
v2
v3
size Denotes the number of records returned per page.

Allowable values are 1 to 10.

Example: ‘size=1’
v1
v2
v3
includeSections Allows to filter data by sections, exclusionDetails, exclusionIdentification, exclusionActions, exclusionAddress, exclusionOtherInformation and vesselDetails.

Example: ‘includeSections=exclusionOtherInformation,exclusionDetails’
v1
v2
v3
format Allows user to download different file formats(csv and json are allowable values) .

Example: ‘format=csv’
v1
v2
v3
emailId Allows user to get file download links sent to the email address associated to the API key used in the request. Email ID must be provided in conjunction with the format parameter.
Example: emailId= Yes
Applicable to non-SAM registrants.
v1
v2
v3
ssnOrTinOrEin Allows a 9-digit value or null.

This parameter must not be used inside the ‘q’ parameter.

This parameter must be used in conjunction with the exclusionName parameter.

Example: ‘ssnOrTinOrEin=123456789’
v1
v2
v3

Expected Result

API response consists of Sections, Sub-sections and Tags underneath each of the Sections or Sub-sections. There are a few placeholder elements that return ‘Currently Not Available’ until they are made available in the database. Additionally,

Section/Sub-section/Tag Type Description Applicable Versions
exclusionDetails      
classificationType string Classification Type v1
v2
v3
exclusionType string Exclusion Type v1
v2
v3
exclusionProgram string Exclusion Program v1
v2
v3
excludingAgencyCode string Excluding Agency Code v1
v2
v3
excludingAgencyName string Excluding Agency Name v1
v2
v3
exclusionIdentification      
ueiSAM string Unique Entity Identifier SAM v1
v2
v3
cageCode string CAGE Code v1
v2
v3
npi string NPI v1
v2
v3
prefix string Prefix v1
v2
v3
firstName string First Name v1
v2
v3
middleName string Middle Name v1
v2
v3
lastName string Last Name v1
v2
v3
suffix string Suffix v1
v2
v3
name/entityName string Firm Name

NOTE: This parameter is being renamed. name is in V1 and entityName will be V2.
v1
v2
v3
dnbOpenData string DNB Open Data v2
v3
exclusionActions –> listOfActions      
createDate string Create Date v1
v2
v3
updateDate string Update Date v1
v2
v3
activateDate string Activate Date v1
v2
v3
terminationDate string Termination Date v1
v2
v3
terminationType string Termination Type v1
v2
v3
recordStatus string Record Status v1
v2
v3
exclusionAddress/exclusionPrimaryAddress   NOTE: This section is being renamed. It is exclusionAddress in V1 and will be exclusionPrimaryAddress in V2.  
addressLine1 string Address Line 1 v1
v2
v3
addressLine2 string Address Line 2 v1
v2
v3
city string Address City v1
v2
v3
stateOrProvinceCode string Address State or Province Code v1
v2
v3
zipCode string Address Zip OR Postal Code v1
v2
v3
zipCodePlus4 string Address Zip Plus 4 v1
v2
v3
countryCode string Country Code v1
v2
v3
exclusionSecondaryAddress      
addressLine1 string Address Line 1 v2
v3
addressLine2 string Address Line 2 v2
v3
city string Address City v2
v3
stateOrProvinceCode string Address State or Province Code v2
v3
zipCode string Address Zip OR Postal Code v2
v3
zipCodePlus4 string Address Zip Plus 4 v2
v3
countryCode string Country Code v2
v3
exclusionOtherInformation      
additionalComments string Additional Comments v1
v2
v3
ctCode string CT Code v1
v2
v3
dnbInvestigationStatus/evsInvestigationStatus string EVS Investigation Status

NOTE: This parameter is being renamed. dnbInvestigationStatus is in V1 and evsInvestigationStatus will be V2.
v1
v2
v3
exclusionOtherInformation –> references –> referencesList      
name/exclusionName string Exclusion Name

NOTE: This parameter is being renamed. name is in V1 and exclusionName will be V2.
v1
v2
v3
type string Type v1
v2
v3
exclusionOtherInformation –> moreLocations      
exclusionName string Exclusion Name v2
v3
duns string DUNS v2
ueiSAM string ueiSAM v3
cageCode string CAGE Code v2
v3
npi string NPI v2
v3
exclusionOtherInformation –> moreLocations –> primaryAddress      
addressLine1 string Address Line 1 v2
v3
addressLine2 string Address Line 2 v2
v3
city string City v2
v3
stateOrProvinceCode string State or Province Code v2
v3
zipCode string Zip Code v2
v3
zipCodePlus4 string Zip Code Plus 4 v2
v3
countryCode string Country Code v2
v3
exclusionOtherInformation –> moreLocations –> secondaryAddress      
addressLine1 string Address Line 1 v2
v3
addressLine2 string Address Line 2 v2
v3
city string City v2
v3
stateOrProvinceCode string State or Province Code v2
v3
zipCode string Zip Code v2
v3
zipCodePlus4 string Zip Code Plus 4 v2
v3
countryCode string Country Code v2
v3
vesselDetails      
callSign string Call Sign v1
v2
v3
type string Type v1
v2
v3
tonnage string Tonnage v1
v2
v3
grt string GRT v1
v2
v3
flag string Flag v1
v2
v3
owner string Owner v1
v2
v3
vesselDetails –> secondaryAddress      
addressLine1 string Address Line 1 v1
v2
v3 Production only
addressLine2 string Address Line 2 v1
v2
v3 Production only
city string Address City v1
v2
v3 Production only
stateOrProvinceCode string Address State or Province Code v1
v2
v3 Production only
zipCode string Address Zip OR Postal Code v1
v2
v3 Production only
zipCodePlus4 string Address Zip Plus 4 v1
v2
v3 Production only
countryCode string Country Code v1
v2
v3 Production only

Back to top

OpenAPI Specification File

You can view the full details of this API in the OpenAPI Specification file available here: Open API specification file for the Exclusion API

Back to top

HTTP Response Codes

The API will return one of the following responses:

HTTP Response Code Description
200 The API call is successful.
400 Application Level Error Messages:

1. Invalid "Date" format:
v1 or v2: Date should be specified in the format: MM/dd/YYYY.
v3: "message":"Dates must be specified in the MM/DD/YYYY format.", "detail":"Any Date parameter must be provided in the MM/DD/YYYY format.".

2. Invalid Input Parameters:
v1 or v2: "title":"Invalid Input Parameters","detail":"< user-provided invalid parameter >".
v3: "message":"The search parameter, < user-provided invalid parameter > does not exist.","detail":"Please refer to https://open.gsa.gov/api/exclusions-api/ for a list of allowable search parameters.".

3. If ‘includeSections’, ‘emailId’, ‘format’, ‘exclusionName’, ‘includeSections’, ‘addressLine1’, ‘addressLine2’, or ‘ssnOrTinOrEin’ is sent in the "q" parameter:
v1 or v2: The parameter: ‘emailId’, ‘format’, ‘exclusionName’, ‘includeSections’, ‘addressLine1’, ‘addressLine2’, or ‘ssnOrTinOrEin’ is not permitted inside Query Param(q).
v3: "message":"The search parameters 'emailId', 'format', 'exclusionName', 'includeSections', 'addressLine1', 'addressLine2', and 'ssnOrTinOrEin' are not permitted inside Query Param(q)","detail":"Please provide these parameters separately.".

4. A null or an empty value is sent in the "q" parameter:
v1 or v2: "title":"Invalid input","detail":"The value null/empty is not valid for parameter ‘Query Param (q)’"
v3: "message":"Invalid input","detail":"The value null/empty is not valid for parameter ‘Query Param (q)’".

5. More than 100 "cageCode" values are sent:
v1 or v2: A maximum of 100 CAGE Codes is allowed.
v3: "message":"More than 100 CAGE Codes are not allowed.","detail":"Please limit the number of CAGE Codes to 100."

6. If "emailId" is sent on its own:
v1 or v2: The Parameter emailId must be provided in conjunction with the parameter format.
v3: "message":"The search parameter 'emailId' must be provided in conjunction with the search parameter 'format'.","detail":"Users can opt for receiving the requested JSON/CSV files in their emails."

7. If "includeSections" contains an invalid value:
v1 or v2: includeSections contains invalid value.
v3: "message":"The search parameter 'includeSections' contains an invalid value - < user-provided invalid parameter >,"detail":"Please refer to https://open.gsa.gov/api/exclusions-api/ for a list of allowable values.".

8. If "ssnOrTinOrEin" is provided on its own:
v1 or v2: ssnOrTinOrEin filter must be provided in conjunction with exclusionName.
v3: "message":"The search parameter 'ssnOrTinOrEin' must be provided in conjunction with the search parameter 'exclusionName'.","detail":"The 'ssnOrTinOrEin' parameter cannot be provided on its own.".

9. Invalid "ssnOrTinOrEin" length or "ssnOrTinOrEin" has more than one value:
v1 or v2: The search parameter, 'ssnOrTinOrEin' will only accept one complete 9 digit value (e.g.: ssnOrTinOrEin=000000000).
v3: "message":"The search parameter 'ssnOrTinOrEin' will only accept one complete 9 digit value.","detail":"An example value is 000000000.".

10. More than one "exclusionName" value is provided with "addressLine1" and "addressLine2":
v1 or v2: exclusionName will only accept one value when it is provided in conjunction with addressLine1 and addressLine2.
v3: "message":"The search parameter 'exclusionName' will only accept one value when it is provided in conjunction with 'addressLine1' and 'addressLine2'.","detail":"Use 'exclusionName' on its own or in conjunction with non-address search parameters.".

11. Invalid "recordStatus" value:
v1 or v2: "title":"Invalid input","errorCode":"IIP","detail":"Invalid input for recordStatus"
v3: "message":"The search parameter 'recordStatus' will only accept Active as the value.","detail":"Only Active records are returned.

12. "Invalid "format" value:
v1 or v2: "title":"Invalid input","detail":"Invalid Input value for format".
v3: "message":"Invalid input value for format","detail":"The allowable values are JSON and CSV."13. JSON or CSV file generation is in-progress:
v1 or v2: "title":"Extract File Generation is Still in Progress","detail":"File Processing in Progress. Please check again later ".
v3: "message":"The requested JSON or CSV file is not generated yet. Please try again later.","detail":"Larger files will take some time to process.".

14. A non-existent token is used for downloading a JSON or a CSV file:
v1 or v2: "title":"Extract File Not Found and we are not able to process your request","detail":"We are not able to find the requested file".
v3: "message":"The requested JSON or CSV file token could not be found.","detail":"Please verify the token number."

15. An expired token is used for downloading a JSON or a CSV file:
v1 or v2: "title":"Requested File is Expired and cannot be downloaded","detail":"We are not able to process your request".
v3: "message":"The requested JSON or CSV file token is expired.","detail":"Please verify the token number."
403 1. Missing API Key:
v1, v2 or v3: No api_key was supplied in request body. Please submit with a valid API key.

2. An invalid API Key:
v1, v2 or v3: An invalid API key was supplied. Please submit with a valid API key.
405 If any method other than "GET" is used:
v1, v2 or v3: Method Not Allowed.
NOTE:
Error messages in v1 and v2 are returned in this fashion: httpStatus, title, detail, errorCode, source
Error messages in v3 are returned in this fashion: Status, timestamp, message, detail, errorCode, transaction_id

Back to top

Examples

Example 1: Post April 3rd 2022, get me all the Firms whose Physical Address is in Virginia.

Request URL v2 Production URL: https://api.sam.gov/entity-information/v2/exclusions?api_key=< PUBLIC API Key >&classification=Firm&stateProvince=VA
v3 Production URL: COMING SOON

v2 Alpha URL: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< PUBLIC API Key >&classification=Firm&stateProvince=VA
v3 Alpha URL: COMING SOON

Response (JSON Output) Note: Both v2 and v3 Public Responses for one record are provided as samples.

v2 Response:
{ "totalRecords": 1, "excludedEntity": [ { "exclusionDetails": { "classificationType": "Firm", "exclusionType": "Ineligible (Proceedings Pending)", "exclusionProgram": "Reciprocal", "excludingAgencyCode": "DLA", "excludingAgencyName": "DEFENSE LOGISTICS AGENCY" }, "exclusionIdentification": { "ueiSAM": "KQKWLLDBMDL5", "cageCode": null, "npi": null, "prefix": null, "firstName": null, "middleName": null, "lastName": null, "suffix": null, "entityName": "Supreme Fuels GmbH & Co. KG", "dnbOpenData": null }, "exclusionActions": { "listOfActions": [ { "createDate": "03-19-2015", "updateDate": "03-19-2015", "activateDate": "03-13-2015", "terminationDate": null, "terminationType": "Indefinite", "recordStatus": "Active" } ] }, "exclusionPrimaryAddress": { "addressLine1": "Rembrandtstr. 17", "addressLine2": null, "city": "Frankfurt am Main", "stateOrProvinceCode": null, "zipCode": "60596", "zipCodePlus4": null, "countryCode": "DEU" }, "exclusionSecondaryAddress": [], "exclusionOtherInformation": { "additionalComments": "Supreme Foodservice GmbH and Supreme Foodservice FZE", "ctCode": null, "evsInvestigationStatus": null, "references": { "referencesList": [ { "exclusionName": "Supreme Fuels GmbH & Co. KG, Frankfurt am Main (D), Zweigniederlassung Glarus (480015629)- Zwinglistrasse 6 , GLARUS , GL ,8750,CHE", "type": "Cross-Reference" } ] }, "moreLocations": [ { "exclusionName": "Supreme Fuels GmbH & Co. KG, Frankfurt am Main (D), Zweigniederlassung Glarus (480015629)- Zwinglistrasse 6 , GLARUS , GL ,8750,CHE", "duns": "480015629", "cageCode": null, "npi": null, "primaryAddress": { "addressLine1": "Zwinglistrasse 6", "addressLine2": null, "city": "GLARUS", "stateOrProvinceCode": "GL", "zipCode": "8750", "zipCodePlus4": null, "countryCode": "CHE" }, "secondaryAddress": [ { "addressLine1": null, "addressLine2": null, "city": null, "stateOrProvinceCode": null, "zipCode": null, "zipCodePlus4": null, "countryCode": null } ] } ] }, "vesselDetails": { "callSign": null, "type": null, "tonnage": null, "grt": null, "flag": null, "owner": null } } ],

v3 Response:
{ "totalRecords": 1, "excludedEntity": [ { "exclusionDetails": { "classificationType": "Firm", "exclusionType": "Ineligible (Proceedings Pending)", "exclusionProgram": "Reciprocal", "excludingAgencyCode": "DLA", "excludingAgencyName": "DEFENSE LOGISTICS AGENCY" }, "exclusionIdentification": { "ueiSAM": "KQKWLLDBMDL5", "cageCode": null, "npi": null, "prefix": null, "firstName": null, "middleName": null, "lastName": null, "suffix": null, "entityName": "Supreme Fuels GmbH & Co. KG", "dnbOpenData": null }, "exclusionActions": { "listOfActions": [ { "createDate": "03-19-2015", "updateDate": "03-19-2015", "activateDate": "03-13-2015", "terminationDate": null, "terminationType": "Indefinite", "recordStatus": "Active" } ] }, "exclusionPrimaryAddress": { "addressLine1": "Rembrandtstr. 17", "addressLine2": null, "city": "Frankfurt am Main", "stateOrProvinceCode": null, "zipCode": "60596", "zipCodePlus4": null, "countryCode": "DEU" }, "exclusionSecondaryAddress": [], "exclusionOtherInformation": { "additionalComments": "Supreme Foodservice GmbH and Supreme Foodservice FZE", "ctCode": null, "evsInvestigationStatus": null, "references": { "referencesList": [ { "exclusionName": "Supreme Fuels GmbH & Co. KG, Frankfurt am Main (D), Zweigniederlassung Glarus (480015629)- Zwinglistrasse 6 , GLARUS , GL ,8750,CHE", "type": "Cross-Reference" } ] }, "moreLocations": [ { "exclusionName": "Supreme Fuels GmbH & Co. KG, Frankfurt am Main (D), Zweigniederlassung Glarus (480015629)- Zwinglistrasse 6 , GLARUS , GL ,8750,CHE", "ueiSAM": "XLLLJD1L9SE3", "cageCode": null, "npi": null, "primaryAddress": { "addressLine1": "Zwinglistrasse 6", "addressLine2": null, "city": "GLARUS", "stateOrProvinceCode": "GL", "zipCode": "8750", "zipCodePlus4": null, "countryCode": "CHE" }, "secondaryAddress": [ { "addressLine1": null, "addressLine2": null, "city": null, "stateOrProvinceCode": null, "zipCode": null, "zipCodePlus4": null, "countryCode": null } ] } ] }, "vesselDetails": { "callSign": null, "type": null, "tonnage": null, "grt": null, "flag": null, "owner": null } } ],

Example 2: Post April 3rd 2022, get me all the Firms in a CSV file format.

Request URL v2 Production URL: https://api.sam.gov/entity-information/v2/exclusions?api_key=< PUBLIC API Key >&classification=Firm&format=CSV
v3 Production URL: COMING SOON

v2 Alpha URL: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< PUBLIC API Key >&classification=Firm&format=CSV
v3 Alpha URL: COMING SOON

Response Note: Both v2 and v3 Public Responses for one record are provided as samples.

v2 Response:
Extract File will be available for download with url: https://api.sam.gov/entity-information/v2/download-exclusions?api_key=REPLACE_WITH_API_KEY&token=< TOKEN > in some time. If you have requested for an email notification, you will receive it once the file is ready for download.

Downloading the CSV file using the Token: https://api.sam.gov/entity-information/v2/download-exclusions?api_key=< PUBLIC API KEY >&token=< TOKEN >

Click to view CSV Response for one record Sample CSV Response.

v3 Response:
Click to view CSV Response for one record Sample CSV Response.

Example 3: Get Individual or Special Entity Designation Exclusion records that are not excluded by DOJ, that belong to Korea and that contain CHONG anywhere in the response.

Request URL Production URL: https://api.sam.gov/entity-information/v2/exclusions?api_key=< a valid Public API Key >&classification=[Individual~Special Entity Designation]&excludingAgencyCode=!DOJ&country=KOR&q=CHONG

Alpha URL: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< a valid Public API Key >&classification=[Individual~Special Entity Designation]&excludingAgencyCode=!DOJ&country=KOR&q=CHONG

Response (JSON Output) Note: Public Response for one record is provided as an example

{
  "totalRecords": 5,

A sample record is provided here:

  "excludedEntity": [
    {
      "exclusionDetails": {
        "classificationType": "Individual",
        "exclusionType": "Ineligible (Proceedings Completed)",
        "exclusionProgram": "Reciprocal",
        "excludingAgencyCode": "ARMY",
        "excludingAgencyName": "DEPT OF THE ARMY"
      },
      "exclusionIdentification": {
        "ueiSAM": null,
        "cageCode": null,
        "npi": null,
        "prefix": "Ms.",
        "firstName": "Chong",
        "middleName": "Sun",
        "lastName": "Hwang",
        "suffix": null,
        "entityName": "Ms. Chong Sun Hwang",
        "dnbOpenData": null
      },
      "exclusionActions": {
        "listOfActions": [
          {
            "createDate": "07-27-2012",
            "updateDate": "07-27-2012",
            "activateDate": "12-12-2011",
            "terminationDate": "11-08-2029",
            "terminationType": "Definite",
            "recordStatus": "Active"
          }
        ]
      },
      "exclusionPrimaryAddress": {
        "addressLine1": null,
        "addressLine2": null,
        "city": "Dongjak-gu, Seoul",
        "stateOrProvinceCode": null,
        "zipCode": null,
        "zipCodePlus4": null,
        "countryCode": "KOR"
      },
      "exclusionSecondaryAddress": [],
      "exclusionOtherInformation": {
        "additionalComments": null,
        "ctCode": "A",
        "evsInvestigationStatus": null,
        "references": {
          "referencesList": [
            {
              "exclusionName": null,
              "type": null
            }
          ]
        },
        "moreLocations": [
          {
            "exclusionName": null,
            "duns": null,
            "cageCode": null,
            "npi": null,
            "primaryAddress": {
              "addressLine1": null,
              "addressLine2": null,
              "city": null,
              "stateOrProvinceCode": null,
              "zipCode": null,
              "zipCodePlus4": null,
              "countryCode": null
            },
            "secondaryAddress": [
              {
                "addressLine1": null,
                "addressLine2": null,
                "city": null,
                "stateOrProvinceCode": null,
                "zipCode": null,
                "zipCodePlus4": null,
                "countryCode": null
              }
            ]
          }
        ]
      },
      "vesselDetails": {
        "callSign": null,
        "type": null,
        "tonnage": null,
        "grt": null,
        "flag": null,
        "owner": null
      }
    },
    
  "links": {
    "selfLink": "https://api.sam.gov/entity-information/v2/exclusions?api_key=REPLACE_WITH_API_KEY&classification=[Individual~Special%20Entity%20Designation&excludingAgencyCode=!DOJ&country=KOR&q=CHONG&page=0&size=10",
    
  }

Example 4: Get details and address of the Ineligible (Proceedings Completed) or Prohibition/Restriction type of Firm Exclusion records that belong to Korea, China or Germany, by using the “q” parameter.

Request URL Production URL: https://api.sam.gov/entity-information/v2/exclusions?api_key= < a valid Public API Key >&q=(country=KOR OR country=CHN OR country=DEU)&classification=Firm&exclusionType=[Ineligible (Proceedings Completed)~Prohibition/Restriction]&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress

Alpha URL: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< a valid Public API Key >&q=(country=KOR OR country=CHN OR country=DEU)&classification=Firm&exclusionType=[Ineligible (Proceedings Completed)~Prohibition/Restriction]&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress

Response (JSON Output) Note: Public Response for one record is provided as an example

{
  "totalRecords": 63,

A sample record is provided here:

  "excludedEntity": [
    {
      "exclusionDetails": {
        "classificationType": "Firm",
        "exclusionType": "Ineligible (Proceedings Completed)",
        "exclusionProgram": "Reciprocal",
        "excludingAgencyCode": "AF",
        "excludingAgencyName": "DEPT OF THE AIR FORCE"
      },
      "exclusionIdentification": {
        "ueiSAM": "H2XFNNKK2NZ9",
        "cageCode": null,
        "npi": null,
        "prefix": null,
        "firstName": null,
        "middleName": null,
        "lastName": null,
        "suffix": null,
        "entityName": "Shenzhen Hongdark Electronics Co., Ltd.",
        "dnbOpenData": null
      },
      "exclusionPrimaryAddress": {
        "addressLine1": null,
        "addressLine2": null,
        "city": "Shenzhen",
        "stateOrProvinceCode": null,
        "zipCode": null,
        "zipCodePlus4": null,
        "countryCode": "CHN"
      },
      "exclusionSecondaryAddress": []
    },

"links": {
    "selfLink": "https://api.sam.gov/entity-information/v2/exclusions?api_key=REPLACE_WITH_API_KEY&q=(country=KOR%20OR%20country=CHN%20OR%20country=DEU)&classification=Firm&exclusionType=[Ineligible%20(Proceedings%20Completed)~Prohibition/Restriction&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress&page=0&size=10",
    "nextLink": "https://api.sam.gov/entity-information/v2/exclusions?api_key=REPLACE_WITH_API_KEY&q=(country=KOR%20OR%20country=CHN%20OR%20country=DEU)&classification=Firm&exclusionType=[Ineligible%20(Proceedings%20Completed)~Prohibition/Restriction&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress&page=1&size=10"
  }
}

Request URL Production URL: https://api.sam.gov/entity-information/v2/exclusions?api_key=< a valid Public API Key >&q=(country=KOR OR country=CHN OR country=DEU)&classification=Firm&exclusionType=[Ineligible (Proceedings Completed)~Prohibition/Restriction]&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress&format=CSV&emailId=Y

Alpha URL: https://api-alpha.sam.gov/entity-information/v2/exclusions?api_key=< a valid Public API Key >&q=(country=KOR OR country=CHN OR country=DEU)&classification=Firm&exclusionType=[Ineligible (Proceedings Completed)~Prohibition/Restriction]&includeSections=exclusionDetails,exclusionIdentification,exclusionAddress&format=CSV&emailId=Y

Response Click to view CSV Response for one record Sample CSV Response

Back to top

Additional Information

You can view the full details of the differences between the SAM legacy API and SAM.gov API
available here: Variance Document

Disclaimer: Limitation on Permissible Use of Dun & Bradstreet, Inc. (D&B) Data

  • This website contains data supplied by third party information suppliers, including Dun & Bradstreet (D&B). For the purposes of the following limitation on permissible use of D&B data, which includes each entity’s DUNS Number and its associated business information, “D&B Open Data” is defined as the following data elements: Legal Business Name, Street Address, City Name, State/Province Name, Country Name, County Code, State/Province Code, State/Province Abbreviation, ZIP/Postal Code, Country Name and Country Code. Entity registration, exclusion, or contract award records in SAM may contain D&B-supplied data. Applicable records containing D&B data include all entity registration records with a last updated date earlier than 4/4/2022, all exclusions records with a created date earlier than 4/4/2022, and all base award notices with an award date earlier than 4/4/2022. These records show the Entity Validation Service (EVS) Source as D&B in outbound data streams.
  • D&B hereby grants you, the user, a license for a limited, non-exclusive right to use D&B Open Data within the limitations set forth herein. By using this website you agree that you shall not use D&B Open Data without giving written attribution to the source of such data (i.e., D&B) and shall not access, use or disseminate D&B Open Data in bulk, (i.e., in amounts sufficient for use as an original source or as a substitute for the product and/or service being licensed hereunder).
  • Except for data elements identified above as D&B Open Data, under no circumstances are you authorized to use any other D&B data for commercial, resale or marketing purposes (e.g., identifying, quantifying, segmenting and/or analyzing customers and prospective customers). Systematic access (electronic harvesting) or extraction of content from the website, including the use of “bots” or “spiders”, is prohibited. Federal government entities are authorized to use the D&B data for purposes of acquisition as defined in FAR 2.101 and for the purpose of managing Federal awards, including sub-awards, or reporting Federal award information.
  • GSA assumes no liability for the use of the D&B data once it is downloaded or accessed. The D&B data is provided “as is” without warranty of any kind. The D&B data is the intellectual property of D&B. In no event will D&B or any third party information supplier be liable in any way with regard to the use of the D&B data. For more information about the scope of permissible use of D&B data licensed hereunder, please contact D&B at datause_govt@dnb.com.

Back to top

Contact Us

  • Reach out to the SAM.gov team at www.fsd.gov for inquiries and help desk support.
    • Before contacting the help desk, conduct your own initial troubleshooting
      • Conduct a recent review of the open.gsa.gov/api specifications
      • Confirm you are using an API tool, not a browser to send the request. (FOUO & Sensitive Calls)
      • Confirm you are using the username/password for the system account that created the API key in the authentication header. (Sensitive Calls)
      • Confirm you used POST and not GET for this request (Sensitive Calls)
      • Confirm that the API key is from a system account (FOUO & Sensitive Calls)
      • Confirm that the API key being used is still active
      • Confirm that the system account you are using has “read fouo” or “read sensitive” permissions as applicable (FOUO & Sensitive Calls)
      • Confirm that the IP addresses registered with your system account are current
    • When submitting help desk tickets for API or system connection issues, provide the following:
      • The exact API requests that you were trying to send
      • The exact error messages that you were receiving
      • The exact dates and times when you received the errors
      • Screenshots (with the actual API request and the error) [Attach to the ticket]
      • The System Account ID/Name that was trying to make API calls
      • Screenshots of the parameters used for API call [Attach to the ticket]
      • Screenshots of the Headers used for the API call [Attach to the ticket]
  • Users requesting access to the test site (alpha.sam.gov) should follow the below steps. These steps ONLY apply to alpha.sam.gov access requests.
    1. Navigate to www.fsd.gov
    2. Sign into the FSD platform using your FSD credentials
    3. Select “Create an Incident”
    4. Create an Incident
      1. System Name: System for Award Management (SAM)
      2. Is this related to the American Rescue Plan Act?: No
      3. Issue Type: Other
      4. Business Type: Other
      5. Subject (select 1):
        1. Option A: I need a role to test in alpha.sam.gov.
        2. Option B: System account approval in alpha.sam.gov
      6. Please describe the issue: (Copy and paste the below information into the ticket, filling in your information within the brackets)
        1. Option A: I have already navigated to alpha.sam.gov and created a user account, following the same steps for creating an account in sam.gov. I would like to conduct testing but do not have the necessary role(s) in alpha.sam.gov. The account that needs role assignment is associated with [EMAIL ADDRESS]. I request a [ROLE] role for the [DOMAIN] domain in alpha.sam.gov.
        2. Option B: I am creating/editing a system account and have submitted my account in alpha.sam.gov for approval. I would like to request alpha.sam.gov system account review and approval for [Name of the alpha.sam.gov system account].

Back to top

Change Log

Date Version Description
06/03/2019 v1.0 Base Version
08/15/2019 v1.1 * Added Beta.SAM.Gov to the page title.

*Updated the Alpha endpoint to v1.

*Added Secondary Address fields.
09/25/2019 v1.2 Beta endpoints for public FOUO and Sensitive API were updated from version 0.9 to version 1.0.
11/25/2019 v1.3 * Added D&B Disclaimer in the Additional Information section.

* Updated the specifications to include parameters and fields that will be included in v2 of the API.
12/20/2019 v1.4 Added “COMING SOON” section for upcoming changes to Alpha and Beta endpoints to meet new API standards.
02/25/2020 v1.5 * Added Examples for v2 requests and responses.

* Updated Alpha endpoint to meet new API standards.
02/28/2020 v1.6 * Updated Beta endpoint to meet new API standards.

* Removed “COMING SOON” information in Getting Started section.
05/04/2020 v1.7 * Added V2 endpoint information.
10/15/2020 v1.8 * Updated the Beta V1 endpoint
12/07/2020 v1.9 * Updated moreLocations for API response.

* Updated vesselDetails –> secondaryAddress to mention v2 Beta only.

* Added exclusionSecondaryAddress to API response.

* Changed exclusionAddress to exclusionAddress/exclusionPrimaryAddress in the API response.
01/22/2021 v2.0 * Added the highlighted changes message under the “Getting Started” section.

* Added Beta V2 endpoint.
02/05/2021 v2.1 * Updated description for emailId parameter.

* Updated parameter definitions and examples.

* Added message about non-allowable characters.

* Removed tin and ssn parameters.

* Added addressLine1 and addressLine2 parameters.
03/12/2021 v2.2 * Added ssnOrTinOrEin parameter to the Query String Parameters table.

* Added note to addressLine1 and addressLine2 parameters regarding use with exclusionName parameter.

* Updated error messages
04/08/2021 v2.3 Updated Contact Us information.
04/29/2021 v2.4 * Updated openapi spec file.
05/12/2021 v2.5 * Updated instances of beta.sam.gov to SAM.gov.

* Removed non-relevant information for Beta api.
07/16/2021 v2.6 * Updated description for recordStatus parameter.

* Added message stating that the slash character must be enclosed with double quotes if being used inside of a search parameter.

* Added the Type of Connections and Rate Limits table

* Updated the examples

* Updated the Contact Us information
10/06/2021 v2.7 * Updated the “Contact Us” section.
10/21/2021 v2.8 * Updated Examples - Added Example 1 and Example 2 to indicate the post April 3rd, 2022 behavior.

* Added notes in the Query String Parameters, Expected Result and HTTP Response Codes sections to highlight the until and after April 3rd, 2022 behavior.
02/01/2022 v2.9 * Added exclusions V3 endpoint information to the Getting Started section.

* Updated the Query String Parameters and Expected Results sections to reflect available parameters and response fields in V3.

* Updated the Example 1 and Example 2 to indicate the V3 behavior.

* Updated the section, “HTTP Response Codes” to indicate the v3 behavior.

* Update the OpenAPI Specification File to include the V3 endpoints.
04/04/2022 v3.0 * Provided the v3 end point for Production.

* Removed ueiDUNS occurrences from the sections, Query String Parameters, Expected Result, HTTP Response Codes and Examples.

Back to top