Updating Co-produce Structure
You can update the structure of single or multiple Co-produce objects or their subtypes by specifying the Co-produce OIDs in the request body.
You can also choose to update the Co-produce structure in context of Change (Change Task or Change Notice).
You must have Modify access to the Co-produce and Change objects.
Example: Updating the Structure of Multiple Co-produce Objects
This example shows you how to update the structure of two Co-produce objects specified in the request body. The request returns the regenerated structure for each Co-produce object along with their attributes. Use the following POST URI with the request body.
URI
POST /Windchill/servlet/odata/BomTransformation/UpdateCoproduceStructure
Request Headers
Content-Type: application/json
CSRF_NONCE: <Use the value from Fetch NONCE example>
Request Body
{
"Coproduces": [
{
"ID": "OR:wt.part.WTPart:330805"
},
{
"ID": "OR:wt.part.WTPart:334365"
}
]
}
URI with Expand
POST /Windchill/servlet/odata/BomTransformation/UpdateCoproduceStructure?$expand=CoproduceUsageLinks,CoproduceMemberLinks
Example: Updating the Structure of a Co-produce Object for a Specific Navigation Criteria
This example shows you how to update the structure of a Co-produce object for a specific Navigation Criteria. Use the following POST URI with the request body.
URI
POST /Windchill/servlet/odata/BomTransformation/UpdateCoproduceStructure
Request Headers
Content-Type: application/json
CSRF_NONCE: <Use the value from Fetch NONCE example>
Request Body
{
"Coproduces": [
{
"ID": "OR:wt.part.WTPart:330805"
}
],
"navigationCriteriaId": "OR:wt.filter.NavigationCriteria:331152"
}
Example: Updating the Structure of a Co-produce Object with Inline Navigation Criteria
This example shows you how to update the structure of a Co-produce object with inline Navigation Criteria. Use the following POST URI with the request body.
URI
POST /Windchill/servlet/odata/BomTransformation/UpdateCoproduceStructureWithInlineNavCriteria
Request Headers
Content-Type: application/json
CSRF_NONCE: <Use the value from Fetch NONCE example>
Request Body
{
"Coproduces": [
{
"ID": "OR:wt.part.WTPart:330805"
}
],
"NavigationCriteria": {
"ApplicableType": "PTC.ProdMgmt.Part",
"ApplicationName": null,
"ApplyToTopLevelObject": false,
"Centricity": false,
"ConfigSpecs": [
{
"@odata.type": "#PTC.NavCriteria.WTPartStandardConfigSpec",
"WorkingIncluded": false,
"View": "Design",
"LifeCycleState": {
"Value": "INWORK",
"Display": "In Work"
},
"Variation1": null,
"Variation2": null
}
],
"CreatedOn": "2022-03-17T14:52:35+01:00",
"Filters": [],
"HideUnresolvedDependents": false,
"Name": "inWork",
"SharedToAll": true,
"UseDefaultForUnresolved": false
}
}
* 
The applied Navigation Criteria is used for resolving and merging the Primary Part and Secondary Part structures to generate the Co-produce object structure.
Example: Updating the Structure of a Co-produce Object in Context of Change
This example shows you how to update the structure of a Co-produce object in context of a Change object specified in the request body. Use the following POST URI with the request body.
URI
POST /Windchill/servlet/odata/BomTransformation/UpdateCoproduceStructure
Request Headers
Content-Type: application/json
CSRF_NONCE: <Use the value from Fetch NONCE example>
Request Body
{
"Coproduces": [
{
"ID": "OR:wt.part.WTPart:330805",
"ResultedByObjects@odata.bind": [
"ChangeItems('VR:wt.change2.WTChangeActivity2:330972')"
]
}
]
}
The request adds the updated Co-produce object as a Resultant object to the specified Change object.