Hello everyone,
We’re having an issue with our links, where Marketo is adding to our URLs and sending users to a 404 page. The links which are breaking are pulling in a custom token based on the individual user, while our other links are working fine. We’ve also disabled link tracking.
Here’s what the link should look like:
www.lucidchart.com/users/acceptFreeMonthInvitation?token={{lead.Invitation URL}}
Here’s the link when sending a sample or live email:
http://www2.golucid.co/index.php/email/%E2%80%9Chttp://www.lucidchart.com/users/acceptFreeMonthInvitation?token=MTllOWU5YTI4NmY1NzFhMzJiNzY2MzEzNmVj...
The broken links lands to a 404 page. Removing the text highlighted in red directs to the correct url. These links are used in our critical transactional emails and we’re seeing a lot of errors for our users. Is this a known bug and is there a known fix? Has anyone else encountered this?
Solved! Go to Solution.
Here's the solution I found after much digging. These emails are built using Marketo templates, and Marketo was adding curly quotes which were visible in the code, but weren't visible in the GUI.
So the link in the raw Marketo code should have looked like this: href="${ctaLink}"
But because of an apparent bug in Marketo the link looked like this: href="“${ctaLink}""
Any link which had the additional quotation marks was broken, but once those were removed the links work perfectly.
So is the {{lead.Invitation URL}} an entire, unescaped URL including protocol, pathname, etc.? Or just a single (already URL-encoded) alphanumeric string?
What is the raw value (on its own) of a sample Invitation URL?
Sanford, thanks for always be quick to jump on these posts!
The {{lead.Invitation URL}} token is an alphanumeric string which is already URL-encoded. By itself, the URL is www.lucidchart.com/users/acceptFreeMonthInvitation?token=, but the URL lands to an error page without the token.
The token string is this: MTllOWU5YTI4NmY1NzFhMzJiNzY2MzEzNmVjYjYwODY1YmRiZDE2Mi1lbWFpbD1yb2JlcnQlNDBh%0D%0A454m5hY3VzLmNvbSZm...
OK, let me do some tests and get back in a few minutes. I was hoping that you merely needed to URL-encode the token.
OK, initial test worked fine for me.
To make sure we're on the same page, this is how I built my link:
And the {{lead.Department}} stores your string that starts with MTllOWU5YTI4NmY1NzFhMzJiNzY2MzEzNm...
(And the link is correctly rewritten to bounce off the branding server, so your token query param and Marketo's _mkt_tok query param are not in any kind of conflict.)
Your link is built the same as mine, so that looks good to me.
And let's look a little closer at this:
That %E2%80%9C is URL-encoded form of Unicode Code Point 8220 / 0x201c, or the left double quotation mark (i.e. curly left double quote). That's not the same as the left double quote that's allowed in HTML. Did you possibly introduce this invalid character into the HTML, thinking it's the same as the standard dq (ASCII 34 / 0x22)?
Paul J have you looked for this curly quote yet?
I have, it should not be in the link at all. I'm jumping on a call with Marketo Support shortly, and I'll update here once I've spoken with them. Thanks for your help!