Is there a way to find out a contact's new email address by using the contact's old email address in Constant Contact? We are in the process of syncing up our contact lists in our database with our contact lists in Constant Contact. So far, the API has been very helpful in doing this. However, there is one outstanding issue that I haven't been able to find a solutions for so far.
Our form allows users to update their email addresses and we use the API accordingly to update Constant Contact and our database with the change so that the data remains in sync, but if the contact updates their email address through the Constant Contact Update Email Address form we have no way of telling our database about the change and therefore our database lists no longer match our Constant Contact lists.
For example, if we have a contact with the email address firstname.lastname@example.org and then they use the Constant Contact Update Email Address form and change it to email@example.com, our database list still has the old email address firstname.lastname@example.org and doesn't have an entry for email@example.com. So, I need to know if there is a way to use the Constant Contact API to get a list of contacts that have updated their email address and then be able to use the information that it returns in order to match up the old email and replace it in our database with the new one from Constant Contact.
Thanks in advance,
Our system does not really have a way to automatically find out the history of someones changed email addresses. However, there is a way to do what you are looking to accomplish.
When someone is signed up to our site, they are given a unique identifier in our system called the Contact ID. This contact ID does not change when someone changes their email address, and remains the same forever, unless they were to sign up again under a different address.
When you do a GET call to our Contact Collection API, the XML that is passed has this contact ID listed for each contact, and that is the best way to keep track of a contact throughout changes to their email address. I would suggest having it as a field in your database, so that if someone does change their email, you will know because there will be a different email address to an ID that you already have listed.
If you have any further questions about this please let me know!
Thank you for your quick response! While that could be a solution from this day forward, it doesn't really help me find out which contacts have already done this. I have quite a few emails in our Constant Contact list that don't exist in our database. What do you suggest I do for these contacts?
Also, while keeping track of the Constant Contact id seems like a viable solution, without having a list of contacts that have recently updated their email address, my script would have to pull down the entire list of Active Contacts everyday and loop through them checking for new emails on each one. I currently have about 64,000+ Active Contacts in the lists that I am interested in, so it would take over 24 hours to do this update and furthermore, it needs to run everyday so it would essentially be running all of the time. Is this my only option?
At this time there is really no way to see if a contact has changed their email address in the past if it has already not been tracked. There is a way to see if the contact has been updated, using our API feature to Search for Contacts last updated date.
With such a large list, it may be helpful to do a weekly call to the Search Contact updated date URI, which you can request to pass all of the contacts in a specific time period. It will then list the contacts that have changed, which should prevent you from having to do the calls for your entire database.
Thank you. I have tried pulling the list of the updated contacts by a specific date, but wasn't sure if this included contacts that had updated their email since it doesn't really give any indication of what was updated. I suppose this will work for now. Thank you for all of your help!