Waiting for engine...
Skip to main content

Component Diff object

You can use the Component Diff object to programmatically compare two different versions of Boomi Integration components, such as processes and maps. A comparative diff can provide:

  • Insights for auditing and change management,
  • Better understanding of changes across component versions, and
  • Component version insights into external DevOps processes.

Structure

<ComponentDiffRequest componentId="" sourceVersion="" targetVersion="">
<!--Optional configuration settings-->
<CompDiffConfig componentType="">
<CompDiffElement name="" parent="">
<CompDiffAttribute name="" ignored="" idpart=""/>
</CompDiffElement>
</CompDiffConfig>
</ComponentDiffRequest>
FieldTypeDescription
componentId stringRequired. The ID of the component for which you want to compare versions. 
sourceVersion int Required. The source version of the component. 
targetVersionintRequired. The target version which you want to compare to the source version.

You can include an optional configuration section to qualify the type of information that you want to see in the comparative diff:

FieldTypeDescription
CompDiffConfig componentTypestringThe type of component that you want to compare.
CompDiffElement namestringThe tag name of the element that you want to target for the comparative diff results.
CompDiffElement parentstringThe parent element for the element that you want to configure for the comparative diff results.
CompDiffAttribute namestringThe name of the attribute for the element that you want to configure for the comparative diff results.
CompDiffAttribute ignoredbooleanWhether the element described in the CompDiffElement section is excluded from the comparative diff results.
CompDiffAttribute idpartbooleanWhether the attribute is part of an identifying key for the element.

Supported operations

GETQUERYCREATEUPDATEEXECUTEDELETE
Supported Not supported Not supported Not supported Not supported Not supported 

Using the GET operation

  • If you use Postman to make API calls, the GET response contains a diff visualization option to help understand the differences between component versions. For more information, refer to the Postman article Visualize request responses using Postman Visualizer.

    note

    The Postman visualization feature currently supports only JSON responses.

SOAP implementation

  • GET operation

    Request:

    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:api="http://api.platform.boomi.com/">
    <soapenv:Header>
    <wsse:Security
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsse:Username></wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText"></wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    <api:create>
    <object xsi:type="api:ComponentDiffRequest" componentId="b208c228-7c5b-475c-84e8-3868c6563b2d" sourceVersion="6" targetVersion="7" xmlns:bns="http://api.platform.boomi.com/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    </object>
    </api:create>
    </soapenv:Body>
    </soapenv:Envelope>

    Response:

    <?xml version='1.0' encoding='UTF-8'?>
    <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
    <bns:createResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bns="http://api.platform.boomi.com/">
    <result xsi:type="bns:ComponentDiffResponse" message="Diffed Versions 6 and 7 of Component: Validate TPgroup (Type = tpgroup, ID = b208c228-7c5b-475c-84e8-3868c6563b2d)">
    <bns:GenericDiff>
    <bns:modification total="2">
    <bns:change type="attribute" changedParticleName="processId">
    <bns:newValue xpath="/Component[1]/object[1]/TradingPartnerGroup[1]/TradingPartnerRouting[1]/TradingPartnerRouteEntry[1]/@processId">7d1dc7a1-d7f0-471d-8042-e7a211bf551c</bns:newValue>
    <bns:oldValue xpath="/Component[1]/object[1]/TradingPartnerGroup[1]/TradingPartnerRouting[1]/TradingPartnerRouteEntry[1]/@processId">f2306e24-1133-4d78-ac05-877f1e943a27</bns:oldValue>
    </bns:change>
    <bns:change type="attribute" changedParticleName="processName">
    <bns:newValue xpath="/Component[1]/object[1]/TradingPartnerGroup[1]/TradingPartnerRouting[1]/TradingPartnerRouteEntry[1]/@processName">_LogData 2</bns:newValue>
    <bns:oldValue xpath="/Component[1]/object[1]/TradingPartnerGroup[1]/TradingPartnerRouting[1]/TradingPartnerRouteEntry[1]/@processName">_DataTransformation 2</bns:oldValue>
    </bns:change>
    </bns:modification>
    </bns:GenericDiff>
    </result>
    </bns:createResponse>
    </S:Body>
    </S:Envelope>
On this Page