As you already know (right?) Marketo-hosted Landing Pages can be accessed with or without a trailing .html in the path part of the URL.[1]So these URLs are aliases for the same content:https://pages.example.com/myoffer?utm_medium=...
To newbie developers (and to non-developers) there are 2 ways to sort text: “alphabetically ascending” or “alphabetically descending.” That’s it.By “alphabetically,” those folks mean case-insensitive sort order, where uppercase/lo...
When an HTML document requests additional HTML content over Ajax (XMLHttpRequest), the browser doesn’t run the code inside <script> tags in the response.[1]This is so even when the response is an otherwise-living HTML document.[2]...
Some small signals from end users — stressing some — can be disproportionately meaningful.[1] One such signal: that they started to fill out a form, so you can compare/intersect with people who eventually submitted the form.The de...
While you should be loading embedded forms from your Marketo LP domain, it turns out just changing the URL is not enough.Using a non-Marketo-owned domain to load forms2.min.js and call loadForm() seems to avoid collateral damage f...
New developers (and non-developers) often mistake values that might be converted to, converted from, or treated sort of like Booleans for a language’s actual Boolean type. This leads to internal contradictions like: I have a Bo...
Community user JW asked a surprisingly unprecedented (AFAIK) question:I am looking to send out a communication to our customers that includes that persons Policy Number. Unfortunately our legal department will not let us send the ...
For arithmetic in Velocity, the only safe approach is the so-called “tools-ish” one: use MathTool methods like $math.add, $math.sub, and $math.mul.The ruleAside from the one exception later in this post, you should not use the Jav...
The removal of Reflection-based features from Marketo’s Velocity environment in June 2019 was a disappointment — however inevitable — to those of us who push email scripting to the limit. Requirements like encoding, hashing, encr...
Velocity does something magical when you just output a Lead field (without any other code at all). The magic: it truly outputs the value as stored in Marketo. A {{lead.token}} doesn’t do that by default. Community user AB wondere...
Smile 1_24.png
I obsess over questions like “What is a webhook?” like philosophers contemplate “What is consciousness?” (Or like others wonder “Are we merely 3-dimensional cartoons watched by N-dimensional beings?”)It’s a different kind of searc...
pastedImage_2.png
I recently received a request from a customer who was trying to update a person's email address via the API. He was trying to use the Create and Update Lead API, and because the lead had a new email address, he was getting a dupli...
Many of our customers have complex business requirements that require more than what the baseline Marketo data model can support. That's why we have Custom Objects in Marketo. Custom Objects allow the customer to support more adva...
pastedImage_15.png
Despite instructing a Community member to “search my posts” the other day, I ran a search myself and there wasn’t a one-stop explanation of what Do Not Track (DNT) means in Marketo (on a deeper technical level than you get on the ...
pastedImage_12.png
Update 2019-11-07: This tip must be paired with the HTML and JS hints in this newer post to fully avoid accidental blocking by Tracking Protection.Buried in a bunch of my Nation responses is this ginormously important guideline: w...
5c886b174c52a500bf5f9c28_fields_in_url_url.png
A clear symptom of broken custom JS is when you see form fields, in URL-encoded format, in the location bar after clicking Submit:You should get to know the cause on sight: an uncaught error has been thrown in a custom Forms API o...
Printing fallback content when a Lead field is blank is a basic Velocity task. You can do it in a few lines of clunky code... but that's a few lines too many! Seeking a one-liner, you might reach for Velocity's built-in $display....
pastedImage_12.png
Hadn't even heard of Appointlet until the other day, but when user SS mentioned he was trying to use the REST API to integrate an Appointlet widget with Marketo, I knew there had to be a better way. (There's almost always a more r...
To switch up the Nancy Sinatra song, Booleans keep truthin’, when they ought to be falsin’. As explored in earlier​ blog​ posts​, when Marketo exposes Boolean fields in Velocity — fields on the Lead/Person object, not on other ob...
ss
Custom Forms 2.0 JavaScript behaviors are best managed via an external JS file and <script src="/yourfile.js"> tag in the LP. This allows your code to be updated without touching any other part of the page or form, sharing behavio...
For any Velocity project, I've taken to offering clients a separate config token, call it {{my.ThisIsWhereYouChangeStuff}}, where they can manage some output settings without having to email me all the time. Then there are one o...
The Forms 2.0 Email type — just like a standard HTML <input type="email"> — won't throw an error on email addresses like:sandy@gmailjeff@amazonalejandra@zzThat is, domains with only a single DNS label to the right of the @ sign (@...
ss
When choosing a Thank You/Follow Up URL, Form Editor presents 3 largely self-explanatory options:Choosing Landing Page will give you a nice dropdown of all your approved Marketo LPs.Choosing External URL and entering the full URL ...
Boolean type fields enjoy a strange place in Marketo's Velocity implementation.On the Marketo UI side and via most Marketo APIs, Booleans hold consistent true/false values (presumably using SQL bit type fields under the hood).But ...
Velocity is the only language where Brevity for Brevity's Sake is OK. In other languages, reducing total lines of code (LOC) with show-offy shortcuts just means your code will make no sense (to you or anyone else) after a few mon...
ss
Y'all have seen this type of double-confirmation popup, I'm sure:It's helpful if you want to give end users a little additional nudge, for example to use their legal name, a working email address, and so on — stuff that you can't ...
With an assist from Velocity, your emails can have time-responsive content. (And I don't just mean Happy ${day_of_week}, ${first_name}!)When the same email is resent with different primary content (e.g. a weekly newsletter), Veloc...
Twilio offers a pretty awesome Lookup API to enrich phone numbers with metadata: it can distinguish mobile and landline numbers (Sales will thank you!), determine carrier (which has demographic significance, like it or not), and e...
ss
It's easier to customize a Marketo form if it's completely destyled to start. A float or margin-left that doesn't seem to respond to !important can drive a designer crazy, and time spent on CSS specificity & cascade behavior isn'...
Newbie Q: “Where do I click to see X?” Oldie A: “You don't.”— the least happy type of Community threadNew users may search in vain for a log of all Filled Out Form events plus their point-in-time form data. (That is, even if field...