通过 SOAP API Salesforce 合并帐户

Merging account via SOAP API Salesforce

无法理解我哪里出错了。我正在尝试使用 SOAP API 合并 Salesforce 中的两条记录。为此,我通过邮递员创建了以下 XML 请求:

<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Header>
    <SessionHeader xmlns="urn:enterprise.soap.sforce.com">
        <sessionId>id is present</sessionId>
    </SessionHeader>

</Header>
<Body>
    <merge xmlns="urn:enterprise.soap.sforce.com">

        <!-- Optional -->
        <request>
            <!-- Optional -->
            <additionalInformationMap>
                <name></name>
                <value></value>
            </additionalInformationMap>
            <masterRecord>

                <fieldsToNull xmlns="urn:sobject.enterprise.soap.sforce.com"></fieldsToNull>
                <Id xmlns="urn:sobject.enterprise.soap.sforce.com">0012100000XRg7e</Id>
            </masterRecord>
            <recordToMergeIds>0012100000X1Ibf</recordToMergeIds>
        </request>

    </merge>
</Body>

但是,我遇到 "sf:InvalidSObjectFault" 错误并且无法理解原因:

<?xml version="1.0" encoding="UTF-8"?>
  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sf="urn:fault.enterprise.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
    <soapenv:Fault>
        <faultcode>sf:INVALID_TYPE</faultcode>
        <faultstring>INVALID_TYPE: Must send a concrete entity type.</faultstring>
        <detail>
            <sf:InvalidSObjectFault xsi:type="sf:InvalidSObjectFault">
                <sf:exceptionCode>INVALID_TYPE</sf:exceptionCode>
                <sf:exceptionMessage>Must send a concrete entity type.</sf:exceptionMessage>
                <sf:row>-1</sf:row>
                <sf:column>-1</sf:column>
            </sf:InvalidSObjectFault>
        </detail>
    </soapenv:Fault>
</soapenv:Body>

您需要让它知道您的目标对象(又名类型或实体类型),记录 ID 是不够的。例如,如果您要合并 Account 对象上的记录,它可能如下所示:

<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sobject="urn:sobject.enterprise.soap.sforce.com">
<request>
   <masterRecord xsi:type="sobject:Account" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   ...
   </masterRecord>
</request>