Here are the significant changes and/or defect corrections that were made available in the 1/17/2012 Constant Contact API release:
OAuth grant access page has typographical error
OAuth grant access page spells "persistent" as "perisistent". We corrected this typo.
OAuth 2 flows must not set session cookie
In our OAuth 2 implementation, a successful authentication was setting an SSO cookie in the browser. This was subjecting any web-based integration applications to a session timeout. We changed the behaviour so that the SSO cookie is no longer set.
OAuth flows should allow a user to login to a given application from multiple devices.
Previously when a user initiated an OAuth flow, any existing tokens (for both OAuth 1 and 2) were invalidated and new ones generated and returned to the calling application. This made it impossible for a user to run the same app on two devices. This behaviour was changed to return the same tokens for any subsequent logins.
Getting 500 error when tring to retrieve tracking data for a non existent campaign
Previously when attempting to GET the tracking data from the campaigns collection, API users would receive a 500 error. This has been changed to return a 400 error.
API: 500 error when creating campaign
Creating a campaign would return a 500 error when the values in the <IncludeForwardEmail> or <IncludeSubscribeLink> tags were in lower case. We changed this behaviour so that the values could be in mixed case, as in YES, yes, Yes, etc.
Updating Contacts incorrectly returns 400 error when domain name contains case mismatch
When updating a Contact via the API, a 400 error was returned when the case of the email address domain does not match the case stored for this contact in the user's account, even if the email address is still the same. We changed this behaviour to ignore the case of the domain portion of the email address when updating a contact.
Create Campaign - Lower Case value is not accepted for the EmailContentFormat attribute
Previously when creating an Email campaign via the APIs, the EmailContentFormat value would only accept a lower case value. Any other case would generate a '400 - Bad Request' error. This was corrected so that the value is now case insensitive.