Skip to main content
POST
/
update
/
{product_id}
cURL
curl --request POST \
  --url https://api-v2.production.higg.org/pm-api/v1/product/update/{product_id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-developer-request-token: <api-key>' \
  --data '
{
  "name": "<string>",
  "modelNumber": "<string>",
  "baseMaterials": [
    {
      "_id": "<string>",
      "amount": 123,
      "measureUnit": "kilograms",
      "partName": "<string>"
    }
  ],
  "customMaterials": [
    {
      "_id": "<string>",
      "amount": 123,
      "measureUnit": "kilograms",
      "partName": "<string>"
    }
  ],
  "packageMaterials": [
    {
      "_id": "<string>",
      "amount": 123,
      "partName": "<string>"
    }
  ],
  "trimMaterials": [
    {
      "_id": "<string>",
      "amount": 123,
      "partName": "<string>"
    }
  ],
  "certifications": [
    "<string>"
  ],
  "barcodes": [
    "<string>"
  ]
}
'
{
  "scores": {},
  "billOfMaterialScores": {},
  "certifications": [
    {
      "_id": "<string>",
      "assertionAuthorityName": "<string>",
      "assertionStandardName": "<string>",
      "certificateName": "<string>",
      "assertionId": "<string>",
      "assertionStandardId": "<string>",
      "dateExpires": 123,
      "proofBody": "<string>",
      "dateIssued": 123,
      "certificationFiles": [
        "<string>"
      ]
    }
  ],
  "productNetWeight": 123,
  "bomNetWeight": 123,
  "scoresTotalAltProductCare": {},
  "logisticsImpacts": {},
  "packagingImpacts": {},
  "productCareImpacts": {},
  "endOfUseImpacts": {},
  "retailImpacts": {},
  "dosImpacts": {},
  "totalPerUseImpacts": {},
  "materials": [
    {
      "scores": {},
      "baseScores": {}
    }
  ]
}

Updating Products

The PM API provides functionality to update products via the API. See PM Data Dictionary for details about the parameters. The API uses the product id to identify the product to update. The user can then optionally send the following information to update the product. Only the parameters sent via the update are updated. Note that the product type and category are not editable via the API or manually in the Product Module tool. The user can update: • Product name • Product style/model number • Bill of Materials—note that updating bill of materials completely overwrites all previously entered bill of materials information.
Update
{
  "name": "test BoM 201",
  "productType": "Apparel",
  "productCategory": "Dress",
  "modelNumber": "test5"
  "packageMaterials":[{
    "_id": "samplepackage:PK012",
    "part name":"xyz package",
    "amount": 1,
    "measureUnit": "units"
  }],
  "trimMaterials":[{
    "_id": "sampletrim:TR001",
    "amount": 1,
    "measureUnit": "units"
  }],
  "baseMaterials":[{
    "_id": "TX0001",
    "amount": 1,
    "measureUnit": "kilograms"
  }],
  "customMaterials":[{
    "_id": "material:d68657bf-5c3e-472d-a4da-10c8d8e3614b",
    "amount": 1,
    "measureUnit": "kilograms"
  }]
}

Finding products update by user

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

Authorizations

x-api-key
string
header
required
x-developer-request-token
string
header
required

Path Parameters

product_id
string
required

Body

application/json
name
string | null
modelNumber
string | null
baseMaterials
object[] | null
customMaterials
object[] | null
packageMaterials
object[] | null
trimMaterials
object[] | null
certifications
string[] | null
barcodes
string[] | null

Response

200 - application/json

Ok

scores
object
required
billOfMaterialScores
object
required
certifications
object[] | null
productNetWeight
number<double> | null
bomNetWeight
number<double> | null
scoresTotalAltProductCare
object
logisticsImpacts
object
packagingImpacts
object
productCareImpacts
object
endOfUseImpacts
object
retailImpacts
object
dosImpacts
object
totalPerUseImpacts
object
materials
object[] | null