Skip to main content

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

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"
}

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