Skip to main content

Updating Custom Materials

The MSI API provides functionality to update custom materials via the API. Note it is not currently possible to update custom trims or packaging via that API. The API returns the material Higg ID and impacts in the response. See MSI Data Dictionary for details about the parameters. The API uses the custom material id to identify the material to update. The user can then optionally send the following information to update the material. Only the parameters sent via the update are updated. The user can update:
• material name
• material code
• custom material category
• base material, % composition for blends, and raw material process stage
• yield
Note that updating any of base material, % composition for blends, raw material process stage and yield completely overwrites the previously entered base materials. For example, if the original material was 80% organic cotton/20% polyester, then sending 100% cotton fiber will change the material to 100% cotton fiber.
{
    "name": "Test blend",
    "code": "xyz PLM code",
    "baseMaterials":[{
        "baseMaterialId": "FM002",
        "processId": "PR0804000648",
        "blendPercentage": 60
    }, {
        "baseMaterialId": "FM005",
        "blendPercentage": 40
    }],
    "yieldInfo": [
        {
            "type": "Yards (volumetric)",
            "width": 1,
            "widthUnit": "m",
            "thickness": 2,
            "thicknessUnit": "in",
            "densityVolumetric": 13,
            "densityVolumetricUnit": "kg/m3"
        }
    ],
    "category": "TX"
}

Finding materials modified by user

A common use case is to search for materials that have been manually updated by a user in MSI, in order to pull the updated material impacts into the PLM. Users can search for “PlatformModifiedBy”: “User” to find materials updated by users directly in MSI. The “lastEditedAfter”: 0 and “lastEditedBefore”: 0 search parameters can be used to set the date period to search for edits.
{
    "platformModifiedBy": "User",
    "lastEditedAfter": "2021-01-13T16:38:19.386Z",
    "lastEditedBefore": "2021-12-13T20:38:19.386Z"
}