Adding and Updating Contact Addresses
The information in this topic is applicable when the Enable Shared Addresses check box in the company profit is deselected, that is, when addresses are not shared.
The contact object has three types of address:
Primary address
Alternate address
Simple address
If the contact is associated with an account, the account’s billing address becomes the contact’s primary address, that is, the account’s billing address fields populate the contact’s primary address fields. The primary address fields are read-only in the contact record. The primary address might also be called the account address.
The alternate address is simply the contact’s address. Alternate address fields at the parent level are editable and this address is added to address children with the Primary checkbox in the UI selected. The alternate address might also be called the contact address.
You can use either ContactInsert, ContactUpdate or ContactExecute calls to insert or update primary or alternate addresses for a contact. With ContactInsert or ContactUpdate calls, the contact parent node with primary and alternate address fields must be present, and there must not be any child node. If an address child is present, only a simple address can be added, and not primary and alternate addresses. If the address child or any other child node is not present, only primary and alternate addresses can be added, and not simple addresses.
With the ContactExecute call, both the contact parent node and address child node can be present along with primary and alternate address fields at the parent level.