Relative Marketo newbie here. We are trying to run a Nurture with new and existing leads being fed into Marketo via a custom form from a website. We are working with an outside vendor on the site and the form. The problem that we've noticed in testing is that existing Marketo leads are not being appended with the custom URL passed via the form and thus are not being added to the nurture/entering the flow. However, everything is working fine for new leads (who were not in Marketo prior to filling out the form). Thanks for any suggestions.
Much more info is needed. How's the "custom form" integrating with Marketo? (It should be using a hidden Forms API post -- anything else is too fragile.) "Not being appended with the custom URL"... this doesn't have a self-explanatory meaning in Marketo.
Please take the time to set out the requirements in detail. and how you believe the vendor has attempted to meet them.
Existing leads are not being updated. We have added a field for each lead called trainingplanURL and are pulling this into the nurture emails via a token. That is being done correctly. Any new leads entered into Marketo via the API are getting that custom URL (training plan URL) added to their record. However, existing leads are not getting that added.
The vendor has looked through the API documentation and cannot find anything to solve this type of issue.
Here is some additional information from our vendor:
The form is adding leads via the REST API, using the /rest/v1/leads/push.json endpoint to add the lead, and the /rest/v1/lists/{listId}/leads.json endpoint to add the lead to a list.
Existing leads are not being updated. We have added a field for each lead called trainingplanURL and are pulling this into the nurture emails via a token. That is being done correctly. Any new leads entered into Marketo via the API are getting that custom URL (training plan URL) added to their record.
OK. I wouldn't use the term "added" for this... the field exists on new and existing records no matter what. What you probably mean is "populated with a non-blank value," which may seem overly picky but since your vendor doesn't understand the API it's important to be precise.
The /push.json endpoint allows fields to be updated on existing leads: that's one of its core functions. As long as they are locating the correct lead (by email address, presumably) then there's nothing special they need to do.
The vendor has looked through the API documentation and cannot find anything to solve this type of issue.
Make sure the trainingplanURL field does not have updates blocked, in case it has a default non-empty value.
Their architecture is not very professional (I assume they're paying zero attention to your API limits). The Forms API is the correct way to do this, but I'll let them figure that out as soon as they learn about defensive coding.