The allid parameter is appended to follow-up URLs after a form is submitted, and it allows for the page to query the lead data and populate the tokens accordingly. The only scenario when we don't add this parameter, and therefore the page doesn't "wait" until it has the lead data, is if the follow-up page is not a marketo landing page.
To determine whether a follow-up page is a marketo landing page or not, we use the internal web_asset table, which holds entries for every web page known to marketo. There are two ways that web pages end up in this table:
1- A marketo landing page is created; the associated URL is created as a web_asset entry. For this particular example, the is_landing_page value is set to true, meaning it's a marketo landing page.
2- A non-marketo landing page has the Munchkin code in its source, the first time the page is loaded on a browser, the URL is created as a web_asset entry. For this scenario, the is_landing_page value is set to false.
So, when a form is submitted and we prepare to serve the follow-up page, we look into the web_asset table to determine whether the URL is a marketo landing page or an external. The way the code is written, when we find a matching URL, we stop looking and we serve the page.
In this case, when we look at the web_asset table, we can see that there are two entries with the same URL of Download-TY, as follows: web_asset Id = 15304 | is_landing_page = false | created_at = 2016-10-10 10:32:50 web_asset Id = 15496 | is_landing_page = true | created_at = 2016-10-10 19:26:13
The first entry, was created via the Munchkin code. In other words, there was a page in your domain with the URL of Download-TY, and because the Munchkin code was in its source code, it was added as a web_asset.
The second entry, was created when the landing page with Id was created, at the exact same time: Landing page = XYZ created_at = 2016-10-10 19:26:13
The flow then becomes the following: a- Form is submitted b- We look up the follow-up URL in the web_asset table c- We find the first one, because it was created first d- Because the matching URL is external, we do not append the allid parameter.
Finally, I cannot tell whether there was another landing page with the same URL before this one was created, but based on the data in this table, our conclusion is that the page was first known via Munchkin, and this caused the issue. This was probably done while testing the URL or something along those lines.
As far as why this was working before, we are unable to find any data that suggests that the same URL existed before and that it was working, but it could also be that it did exist but was renamed at some point, so what we see in the database is not an accurate representation of what the data looked like before the issue was reported. |