API onboarding
BFG APIs are organized around several key concepts that represent core business data and processes. Understanding these objects and their relationships will help you use the API effectively.
| Object | Description |
|---|---|
| MAP policies | Define pricing boundaries that retailers must follow when listing or promoting products. |
| Products | Represent items in your catalog. |
| Categories | Organize products into groups. |
| MAP promotion products | Items that are part of a promotional campaign in compliance with a brand’s MAP policy. |
| Product inventories | Update inventory quantities for specific products at a store level. |
| Federal firearms licenses (FFLs) | Represent a licensed business entity that is authorized to manufacture, import, or sell firearms in the United States. |
| Stores | Physical or online retail locations linked to a manufacturer's brand. |
| Store locators | Register and locates store that are affiliated with specific brands. |
MAP policies
Minimum Advertised Price (MAP) policies define pricing boundaries that retailers must follow when listing or promoting products.
Key endpoints
- List MAP policies:
GET /api/map-policies - Get a MAP policy:
GET /api/map-policies/{policy_id}
MAP policies help enforce brand compliance and protect pricing integrity across sales channels.
Products
Product records represent items in your catalog. You can enrich them with inventory, pricing, and retailer or promotion data.
Key endpoints
- List products:
GET /api/products - Get a product:
GET /api/products/{product_id}
Use these endpoints to filter, sort, and retrieve product data for storefronts, compliance checks, and order workflows.
Categories
Categories organize products into logical groups within your inventory. They include category names, descriptions, hierarchical relationships, and manufacturer details.
Key endpoints
- List categories:
GET /api/manufacturers/categories - Create a category:
POST api/manufacturers/categories - Get a category:
GET api/manufacturers/categories/{manufacturer_category_id} - Update a category:
PUT api/manufacturers/categories/{manufacturer_category_id} - Delete a category:
DELETE api/manufacturers/categories/{manufacturer_category_id}
Use these endpoints to filter, sort, and manage your product categories effectively.
MAP promotion products
MAP promotions are campaigns with limited-time pricing or product restrictions. Products tied to a promotion can be accessed and reviewed for compliance and campaign setup.
Key endpoints
- List promotion products:
GET /api/map-promotions/{promotion_id}/products - Get a promotion product:
GET /api/map-promotions/{promotion_id}/products/{product_id}
Use these endpoints to monitor which products are subject to specific MAP terms during a promotional period.
Product inventories
Inventory endpoints allow retailers to update product availability by UPC code. These updates support omnichannel availability, such as store pickup or online ordering.
Key endpoints
- Get a product inventory:
GET /api/product-inventories/{upc_code} - Update a product inventory:
PUT /api/product-inventories/{upc_code} - Bulk update inventories:
PUT /api/product-inventories
Inventory updates should always include the account_id to ensure accuracy.
Federal Firearms Licenses (FFLs)
FFLs are the foundation of many business operations in the BFG ecosystem. They represent a business entity licensed to manufacture, import, or sell firearms.
Key endpoints
- List FFLs:
GET /api/ffls - Retrieve an FFL by ID:
GET /api/ffls/{ffl_id} - Retrieve an FFL by license number:
GET /api/ffls/number/{fflNumber} - View FFL import history:
GET /api/ffls/import/histories - Download FFL files:
GET api/ffls/download-files/{ffl_id}
Use FFLs to validate dealer eligibility, populate store records, and associate licenses with stores.
Stores
Stores represent physical or online retail locations that are linked to a manufacturer's brand.
Key endpoints
- List stores:
GET /api/manufacturers/stores - Create a store:
POST /api/manufacturers/stores - Get a store:
GET /api/manufacturers/stores/{company_id} - Update a store:
PUT /api/manufacturers/stores/{company_id}
These stores are managed through BFG so brands can list available products and display store-specific contact and branding details.
Store locator
The store locator helps consumers find authorized retail locations and enables brands to showcase where their products are available.
Key endpoints
- List brands:
GET /api/store-locator/brands - Register a store:
POST /api/store-locator/register
Each store must be linked to a brand account and can optionally be linked to an FFL number. Address details and store attributes (pickup, e-commerce) are required during registration.
Updated 3 months ago
For a deeper look at individual APIs, visit each topic's dedicated page by clicking the API Reference tab.