To start, sorry if this information can easily be answered in the docs/forums - but I have thus far been unable to find the answer.
I initially made use of the API to add contacts through the BULK activities API after reading that the XML POST method was only to be used for adding less than 25 contacts at a time. After successfully implementing this method I also read that trouble could ensue from using the BULK activities API too often with less than 25 contacts at a time.
So now my current understanding is that I need to implement both methods, as users may be consistently adding contacts in numbers under and over 25.
If my understanding of all this so far is correct, my question is regarding the XML POST method for adding a contact. If I need to add 15 contacts, is the proper method to do this via 15 separate calls with the API, or is there a way to format the XML to add all 15 contacts with one request. If the latter is correct, could someone possibly provide an XML example similar to the one found on http://developer.constantcontact.com/doc/manageContacts#create_contact , but with multiple contacts at once?
The contacts collection is meant to be used for fewer than 25 contacts as you had suggested, and is designed to be used for sign up forms to handle single contact additions, and does not support adding more than 1 contact per request.
The bulk activity is meant for customers doing bulk jobs. Our recommended cut off is generally 25 or more addresses at the same time, though we can understand that if used in an integration that there can sometimes be cases where it will fall less than that due to user choices. It is against our Terms & Conditions to actively use this for single contact adds and can result in a temporary deactivation of your API key if implemented in such a fashion.
Thanks for the detailed anwser on this topic and so going down this line of questioning for our clients using our Sync App for NetSuite, SugarCRM or even Zoho CRM, who have large contact and customer sets.
Thoughts on the correct API method here?
My recommendation is to use the Bulk API to send the updates every 6 hours. Since you'll be syncing new contacts, updated contacts and the updates could range from 20-100s, this would be an ideal use of the Bulk API. The only time I'd recommend using our single Contact Add/Update features is if you give them any ability to do real time updating/adding when they're doing the data entry. If that's not an option, and I believe in the Zoho and NetSuite ones it isn't, then I'd ignore that API entirely for the sake of these integrations.