Domain Model
Bom Line
Fields
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string.uuid | Yes | — | Id |
| createdAt | string.date-time | Yes | — | Created at |
| updatedAt | string.date-time | Yes | — | Updated at |
| quoteId | string | Yes | — | ID of the associated quote |
| productId | string | No | — | ID of the associated product |
| parentBomLineId | string | No | — | ID of the associated parent bom line |
| lineType | enum(material, labor, recurring, subcontract, other) | Yes | — | Line type |
| manufacturer | string | No | — | Manufacturer |
| sku | string | No | — | Sku |
| description | string | Yes | — | Description |
| quantity | number | Yes | — | Quantity |
| unitCost | number | No | — | Unit cost |
| unitPrice | number | No | — | Unit price |
| laborHours | number | No | — | Labor hours |
| solutionFamily | string | No | — | Solution family |
| alternateGroup | string | No | — | Alternate group |
| sortOrder | integer | Yes | — | Sort order |
| sourcingStatus | enum(not_started, quoted, ordered, received, backordered) | Yes | — | Sourcing status |
| taxable | unknown | Yes | — | Taxable |
| workspaceId | string | Yes | — | ID of the associated workspace |
| visibilityMode | enum(global, workspace_local, shared) | Yes | — | Visibility mode |
Create Schema
Fields accepted when creating a new record:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| quoteId | string | Yes | — | ID of the associated quote |
| productId | string | No | — | ID of the associated product |
| parentBomLineId | string | No | — | ID of the associated parent bom line |
| lineType | enum(material, labor, recurring, subcontract, other) | Yes | — | Line type |
| manufacturer | string | No | — | Manufacturer |
| sku | string | No | — | Sku |
| description | string | Yes | — | Description |
| quantity | number | Yes | — | Quantity |
| unitCost | number | No | — | Unit cost |
| unitPrice | number | No | — | Unit price |
| laborHours | number | No | — | Labor hours |
| solutionFamily | string | No | — | Solution family |
| alternateGroup | string | No | — | Alternate group |
| sortOrder | integer | Yes | 0 | Sort order |
| sourcingStatus | enum(not_started, quoted, ordered, received, backordered) | Yes | "not_started" | Sourcing status |
| taxable | unknown | No | — | Taxable |
| workspaceId | string | No | — | ID of the associated workspace |
| visibilityMode | enum(global, workspace_local, shared) | Yes | "workspace_local" | Visibility mode |
Update Schema
All fields are optional when updating:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| quoteId | string | No | — | ID of the associated quote |
| productId | string | No | — | ID of the associated product |
| parentBomLineId | string | No | — | ID of the associated parent bom line |
| lineType | enum(material, labor, recurring, subcontract, other) | No | — | Line type |
| manufacturer | string | No | — | Manufacturer |
| sku | string | No | — | Sku |
| description | string | No | — | Description |
| quantity | number | No | — | Quantity |
| unitCost | number | No | — | Unit cost |
| unitPrice | number | No | — | Unit price |
| laborHours | number | No | — | Labor hours |
| solutionFamily | string | No | — | Solution family |
| alternateGroup | string | No | — | Alternate group |
| sortOrder | integer | No | 0 | Sort order |
| sourcingStatus | enum(not_started, quoted, ordered, received, backordered) | No | "not_started" | Sourcing status |
| taxable | unknown | No | — | Taxable |