Skip to main content

Linked material component

Component linked to a Material Library entry. The server populates customId, name, description, group, productType (always material) and countryOfOrigin from the material; those fields must NOT be provided (400). group is derived from the material's material_type taxonomy category and is left empty when the material has none; countryOfOrigin comes from the material's material_origin_country domain attribute (empty list when absent). Quantities, costs, attribute, supplier/facilities/esgs and the nested bom remain client-editable.

materialCustomIdstringrequired

Custom ID of the Material Library entry to link, unique within the data provider's library. The material must have been created beforehand (see the Products upsert API, entity_type=material)

Possible values: <= 128 characters

Example: MAT-001
supplierComponentIdstringnullable

Supplier component ID

Possible values: <= 255 characters

unitYieldnumbernullable

Unit yield of the component

yieldUomstringnullable

Yield unit of the component

Possible values: <= 50 characters

unitWeightnumbernullable

Unit weight of the component

weightUomstringnullable

Weight unit of the component

Possible values: <= 255 characters

unitCostnumbernullable

Unit cost of the component

costCurrencystringnullable

Cost currency of the component

Possible values: <= 50 characters

totalYieldnumbernullable

Total yield of the component

totalWeightnumbernullable

Total weight of the component

attributeBomIntegrationComponentAttributeValue[]nullable

Optional. Component attribute tags. Each entry must be one of the integration enum values (aligned with common BOM form component_attribute choices).

Possible values: [Organic, Recycled, Sustainable]

Example: ["Organic","Recycled"]
supplier objectnullable
oneOf
namestringrequired

Name of the supplier

Possible values: <= 255 characters

customIdstringnullable

Custom ID of the supplier

addressstringnullable

Address of the supplier

citystringnullable

City of the supplier

stateProvincestringnullable

State/Province of the supplier

postalZipCodestringnullable

Postal/Zip code of the supplier

countrystringnullable

Country of the supplier

phonestringnullable

Phone of the supplier

contactNamestringnullable

Contact name of the supplier

contactEmailstringnullable

Contact email of the supplier

contactPhonestringnullable

Contact phone of the supplier

facilities object[]nullable

Facilities of the component

  • Array [
  • oneOf
    namestringrequired

    Name of the facility

    capabilitiesstring[]nullable

    Capabilities of the facility

    customIdstringnullable

    Custom ID of the facility

    addressstringnullable

    Address of the facility

    citystringnullable

    City of the facility

    stateProvincestringnullable

    State/Province of the facility

    postalZipCodestringnullable

    Postal/Zip code of the facility

    countrystringnullable

    Country of the facility

    phonestringnullable

    Phone of the facility

    contactNamestringnullable

    Contact name of the facility

    contactEmailstringnullable

    Contact email of the facility

    contactPhonestringnullable

    Contact phone of the facility

  • ]
  • esgs object[]nullable

    ESGs of the component

  • Array [
  • groupstringnullable

    Group of the ESG

    standardstringrequired

    Standard of the ESG

    unitAmountnumbernullable

    Unit amount of the ESG

    amountUomstringnullable

    amount uom of the ESG

  • ]
  • bom objectnullable

    Nested child BOM carried by a component (sub-assembly).

    components object[]
  • Array [
  • oneOf
    customIdstringnullable

    Custom ID of the component

    Possible values: <= 255 characters

    supplierComponentIdstringnullable

    Supplier component ID

    Possible values: <= 255 characters

    namestringrequired

    Name of the component

    Possible values: <= 255 characters

    descriptionstringnullable

    Description of the component

    Possible values: <= 2000 characters

    productTypestringrequired

    Product type of the component

    Possible values: [product, item, material]

    groupstringnullable

    Group of the component

    Possible values: <= 255 characters

    unitYieldnumbernullable

    Unit yield of the component

    yieldUomstringnullable

    Yield unit of the component

    Possible values: <= 50 characters

    unitWeightnumbernullable

    Unit weight of the component

    weightUomstringnullable

    Weight unit of the component

    Possible values: <= 255 characters

    unitCostnumbernullable

    Unit cost of the component

    costCurrencystringnullable

    Cost currency of the component

    Possible values: <= 50 characters

    totalYieldnumbernullable

    Total yield of the component

    totalWeightnumbernullable

    Total weight of the component

    countryOfOriginstring[]nullable

    Optional. ISO 3166-1 alpha-2 country codes.

    Possible values: >= 2 characters and <= 2 characters

    Example: ["VN","US"]
    attributeBomIntegrationComponentAttributeValue[]nullable

    Optional. Component attribute tags. Each entry must be one of the integration enum values (aligned with common BOM form component_attribute choices).

    Possible values: [Organic, Recycled, Sustainable]

    Example: ["Organic","Recycled"]
    supplier objectnullable
    oneOf
    namestringrequired

    Name of the supplier

    Possible values: <= 255 characters

    customIdstringnullable

    Custom ID of the supplier

    addressstringnullable

    Address of the supplier

    citystringnullable

    City of the supplier

    stateProvincestringnullable

    State/Province of the supplier

    postalZipCodestringnullable

    Postal/Zip code of the supplier

    countrystringnullable

    Country of the supplier

    phonestringnullable

    Phone of the supplier

    contactNamestringnullable

    Contact name of the supplier

    contactEmailstringnullable

    Contact email of the supplier

    contactPhonestringnullable

    Contact phone of the supplier

    facilities object[]nullable

    Facilities of the component

  • Array [
  • oneOf
    namestringrequired

    Name of the facility

    capabilitiesstring[]nullable

    Capabilities of the facility

    customIdstringnullable

    Custom ID of the facility

    addressstringnullable

    Address of the facility

    citystringnullable

    City of the facility

    stateProvincestringnullable

    State/Province of the facility

    postalZipCodestringnullable

    Postal/Zip code of the facility

    countrystringnullable

    Country of the facility

    phonestringnullable

    Phone of the facility

    contactNamestringnullable

    Contact name of the facility

    contactEmailstringnullable

    Contact email of the facility

    contactPhonestringnullable

    Contact phone of the facility

  • ]
  • esgs object[]nullable

    ESGs of the component

  • Array [
  • groupstringnullable

    Group of the ESG

    standardstringrequired

    Standard of the ESG

    unitAmountnumbernullable

    Unit amount of the ESG

    amountUomstringnullable

    amount uom of the ESG

  • ]
  • bom
  • ]
  • Linked material component
    {
    "materialCustomId": "MAT-001",
    "supplierComponentId": "string",
    "unitYield": 0,
    "yieldUom": "string",
    "unitWeight": 0,
    "weightUom": "string",
    "unitCost": 0,
    "costCurrency": "string",
    "totalYield": 0,
    "totalWeight": 0,
    "attribute": [
    "Organic",
    "Recycled"
    ],
    "supplier": {
    "name": "string",
    "customId": "string",
    "address": "string",
    "city": "string",
    "stateProvince": "string",
    "postalZipCode": "string",
    "country": "string",
    "phone": "string",
    "contactName": "string",
    "contactEmail": "string",
    "contactPhone": "string"
    },
    "facilities": [
    {
    "name": "string",
    "capabilities": [
    "string"
    ],
    "customId": "string",
    "address": "string",
    "city": "string",
    "stateProvince": "string",
    "postalZipCode": "string",
    "country": "string",
    "phone": "string",
    "contactName": "string",
    "contactEmail": "string",
    "contactPhone": "string"
    },
    {
    "orgCustomId": "F031"
    }
    ],
    "esgs": [
    {
    "group": "string",
    "standard": "string",
    "unitAmount": 0,
    "amountUom": "string"
    }
    ],
    "bom": {
    "components": [
    {
    "customId": "string",
    "supplierComponentId": "string",
    "name": "string",
    "description": "string",
    "productType": "product",
    "group": "string",
    "unitYield": 0,
    "yieldUom": "string",
    "unitWeight": 0,
    "weightUom": "string",
    "unitCost": 0,
    "costCurrency": "string",
    "totalYield": 0,
    "totalWeight": 0,
    "countryOfOrigin": [
    "VN",
    "US"
    ],
    "attribute": [
    "Organic",
    "Recycled"
    ],
    "supplier": {
    "name": "string",
    "customId": "string",
    "address": "string",
    "city": "string",
    "stateProvince": "string",
    "postalZipCode": "string",
    "country": "string",
    "phone": "string",
    "contactName": "string",
    "contactEmail": "string",
    "contactPhone": "string"
    },
    "facilities": [
    {
    "name": "string",
    "capabilities": [
    "string"
    ],
    "customId": "string",
    "address": "string",
    "city": "string",
    "stateProvince": "string",
    "postalZipCode": "string",
    "country": "string",
    "phone": "string",
    "contactName": "string",
    "contactEmail": "string",
    "contactPhone": "string"
    },
    {
    "orgCustomId": "F031"
    }
    ],
    "esgs": [
    {
    "group": "string",
    "standard": "string",
    "unitAmount": 0,
    "amountUom": "string"
    }
    ]
    },
    null
    ]
    }
    }