Windchill REST Services > Windchill REST Services Domain Capabilities > PTC Domains > PTC BOM Transformation Domain > Actions Available in the BOM Transformation Domain for Creating or Updating Downstream BOMs > NewDownstreamBranch
  
NewDownstreamBranch
The NewDownstreamBranch action creates a new downstream branch iteration for the specified upstream part to create an equivalent downstream assembly. You can specify a single or multiple upstream parts to create a new downstream branch for each part using inline or specific upstream and downstream navigation criteria.
You can also create the new downstream branch iteration in the context of change (change task or change notice).
The attributes in the request payload of the NewDownstreamBranch action are described in the following table:
Request Attribute
Description
Required
SourcePart
Attribute in the TransformationDefinitions collection to specify the OID of the upstream part for which you want to create a new branch.
Yes
ReviseExistingDownstream
Flag in the TransformationDefinitions collection to specify whether the existing downstream objects should be revised or not during the transformation.
Optional
TransformationOption
Attribute in the TransformationDefinitions collection to specify the child structure option as Do not duplicate, Duplicate with propagating, or Duplicate without propagating for the transformation.
Yes
ExistingDownstreamAssociations
Array type of attribute in the TransformationDefinitions collection to specify the OID of the equivalent link between a specified upstream part and its existing downstream equivalent object.
Optional
View
Attribute in the TransformationEntity entity type to specify the downstream view to be used in the transformation.
Yes
BOMType
Attribute in the TransformationEntity entity type to specify the type of downstream BOM being used.
Optional
AlternateBOM
Attribute in the TransformationEntity entity type to specify an alternate BOM for the transformation.
Optional
Context
Attribute in the TransformationEntity entity type to specify the context in which you want to create the downstream object.
* 
When not specified, the new downstream part is created in one of the following contexts:
Default context. This context is the same as that of the specified upstream part.
The context set in the Associativity > Downstream Creation > Context preference in Windchill.
Optional
Folder
Attribute in the TransformationEntity entity type to specify the location at which you want to create the downstream object.
* 
When not specified, the new downstream part is created at one of the following locations:
Default location. This location is the same as that of the specified upstream part.
The location set in the Associativity > Downstream Creation > Location preference in Windchill.
Optional
DownstreamNavigationCriteria
Inline or specific navigation criteria applied in the downstream.
* 
PTC recommends that you specify the navigation criteria when you perform this action.
If not specified, the System Default filter is applied.
Optional
UpstreamNavigationCriteria
Inline or specific navigation criteria applied in the upstream.
* 
PTC recommends that you specify the navigation criteria when you perform this action.
If not specified, the System Default filter is applied.
Optional
ChangeOid
Attribute to specify the change task or change notice.
Optional
The request creates an equivalence link between the new downstream branch iteration and the specified upstream part and returns information about the equivalence link.
If child parts exist for a specified upstream part, the request also returns information about the equivalence link for each child part, according to the specified child structure option.
POST Windchill/servlet/odata/BomTransformation/NewDownstreamBranch
For example, the response to the request URI is as follows:
{
"@odata.context": "$metadata#ExistingDownstreamAssociations",
"value": [
{
"ID": "OR:wt.associativity.EquivalenceLink:213440",
"UpstreamPartId": "OR:wt.part.WTPart:213274",
"DownstreamPartId": "OR:wt.part.WTPart:213408",
"EquivalenceLinkId": "OR:wt.associativity.EquivalenceLink:213440",
"IsEquivalenceLinkOutdated": false
},
{
"ID": "OR:wt.associativity.EquivalenceLink:213450",
"UpstreamPartId": "OR:wt.part.WTPart:213845",
"DownstreamPartId": "OR:wt.part.WTPart:213407",
"EquivalenceLinkId": "OR:wt.associativity.EquivalenceLink:213450",
"IsEquivalenceLinkOutdated": false
}
],
"@PTC.AppliedContainerContext.LocalTimeZone": "Europe/Warsaw"
}
The attributes in the response for the NewDownstreamBranch action are described in the following table:
Response Attribute
Description
ID
Attribute in a collection that returns the ID of the equivalence link between the upstream part specified in the request and the newly created downstream equivalent part.
UpstreamPartId
Attribute in a collection that returns the ID of the upstream part specified in the request for which a new downstream branch is created.
* 
When child parts exist for the specified upstream part, the attribute also returns the ID of each upstream child part for which a new downstream equivalent part is created.
DownstreamPartId
Attribute in a collection that returns the ID of the newly created downstream equivalent part.
EquivalenceLinkId
Attribute in a collection that returns the ID of the equivalence link between the upstream part and the newly created downstream equivalent part.
IsEquivalenceLinkOutdated
Attribute in a collection that indicates whether the equivalence link between the upstream part specified in the request and the newly created downstream equivalent part is outdated or not.