High Tech · Schema

High Tech Bill of Materials

A Bill of Materials (BoM) — the ordered list of every component required to build one unit of a hardware product. Each line references one or more acceptable MPNs (alternates) with reference designators and a quantity.

Arrow ElectronicsAvailabilityBill of MaterialsBoMComponent DataDatasheetsDigi-KeyDistributorsECADElectronic ComponentsElectronicsFootprintsHardwareHigh TechIoTLifecycleManufacturer Part NumberManufacturersMouserMPNNexarOctopartPCB DesignPricingRoHSSemiconductorsSnapEDASupply ChainSymbolsUltra Librarian

Properties

Name Type Description
bomId string Stable identifier for this BoM revision.
name string
revision string
product object
buildQuantity integer
lines array
createdAt string
modifiedAt string
View JSON Schema on GitHub

JSON Schema

high-tech-bom-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/high-tech/refs/heads/main/json-schema/high-tech-bom-schema.json",
  "title": "High Tech Bill of Materials",
  "description": "A Bill of Materials (BoM) — the ordered list of every component required to build one unit of a hardware product. Each line references one or more acceptable MPNs (alternates) with reference designators and a quantity.",
  "type": "object",
  "required": ["bomId", "lines"],
  "properties": {
    "bomId": { "type": "string", "description": "Stable identifier for this BoM revision." },
    "name": { "type": "string" },
    "revision": { "type": "string", "example": "rev-A" },
    "product": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "partNumber": { "type": "string" }
      }
    },
    "buildQuantity": { "type": "integer", "minimum": 1, "default": 1 },
    "lines": {
      "type": "array",
      "items": {
        "type": "object",
        "required": ["lineId", "quantity", "alternates"],
        "properties": {
          "lineId": { "type": "string" },
          "quantity": { "type": "integer", "minimum": 1, "description": "Quantity per assembly." },
          "referenceDesignators": {
            "type": "array",
            "items": { "type": "string", "example": "R1" }
          },
          "description": { "type": "string" },
          "doNotPopulate": { "type": "boolean", "default": false },
          "alternates": {
            "type": "array",
            "minItems": 1,
            "items": {
              "type": "object",
              "required": ["mpn", "manufacturer"],
              "properties": {
                "mpn": { "type": "string" },
                "manufacturer": { "type": "string" },
                "preferred": { "type": "boolean", "default": false }
              }
            }
          }
        }
      }
    },
    "createdAt": { "type": "string", "format": "date-time" },
    "modifiedAt": { "type": "string", "format": "date-time" }
  }
}