Lead creation via SOAP is buggy | Community
Skip to main content
July 15, 2014
Solved

Lead creation via SOAP is buggy

  • July 15, 2014
  • 12 replies
  • 2798 views
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.
This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by
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>

12 replies

July 17, 2014
Kenny, I don't think my privileges are enough to see my workspace.  See screenshot.  As you can see, my Nav tree is pretty empty.
i.imgur.com/Xm7R3L4.png

I should have checked the WSDL.  Sorry, I'm a bit of a SOAP noob.  Thanks for your help.
Accepted solution
July 17, 2014
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>