I have been able to successfully add a contact. If I then go into my constant contact account, I can see the new contact. If I delete the contact from the list and then rerun my program to add the contact, it errors out with a 409 conflict:
Exception.message: The remote server returned an error: (409) Conflict.
Is this by design? Or is something else going on that I don't understand?
Yes, deleting a contact in Constant Contact is not quite deleting the contact from the system. If the contact opted out of receving emails, he will be moved to Do Not Mail list. If you simply removed the contact from all contact lists, then he will be moved to Removed list. So, in order to add the contact back into a list, you have to edit the contact information, instead of trying to add him as if he's a new contact. While you are editing, you will fill out the content of <ContactLists> element to specify which contact lists the contact should be re-subscribed to.