SOLVED

Lead creation via SOAP is buggy

Go to solution
Anonymous
Not applicable
After much investigation this afternoon, I'm convinced that the system has crucial bugs with regard to Leads created via SOAP.
 
When I create a Lead with the UI, I can do all of the following via SOAP:
  • getLead
  • syncLead to alter attributes, see changes in web UI
  • add the lead to an existing list

When I create a Lead with SOAP, I see different results:
  • can't see it in the web UI
  • getLead is ok
  • syncLead to alter attributes is ok
  • can't add the lead to an existing list (no reason given in response)

It seems that a SOAP-created Lead is only half-recognized by the system.  I can create it and modify it on the back-end, but the front-end is oblivious.
 
I'd assume anyone using SOAP will need to create Leads, so I think this is a significant bug.
Tags (1)
1 ACCEPTED SOLUTION
Anonymous
Not applicable
Got it.  Finally.  Thanks for the help, Kenny.

Here is the correct form of the request, with workspace.  (Note: from the WSDL, it appears that only syncLead supports the ContextHeader.)

 <?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.marketo.com/mktows/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.marketo.com/mktows/">

  <SOAP-ENV:Header>

    <ns1:AuthenticationHeader>

      <mktowsUserId>OMITTED</mktowsUserId>

      <requestSignature>OMITTED</requestSignature>

      <requestTimestamp>2014-07-17T17:01:53-05:00</requestTimestamp>

    </ns1:AuthenticationHeader>

    <ns1:MktowsContextHeader>

      <targetWorkspace>NAME OF MY WORKSPACE</targetWorkspace>

    </ns1:MktowsContextHeader>

  </SOAP-ENV:Header>

  <SOAP-ENV:Body>

    <tns:paramsSyncLead>

      <leadRecord>

        <Email>starlord@example.com</Email>

        <leadAttributeList>

          <attribute>

            <attrName>FirstName</attrName>

            <attrType>string</attrType>

            <attrValue>Peter</attrValue>

          </attribute>

          <attribute>

            <attrName>LastName</attrName>

            <attrType>string</attrType>

            <attrValue>Quill</attrValue>

          </attribute>

        </leadAttributeList>

      </leadRecord>

      <returnLead>true</returnLead>

    </tns:paramsSyncLead>

  </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

View solution in original post

12 REPLIES 12