Product Reference
Everything you need to categorize and format products correctly
Quick Start Template
Copy this template, fill in your values
Maximize your exposure: The more fields you complete, the better your products will perform in search results. If UPC and Mfg# are unavailable, we strongly encourage including departmentName and categoryName at minimum.
{
"title": "YOUR PRODUCT TITLE",
"url": "https://yoursite.com/product-page",
"imageUrl": "https://yoursite.com/images/product.jpg",
"departmentName": "Firearms",
"categoryName": "Pistol",
"subcategoryName": "Semi-Automatic",
"manufacturerName": "MANUFACTURER NAME",
"model": "MODEL NAME",
"upc": "123456789012",
"mfgNumber": "MFG-123",
"locations": [
{
"storeId": "001",
"price": 599.99,
"inStock": true,
"inStore": false,
"condition": "new",
"shippingInfo": "Free shipping over $500"
}
],
"attributes": [
{ "attributeName": "Caliber", "attributeValue": "9MM" },
{ "attributeName": "Barrel Length", "attributeValue": "4\"" }
]
}Replace the UPPERCASE values with your actual product data. See sections below for valid category values.
How Categories Work
Every product needs 3 category fields
The 3 Fields You Need
departmentName
"Firearms"
categoryName
"Pistol"
subcategoryName
"Semi-Automatic"
{
"departmentName": "Firearms",
"categoryName": "Pistol",
"subcategoryName": "Semi-Automatic"
}departmentName
The broadest category. Pick ONE from 6 options.
categoryName
The product type within that department. Required.
subcategoryName
Optional but improves search. Not all categories have them.
Use EXACT values shown below
Values must match exactly (case-insensitive). Invalid values = products won't display.
All Valid Values
Click any value to copy it. Use exactly as shown.
Firearms
Pistol
Rifle
Shotgun
Ammunition
Ammunition
No subcategories for ammunition
Reloading
Accessory
Magazine
Optic
Holster
AR Part
Other
Use for accessories that do not fit other categories
NFA
No subcategories for NFA items
Suppressor
No subcategories needed
Short Barrel Rifle
No subcategories needed
Short Barrel Shotgun
No subcategories needed
Machine Gun
No subcategories needed
Any Other Weapon
No subcategories needed
Destructive Device
No subcategories needed
Other
No subcategories needed
Knives
No subcategories for knives
Fixed Blade
No subcategories needed
Folding
No subcategories needed
Automatic
No subcategories needed
Multi-Tool
No subcategories needed
Butterfly
No subcategories needed
Throwing
No subcategories needed
Tactical
No subcategories needed
Hunting
No subcategories needed
EDC
No subcategories needed
Other
No subcategories needed
Archery
No subcategories for archery items
Compound Bow
No subcategories needed
Recurve Bow
No subcategories needed
Crossbow
No subcategories needed
Longbow
No subcategories needed
Arrows
No subcategories needed
Broadheads
No subcategories needed
Targets
No subcategories needed
Releases
No subcategories needed
Sights
No subcategories needed
Quivers
No subcategories needed
Stabilizers
No subcategories needed
Accessories
No subcategories needed
Complete Examples
Real-world product examples by type
Firearm Example
Glock 19 Gen5 Pistol
{
"title": "GLOCK 19 Gen5 MOS 9mm Semi-Auto Pistol",
"url": "https://exampledealer.com/glock-19-gen5-mos",
"imageUrl": "https://exampledealer.com/images/glock19.webp",
"departmentName": "Firearms",
"categoryName": "Pistol",
"subcategoryName": "Semi-Automatic",
"manufacturerName": "GLOCK",
"model": "PA195S203MOS",
"upc": "764503037252",
"mfgNumber": "PA195S203MOS",
"locations": [
{
"storeId": "001",
"price": 599.99,
"pricedBelowMAP": false,
"addToCartForPrice": false,
"inStock": true,
"inStore": true,
"eligibleForFinancing": true,
"condition": "new",
"shippingInfo": "Free shipping on orders over $500"
}
],
"attributes": [
{ "attributeName": "Caliber", "attributeValue": "9MM" },
{ "attributeName": "Barrel Length", "attributeValue": "4.02\"" },
{ "attributeName": "Capacity", "attributeValue": "15" },
{ "attributeName": "Action", "attributeValue": "Semi-Automatic" },
{ "attributeName": "Finish", "attributeValue": "Black nDLC" }
]
}Additional Properties for Ammo
Include these additional fields for ammunition products to enable price-per-round calculations and filtering.
| Field | Type | Required | Description |
|---|---|---|---|
| count | number | Yes | Number of rounds in package. Used to calculate cost per round. |
| purchaseLimit | number | No | Maximum quantity a customer can purchase |
| caseType | string | No | Casing material (Brass, Steel, Aluminum) |
| caliber | string | Yes | Ammunition caliber (9mm, .223, etc.) |
| bulletType | string | No | Bullet type (FMJ, HP, etc.) |
| grain | number | No | Bullet weight in grains |
| pricePerRound | number | No | Pre-calculated price per round |
| shotSize | string | No | Shotgun shot size (00, 4, 7.5, etc.) |
| shellLength | string | No | Shotgun shell length |
The count field is the total round count in the case or box. We use this to calculate cost per round, so make sure it is accurate.
{
...other properties,
"count": 20,
"purchaseLimit": 5,
"caseType": "Brass",
"caliber": "9mm",
"bulletType": "FMJ",
"grain": 55,
"pricePerRound": 0.45,
"shotSize": "00",
"shellLength": "2 ¾"
}Additional Properties for Reloading
Include these additional fields for reloading components (brass, bullets, primers, powder).
| Field | Type | Required | Description |
|---|---|---|---|
| type | string | Yes | Component type: brass, bullet, or primer |
| count | number | Yes | Number of components in package |
| purchaseLimit | number | No | Maximum quantity a customer can purchase |
| caliber | string | Yes | Caliber specification |
| brassCartridge | string | No | Brass cartridge type (for brass components) |
| primerSize | string | No | Primer size (small pistol, large pistol, small rifle, large rifle) |
{
...other properties,
"type": "(brass, bullet, or primer)",
"count": 20,
"purchaseLimit": 5,
"caliber": "9mm",
"brassCartridge": "9mm",
"primerSize": "large pistol"
}Important Field Notes
count
Used for number of rounds (ammo) and counts for products like bullets, primers, powder, etc. We use this to calculate cost per round, so make sure it is the total round count in the case, or total per box for a single box of ammo.
inStore
Used to flag items physically available on the shelf today at the store.
storeId
Very important to mark items correctly for users looking for local inventory. This is especially important for multi-store dealers.
attributes
Not required, but if we are missing the information and a user filters on it specifically, the item will not display.
hideFFLAddress
Used to hide dealers from local search if they are non-storefronts or do not want to appear in local search.
eligibleForFinancing
Marks items that qualify for a 3rd party financing option.
pricedBelowMAP
Marks items priced below the manufacturer's suggested retail price. The price will be displayed on the site as 'MAP'.
addToCartForPrice
Marks items that must be added to cart to match price displayed.
emailForPrice
Marks items that must be emailed to the dealer to match price displayed.
