I'm trying to find an elegant way to have a smart campaign be triggered off the activity that someone fills out a form, but only if it's a pre-existing lead. I'm setting up campaigns triggered when a new person fills out a form (using the Person is Created trigger with the Form Name constraint), and I'd like an equivalent program for people filling in a form who already exist in Marketo.
What's the neatest way of achieving this?
Could you use the 'Form Filled Out' trigger with a filter of 'Created At' to identify leads which already exist? The 'Created At' filter/constraint could have a timeframe which makes sense for your use case.
Chris's suggestion is good, but I worry about the imprecision (Marketo doesn't have the time granularity that would be necessary to distinguish between a Created At that's 30s ago and one that's 15s ago).
So I would go right to the source. Create a hidden random field on the form like LastFormSubmissionID. When you see a Data Value Change on that field, that means, without exception, that the form has been submitted again (since the first time it won't be a change).
This may not work at all, but just a quick thought. Could you not do a fills our form trigger with the specific form identified and then do a "not person was created" with a constraint of "form name: is not empty"? I attached a screen shot as well for visual reference. Again this may not help, but just tossing it out there.
But that won't account for people created by Form A who later fill out Form A. Nice thought, though.