FIRMS codes explained
A FIRMS code (Facilities Information and Resources Management System) is the 4-character identifier U.S. Customs and Border Protection assigns to a place where imported goods can be unladen, stored or examined. Filers use it on entries, in-bond movements and location-of-goods data so CBP knows where the cargo is.
Format
Section titled “Format”A code is exactly four uppercase letters or digits. The only safe format check is:
^[A-Z0-9]{4}$About a third of real codes are not a letter followed by three digits, and at least one starts with a digit. A stricter pattern rejects valid codes. To know whether a code is real, look it up.
Facility types
Section titled “Facility types”| Type | Meaning |
|---|---|
01 |
Container freight station (CFS) |
02 |
Foreign trade zone (FTZ) |
03 |
Pier or terminal |
04 |
Bonded warehouse |
05 |
Inspection facility |
06 |
Importer’s premises |
07 |
DP site |
08 |
CBP administrative site |
09 |
Centralized examination station (CES) |
10 |
Rail or air terminal (meaning inferred; CBP publishes no label) |
11 |
CBP test facility (flagged as junk) |
Some codes have no type in CBP’s list; the API returns type: null for those.
Status: active and deleted
Section titled “Status: active and deleted”CBP marks codes active or deleted. FIRMSapi keeps deleted codes: a lookup returns them with
status: "deleted" and a warning instead of a 404, so old paperwork still resolves. Don’t use a deleted code on a
new filing; validation fails it (the reject ACE returns as 159).
Junk rows
Section titled “Junk rows”The CBP list contains placeholders (“DO NOT USE”) and CBP test facilities (type 11). FIRMSapi flags these as junk:
lookups return them with junk: true and a warning, and search and nearby leave them out.
One address, many codes
Section titled “One address, many codes”A single building often carries several codes, for example a bonded warehouse and a CFS run by the same operator, or codes for successive operators. Search results and the public code pages group codes at the same address.
Each code belongs to a CBP port, a 4-digit code such as 4601 (New York/Newark). Validation checks that the code is
in the port on your filing. Browse codes by port at firmsapi.com/ports.
Freshness
Section titled “Freshness”Every response includes meta.data_as_of, the date of the CBP list the answer came from. When CBP publishes an
update, FIRMSapi diffs it into the changes feed.