Bills of materials
The components and quantity needed to make one product or custom item.
- API name:
billofmaterials - Domain: Engineering
- Modules: Sales, Manufacturing, Master data
Fields
The API name is what the API, MCP and the CLI use.
| Name | API name | Type | Required | Description |
|---|---|---|---|---|
| ID | id | Record ID | Yes | |
| Position | rank | Order rank | Yes | |
| Name | label | Text I18n | ||
| Output quantity | quantity | Quantity | Yes | Standard batch size produced by this bill of materials. Component quantities are relative to this yield. |
| Product | productId | Reference | ||
| Item | customitemId | Reference | ||
| Default | isDefault | Boolean | Yes | Only one published bill of materials per product or custom item may be default. |
| Version | version | Whole Number | Yes | Version number of this bill for the same output. Orders and planning use the default bill, not the highest version. |
| Usage | usage | Constant | Yes | Fixed option from the allowed set for this field. |
| Content | content | Markdown I18n | Optional printable narrative documentation for this bill of materials. Markdown is supported. | |
| Tags | tagIds | Tags | ||
| Data | data | Data | ||
| External identifiers | identifiers | External identifier | External identifiers | Remote system keys and optional id types. One value per system and type pair on this record. | |
| Created by | createdBy | User | ||
| Created at | createdAt | Date and Time | Yes | |
| Updated by | updatedBy | User | ||
| Updated at | updatedAt | Date and Time | Yes | |
| Published by | publishedBy | User | ||
| Published at | publishedAt | Date and Time | ||
| Disabled by | disabledBy | User | ||
| Disabled at | disabledAt | Date and Time | ||
| Blocked by | blockedBy | User | ||
| Blocked at | blockedAt | Date and Time | ||
| Archived by | archivedBy | User | ||
| Archived at | archivedAt | Date and Time |
Relations
Owned records (solid line) are deleted with their owner. Grouped records (dashed line) can exist alone.
| Field | Points to | Kind |
|---|---|---|
Product productId | Products | grouped by |
Item customitemId | Custom items | grouped by |
Tags tagIds | Tags | reference |
Actions
What you can do with a record. Every action also sends the webhook event billofmaterials.<action>. Reads (find, get, count) work on every table.
| Name | API name | Description | Where |
|---|---|---|---|
| Create | create | Add a new bill of materials. | App · WebMCP · API · MCP · CLI |
| Edit | update | Save changes to this bill of materials. | App · WebMCP · API · MCP · CLI |
| Disable | disable | Turn this bill of materials off for new use. Existing references stay. Enable it again to use it. | App · WebMCP · API · MCP · CLI |
| Enable | undisable | Turn this bill of materials back on for new use. | App · WebMCP · API · MCP · CLI |
| Publish | publish | Make this bill of materials available for use. | App · WebMCP · API · MCP · CLI |
| Block | block | Stop edits and deletion of this bill of materials. It stays visible and can still appear on existing documents. Unblock to edit again. | App · WebMCP · API · MCP · CLI |
| Unblock | unblock | Allow edits and deletion of this bill of materials again. | App · WebMCP · API · MCP · CLI |
| Archive | archive | Retire this bill of materials from daily use. It leaves active lists and pickers, and most actions stop. Unarchive to restore it. | App · WebMCP · API · MCP · CLI |
| Restore | unarchive | Return this bill of materials to active lists and actions. | App · WebMCP · API · MCP · CLI |
| Delete | delete | Delete this bill of materials and the data that belongs with it. This cannot be undone. | App · WebMCP · API · MCP · CLI |
States
How a record moves from state to state. Archive and block can happen in any state.