Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Anonymous
Not applicable

DescribeMObject SOAP API does NOT return "MarketoGUID"

As per the announcement Important Change to Activity Records in Marketo APIs​, while trying with SOAP API v3.1, found that the describeMObject SOAP API​ for "ActivityRecord" object, does NOT return the newly added "marketoGUID" field.

Request detail:

Endpoint: https://sampleURL.mktoapi.com/soap/mktows/3_1

Request:

<x:Envelope xmlns:x="http://schemas.xmlsoap.org/soap/envelope/" xmlns:mkt="http://www.marketo.com/mktows/">

    <x:Header>

        <mkt:AuthenticationHeader>

            <mktowsUserId xmlns="">sampleURL_user</mktowsUserId>

            <requestSignature xmlns="">sampleURL_signature</requestSignature>

            <requestTimestamp xmlns="">2017-05-08T16:05:09+05:30</requestTimestamp>

        </mkt:AuthenticationHeader>

    </x:Header>

    <x:Body>

        <mkt:paramsDescribeMObject>

            <mkt:objectName>ActivityRecord</mkt:objectName>

        </mkt:paramsDescribeMObject>

    </x:Body>

</x:Envelope>

The fields returned are as following:

id, activityDateTime, activityType, mktgAssetName, activityAttributes, campaign, personName, mktPersonId, foreignSysId, orgName, foreignSysOrgId.

It does NOT have marketoGUID field.

Do I need to configure/enable it from client (my) side?

Or does Marketo API needs to fix this, and send the "marketoGUID" column in response?

Kenny Elkington​, Dan Stevens​, Steven Vanderberg​, kindly look into the question.

Edit:

Justin Cooperman​, Sanford Whiteman​, Grégoire Michel,

Would someone look into the issue?

Edit 2:

It's strange that in response of getLeadChanges API, it does return marketoGUID data, but in describe call, as mentioned above, it does NOT list marketoGUID column.

9 REPLIES 9
SanfordWhiteman
Level 10 - Community Moderator

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Thanks for the update, Anil. Is REST against that same instance currently returning the marketoGUID?  It would be strange -- seemingly impossible -- for the same instance to have been upgraded for REST but not for SOAP.

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Sanford Whiteman​,

Yes, for the same instance, REST APIs and SOAP APIs return marketoGUID data values.

But, in SOAP API, the describe call does NOT return "marketoGUID" column. Looks like Marketo needs to fix DescribeMObject SOAP API for ActivityRecord object.

Grégoire_Miche2
Level 10

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Are you sure the change in Marketo API has been rolled out and especially rolled out to your instance?

Indeed, you may want to check with support.

-Greg

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Thanks Grégoire Michel,​​ will follow up with support.

Kenny Elkington​,

I think, Marketo needs to fix DescribeMObject SOAP API along with the other changes for "marketoGUID".

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Kenny Elkington​, Dan Stevens​, Steven Vanderberg​,

Why the marketoGUID field should be included in the response of DescribeMObject SOAP API?

= Short answer =

1. "id" is present in the response of describeMObject SOAP API made for "ActivityRecord" object, and since "marketoGUID" is replacement for "id" field, "marketoGUID" needs to be included in the response.

2. The announcement (http://developers.marketo.com/blog/important-change-activity-records-marketo-apis/) mentions "The affected SOAP types are ActivityRecord and LeadChangeRecord." So the data for ActivityRecord has changed. The metadata call / describeMObject SOAP API needs to return the updated list of fields accordingly.

= Detail =

== With SOAP endpoint 2.9 ==

1. When describeMObject SOAP API is made for "ActivityRecord" object, it returns the following fields:

id, activityDateTime, activityType, mktgAssetName, activityAttributes, campaign, personName, mktPersonId, foreignSysId, orgName, foreignSysOrgId

Notice that it has "id" included. Actual snippet from response:

<field>

  <name>id</name>

  <dataType>integer</dataType>

  :

  :

</field>

2. When getLeadChanges SOAP API is called for data, it returns the data for the fields mentioned above in the following format:

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

  <id>11111</id>

  <activityDateTime>2013-06-12T05:50:00-05:00</activityDateTime>

  <activityType>Visit Webpage</activityType>

  <mktgAssetName>sameple-name</mktgAssetName>

  <activityAttributes>

    <attribute>

      <attrName>Program Type</attrName>

      <attrType xsi:nil="true"/>

      <attrValue/>

    </attribute>

    <attribute>

      <attrName>Program Name</attrName>

      <attrType xsi:nil="true"/>

      <attrValue>sample-program-name</attrValue>

    </attribute>

    :

    :

  </activityAttributes>

  <mktPersonId>22222</mktPersonId>

</xml-fragment>

3. Data and meta-data are always related. If there is some other purpose of describeMObject API, let us know why it has been made for.

== With SOAP endpoint 3.1 ==

With Marketo SOAP WSDL 3.1, the getLeadChanges SOAP API returns correct data as follows:

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

  <id>11111</id>

  <marketoGUID>11111</marketoGUID>

  <activityDateTime>2013-06-12T05:50:00-05:00</activityDateTime>

  <activityType>Visit Webpage</activityType>

  <mktgAssetName>sample-name</mktgAssetName>

  <activityAttributes>

    <attribute>

      <attrName>Program Type</attrName>

      <attrType xsi:nil="true"/>

      <attrValue/>

    </attribute>

    <attribute>

      <attrName>Program Name</attrName>

      <attrType xsi:nil="true"/>

      <attrValue>sample-program-name</attrValue>

    </attribute>

    :

    :

  </activityAttributes>

  <mktPersonId>22222</mktPersonId>

</xml-fragment>

Notice the "marketoGUID" in the response. But, describeMObject SOAP API still returns the same fields:

id, activityDateTime, activityType, mktgAssetName, activityAttributes, campaign, personName, mktPersonId, foreignSysId, orgName, foreignSysOrgId

= Summary =

Data and metadata go hand in hand. Here, data and meta-data seem to have diverged.

Kenny_Elkington
Marketo Employee

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

It looks like this got missed as part of the code changes to roll out the field.  We'll work on getting this fixed.

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Thanks for the update, Kenny Elkington​.

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Kenny Elkington​,

Any estimated timeline for the fix will be helpful to us.

Kindly keep us updated with the progress (if any).

Anonymous
Not applicable

Re: DescribeMObject SOAP API does NOT return "MarketoGUID"

Kenny Elkington​ ping.