API Documentation
Complete reference for printer manufacturing, models, processes, and diameters APIs
GET
Get All Manufacturers
Retrieve all printer manufacturers (admin use)
/api/printer-manufacturers[
{
"id": 1,
"name": "Epson",
"logo_url": "https://...",
"active": true
}
]POST
Create Manufacturer
Create a new printer manufacturer
/api/printer-manufacturersname(string)requiredManufacturer namelogo_url(string)Logo image URLactive(boolean)Active status (default: true){
"id": 1,
"name": "Epson",
"logo_url": "https://...",
"active": true
}PUT
Update Manufacturer
Update an existing manufacturer
/api/printer-manufacturersid(number)requiredManufacturer IDname(string)requiredManufacturer namelogo_url(string)Logo image URLactive(boolean)Active status{
"id": 1,
"name": "Epson",
"logo_url": "https://...",
"active": true
}DELETE
Delete Manufacturer
Delete a manufacturer by ID
/api/printer-manufacturers?id={id}id(number)requiredManufacturer ID{
"success": true
}GET
Get Active Manufacturers
Get active manufacturers for Shopify theme integration (CORS enabled)
CORS Enabled/api/printer-config/manufacturers[
{
"id": 1,
"name": "Epson",
"logo_url": "https://..."
}
]fetch('https://reign.bihanitech.com/api/printer-config/manufacturers', {
credentials: 'include',
headers: {
'Content-Type': 'application/json'
}
})
.then(res => {
if (!res.ok) throw new Error('CORS or network error');
return res.json();
})
.then(data => console.log(data))
.catch(err => console.error('Fetch failed:', err));GET
Get All Printer Models
Retrieve all printer models with manufacturer details
/api/printer-models[
{
"id": 1,
"manufacturer_id": 1,
"manufacturer_name": "Epson",
"model_name": "TM-C3500",
"max_label_width": 112,
"max_roll_diameter": 203,
"core_size": 40,
"description": "Color label printer",
"image_url": "https://..."
}
]POST
Create Printer Model
Create a new printer model
/api/printer-modelsmanufacturer_id(number)requiredManufacturer IDmodel_name(string)requiredModel namemax_label_width(number)Max label width (mm)max_roll_diameter(number)Max roll diameter (mm)core_size(number)Core size (mm)description(string)Model descriptionimage_url(string)Model image URL{
"id": 1,
"manufacturer_id": 1,
"model_name": "TM-C3500",
"max_label_width": 112,
"max_roll_diameter": 203,
"core_size": 40,
"description": "Color label printer",
"image_url": "https://..."
}PUT
Update Printer Model
Update an existing printer model
/api/printer-modelsid(number)requiredModel IDmanufacturer_id(number)requiredManufacturer IDmodel_name(string)requiredModel namemax_label_width(number)Max label width (mm)max_roll_diameter(number)Max roll diameter (mm)core_size(number)Core size (mm)description(string)Model descriptionimage_url(string)Model image URL{
"id": 1,
"manufacturer_id": 1,
"model_name": "TM-C3500",
"max_label_width": 112,
"max_roll_diameter": 203,
"core_size": 40,
"description": "Color label printer",
"image_url": "https://..."
}DELETE
Delete Printer Model
Delete a printer model by ID
/api/printer-models?id={id}id(number)requiredModel ID{
"success": true
}GET
Get Printer Models by Manufacturer
Get active printer models for a specific manufacturer (CORS enabled)
CORS Enabled/api/printer-config/models?manufacturer_id={id}manufacturer_id(number)requiredManufacturer ID[
{
"id": 1,
"model_name": "TM-C3500",
"max_label_width": 112,
"max_roll_diameter": 203,
"core_size": 40,
"description": "Color label printer",
"image_url": "https://..."
}
]fetch('https://reign.bihanitech.com/api/printer-config/models?manufacturer_id=1', {
credentials: 'include',
headers: {
'Content-Type': 'application/json'
}
})
.then(res => {
if (!res.ok) throw new Error('CORS or network error');
return res.json();
})
.then(data => console.log(data))
.catch(err => console.error('Fetch failed:', err));GET
Get All Print Processes
Retrieve all print processes
/api/print-processes[
{
"id": 1,
"name": "Thermal Transfer",
"description": "Uses heat to transfer ink from ribbon"
}
]POST
Create Print Process
Create a new print process
/api/print-processesname(string)requiredProcess namedescription(string)Process description{
"id": 1,
"name": "Thermal Transfer",
"description": "Uses heat to transfer ink from ribbon"
}PUT
Update Print Process
Update an existing print process
/api/print-processesid(number)requiredProcess IDname(string)requiredProcess namedescription(string)Process description{
"id": 1,
"name": "Thermal Transfer",
"description": "Uses heat to transfer ink from ribbon"
}DELETE
Delete Print Process
Delete a print process by ID
/api/print-processes?id={id}id(number)requiredProcess ID{
"success": true
}GET
Get All Roll Diameters
Retrieve all roll diameters
/api/roll-diameters[
{
"id": 1,
"diameter": 203,
"core_size": 40,
"max_labels_approx": 5000,
"active": true
}
]POST
Create Roll Diameter
Create a new roll diameter
/api/roll-diametersdiameter(number)requiredRoll diameter (mm)core_size(number)Core size (mm)max_labels_approx(number)Approximate max labelsactive(boolean)Active status (default: true){
"id": 1,
"diameter": 203,
"core_size": 40,
"max_labels_approx": 5000,
"active": true
}PUT
Update Roll Diameter
Update an existing roll diameter
/api/roll-diametersid(number)requiredRoll diameter IDdiameter(number)requiredRoll diameter (mm)core_size(number)Core size (mm)max_labels_approx(number)Approximate max labelsactive(boolean)Active status{
"id": 1,
"diameter": 203,
"core_size": 40,
"max_labels_approx": 5000,
"active": true
}DELETE
Delete Roll Diameter
Delete a roll diameter by ID
/api/roll-diameters?id={id}id(number)requiredRoll diameter ID{
"success": true
}