Endpoint
`POST` https://estateapi.orchid-apps.com/api/submit_upc
Description
This API endpoint allows you to submit a Universal Product Code (UPC) along with a ZIP code to retrieve
information about the product's availability in the specified location.
Request
The request should be made using the `POST` method. The request body should be sent as raw JSON.
Request Body Parameters
Parameters | Type | Description |
api_key | string | API key provided by Orchid during implementation |
zip_code | string | ZIP code representing the desired location |
upc | string | Universal Product Code (UPC) of the product |
Example Request
POST https://estateapi.orchid-apps.com/api/submit_upc
Content-Type: application/json
{
"api_key": "aaaacccc-bbbb-9999-dddd-19d9bf4b94cb", "zip_code": "21205",
"upc": "090161045156"
}
FIREARMS, SILENCERS, MAGAZINES & PARTS/ACCESSORIES QUERIES
Response
The API response will provide information about product restrictions based on the submitted UPC and ZIP Code.
Response Codes
As of January 1, 2026
| Response | Description |
| 1 | Unrestricted |
| 2 | Restricted |
| 3 | Roster State |
| 5 | UPC not Found
|
Testing
You can use the following test ZIP code and test UPCs to simulate different responses: Test ZIP Code: 21205
Test UPCs:
- UPC: 090161045156, Response: 1 (Unrestricted)
- UPC: 845737002367, Response: 2 (Restricted)
- UPC: 022188865813, Response: 3 (Roster State)
- UPC: 123412341234, Response: 5 (UPC not found)
PLEASE NOTE:
· API Response codes above are accurate as of January 1, 2026. Changing laws may have impacted the accuracy of the above. If you receive a different response code please contact Orchid.
· An API Response of “Roster State” indicates the user must check the applicable State Roster to determine legality. Rosters may change daily and without notice to the public.
· The availability of products may vary based on real time data (e.g., a UPC may no longer be available and was removed from the system).
AMMUNITION QUERIES
Response
The API response will provide information about product restrictions, shipping restrictions, and age restrictions based on the submitted UPC and ZIP Code.
Response Codes
As of January 1, 2026
Product Restrictions | Shipping Restrictions | Age Restrictions |
Response | Description | Response | Description | Response | Description |
A | Restricted | AA | Ship to Consumer Permitted | AAA | 18+ Long Gun / 21+ Other Firearms |
B | Not Restricted | BB | Ship to Consumer Pending License and/or Permit Verification | BBB | 21+ All Ammo |
5 | UPC Not Found | CC | Ship to FFL or Dealer | FFF | Restricted |
| | FF | Restricted | ADE | 21+ OR 18+ if purchaser: (a) holds license to carry concealed; (b) is US Armed Forces; (c) is National Guard; (d) is a law enforcement officer |
| | SHI | Ship to Consumer Pending Required Age Verification | AMD | 18+ OR 21+ if the ammo is “solely designed for” either: handguns OR the list of firearms identified at MD Public Safety Article 5-101(r)(2). |
| | SNJ | Shotgun Ammo Ship to Consumer Permitted. Handgun & Rifle Ammo Ship to Consumer Pending License and/or Permit Verification. | ANJ | 18+ for shotgun ammo & rifle ammo for which no handgun exists; 21+ for handgun ammo & rifle ammo that may be used in a handgun. |
Testing
You can use the following test ZIP codes and test UPCs to simulate different responses:
· UPC: 818778023509
o ZIP Code 90232 (API Responses: A, FF, FFF)
o ZIP Code 37219 (API Responses: B, AA, AAA)
o ZIP Code 60020 (API Responses: B, BB, AAA)
o ZIP Code 02804 (API Responses: B, BB, BBB)
o ZIP Code 96712 (API Responses: B, SHI, BBB)
o ZIP Code 07029 (API Responses: B, SNJ, ANJ)
o ZIP Code 14094 (API Responses: B, CC, AAA)
o ZIP Code 19712 (API Responses: B, AA, ADE)
o ZIP Code 20790 (API Responses: B, AA, AMD)
· UPC: 850057976113
o ZIP Code 51008 (API Responses: A, FF, FFF)
· UPC: 123412341234
o ZIP Code 37138 (API Response: 5)
PLEASE NOTE:
· API Response codes above are accurate as of January 1, 2026. Changing laws may have impacted the accuracy of the above. If you receive a different response code please contact Orchid.
· The availability of products may vary based on real time data (e.g., a UPC may no longer be available and was removed from the system).