Skip navigation
All Places > Products > Blog > Author: John M

Products

4 Posts authored by: John M Employee

Customers often ask about exporting Marketo Activity Data. This can be accomplished using the bulk activity API or the standard activity API.

 

Some things you might consider are...

  • Is this a one-time or a recurring activity export?
  • What activities do I need?

 

The bulk API is a good option when you want to get activities in a maximum 31-day timeframe. This is a great approach for a recurring extract with a start_date and an end_date. Once the file is ready for download, you'll be able to download a CSV of the data with the activity jSON parsed into columns. This approach has the following limitations

  • By default, Marketo instances are limited to 500mb of downloaded bulk data per day
    • This API limit can be increased. You should speak to your CSM if you're interested.
  • Bulk api downloads are limited to a window of 31 day timeframe

 

The activity API is the better option for a wider window of activities "all activities in the past 12 months" for example. Up to 300 activities are returned per call, returned as jSON, along with a "has more records" flag and if appropriate, a "nextPageToken" to pass into a subsequent call This approach has the standard per- call limitations of the standard REST API, as follows

  • By default, Marketo instances are limited to 50,000 calls per day.
    • This API limit can be increased. You should speak to your CSM if you're interested.
  • You may have up to 10 concurrent calls
  • You may execute up to 100 calls in a rolling 20 second window

 


Activity Types don't change for the great majority of Marketo instances (the exception might be extremely old Marketo instances). I've created a list of those types, here Activity Type Attributes - Common - Google Sheets which you're welcome to download and use.

 

Activity Type Attributes are also shown to illustrate the fact that different activity types have different attributes.

 

Marketo Professional Services is happy to do this with or for you you, and for details you should reach out to your PS Engagement Manager who can help scope the effort.

When you decide to secure your marketo landing pages using SSL, the final step will be Marketo consulting "cutting over" the server so that all of the landing pages redirect to their SSL versions.

 

When that happens you need to worry about mixed content.

 

What is that? Good question. Mixed content is non secure content (HTTP) served within a secure page (HTTPS), and it comes in two types, "active" and "passive". Passive mixed content such as the following will generall still render (depending on browser and version, but will result (again depending on the browser) in a warning]

 

  • <img> src attribute
  • <audio> src attribute
  • <video> src attribute
  • <object> where the object performs http requests

 

Active mixed content will generally cause a larger problem with the page, such as the visual aspects not rendering (CSS)

  • <script> src attribue
  • <iFrame> src attribute
  • All uses of CSS where the CSS is a url
  • <object> (data attribute)

 

All mixed content should be addressed, but only the active content will actually break the pages.

 

The official definition of mixed content as defined by the W3C is here -->  Mixed Content

It's true. Here at Marketo we use Slack, and our Slackbot HATES server side post.. so much so that when you mention it, it chastises you. It's really pretty amusing.

 

Slackbot.png

Fine! Jeez.

 

 

Really though, Slackbot is completely right. Server side post has effectively been replaced by the following REST endpoint, which is great and scalable.

 

http://developers.marketo.com/rest-api/lead-database/leads/#push_lead_to_marketo

 

This, along with my other most recent blog, provide a good blueprint for associating leads in a non marketo form with only one REST call. No fewer than 3 customers have had this very question for me this week alone, so it seems like a hot topic.

A common question we see in consulting relates to how a customer can use a non Marketo form, but still associate that lead with a known lead in Marketo. With Marketo forms, of course, it's simple, you jhust submit the form. With Non Marketo forms, its a bit tricker, but still possible.

 

One reason you might do this is because you're submitting a login form, and obviously that doesnt really make sense as a Marketo Form. Not to worry!

 

First, lets talk about some confusing names of important items related to the Marketo Munchkin Cookie and this process

Item
What is it?
_mrk_trkThe name of the hidden form field (more on that in a moment)
_mkto_trkThe name of the Marketo Munchkin Tracking Cookie. The cookie contains the Munchkin ID of the instance along with a unique identifier for this lead (known or anonymous.

 

The details on the tracking cooke are shown below. I use a plugin called "Awesome Cookie Manager" to view cookies. You can see yours by going to any site that leverages munchin

skitch.png

Tracking Cookie

 

skitch-1.png.jpeg

Marketo Munchkin Cookie Value

 

Armed with this knowledge, we can look at the solution here. the process is straightforward and we're helped by Munchkin. When you create a form field called "_mkt_trk" within a non marketo form on a page where Munchkin code is running, Munchkin knows enough to populate the value of that form with the Munchkin Cooke value.

skitch-2.png.jpeg

Cool right?

 

So, what does that mean? That means that in the following really simple non marketo form, youll not only receive the regular form fields.. youll also have the lead's cookie ID as well... and with THAT, you can use REST from your back end process to associate the lead.

 

That brings us to the second step which is associating the lead. for this youll need the marketo ID and the cookie ID. you've now got the cookie ID, and getting the Marketo ID is a simple matter of getting it from Marketo.

 

You'll need to call the following two REST endpoints.

 

first you'll use GetMultipleLeadsByFilterType, passing in the Email address to get the Marketo ID (http://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Leads/getLeadsByFilterUsin… )

then, you'll use AssociateLead (http://developers.marketo.com/rest-api/endpoint-reference/lead-database-endpoint-reference/#!/Leads/associateLeadUsingPO… ), passing in that ID, and the cookie Id.

 

Alternatively, you can use a amazing new REST endpoint which I describe here! Slackbot Hates Server Side Post

Filter Blog

By date: By tag: