Hi, I am trying to integrate Marketo with our application for Leads management. I am setting the ForeignSysPersonId to the lead Id from our application when creating/updating the leads in Marketo. The problem I am facing is that I can only synchronize using one system. When I used my dev system to synchronize everything was fine. But on a fresh test system, I faced issues where leads from the test system where getting synchronized to unrelated leads in Marketo. I found out that this was because of the ForeignSysPersonId that was set from the dev system. I tried setting the ForeignSysPersonId to empty string. For this, I read all the leads from Marketo, and wrote them back but set the ForeignSysPersonId to empty string. But this has not helped. It seems that Marketo did not reset the ForeignSysPersonId. Is there a way to reset the ForeignSysPersonId?
When updating an existing lead, the lead can be identified one of the follow:
- Marketo ID
- Foreign system ID
- Marketo Cookie
If any of these attributes are set as a part of the input parameter and if there is a matching lead in Marketo with these values, the existing lead record will be updated instead of created. Passing the Marketo cookie id as an input parameter helps in associating the new lead with existing anonymous activity records.
Except for Email, all of these identifiers are treated as unique keys. The Marketo Id takes precedence over all other keys. If both ForeignSysPersonId and the Marketo Id are present in the lead record, then the Marketo Id will take precedence and the ForeignSysPersonId will be updated for that lead. If the only ForeignSysPersonId is given, then it will be used as a unique identifier.