Bill of Materials (BOM) API Documentation
Overview
This folder contains comprehensive API documentation for Bill of Materials management endpoints.
Available Documentation
BOM Management
- BOM API - Complete BOM lifecycle management
- BOM CRUD operations
- Component line synchronization
- Component explosion calculations
- Archive and restore operations
- Integration with assembly transactions
Quick Links
Common Operations
Create BOM:
POST /api/boms
{
"parentItemId": "widget-id",
"producedUnitOfMeasureId": "each-unit-id",
"name": "Standard Widget Assembly",
"lines": [
{
"componentItemId": "steel-frame-id",
"quantity": 1.0,
"unitOfMeasureId": "each-unit-id"
},
{
"componentItemId": "motor-id",
"quantity": 1.0,
"unitOfMeasureId": "each-unit-id"
}
]
}
Get BOM with Components:
GET /api/boms/{id}
Sync Component Lines:
PUT /api/boms/{id}/lines
{
"lines": [
/* Complete new component list */
]
}
Update BOM Header:
PATCH /api/boms/{id}/header
{
"name": "Updated Assembly Name",
"description": "Updated process description"
}
Related APIs
- Items API - For parent and component items
- Assembly API - For assembly transactions using BOMs
- Inventory API - For checking component availability
Integration Guides
Material Requirements Planning
Calculate Component Needs:
// 1. Get BOM
const bom = await getBOM(bomId);
// 2. Calculate requirements
const requirements = bom.lines.map(line => ({
componentId: line.componentItemId,
required: line.quantity * productionQuantity
}));
// 3. Check availability
for (const req of requirements) {
const available = await checkInventory(req.componentId);
if (available < req.required) {
showShortage(req);
}
}
Assembly Integration
- Get BOM before assembly
- Explode components for production quantity
- Check availability for all components
- Create assembly transaction with BOM reference
Last Updated: 2025-10-24 | API Version: 1.0