Last December we ran we're able to retrieve custom fields via API using PHP-SDK v1.0. We created the custom fields on the GUI and we they're labeled Gender, Birth Year, etc. And we were able to access them via API by using the name CustomField1 (mapped to Gender), CustomField2 (mapped to Birth Year). Everything worked well.
But just recently, on a new account, we created new custom fields using the same labels, Gender, Birth Year. But the same script that we used before is no longer working. And it seems that custom fields that do not use the names "Custom Field n" cannot be retrieved at all by the API. Why is this so?
I have personally been researching this issue yesterday and an issue has come up where the renaming of custom fields breaks the ability to have this mapping. Instead of being mapped to the renamed field, the system will currently create a new field called Custom Field N.
The details of what is happening have been written up in detail and we are currently working on organizing our priorities so that we can get this issue worked on and resolved. I do want to note that the issue will not break accounts whose custom fields are already set up, as long as those fields are not renamed.
If you have any questions for me, please reply to this post!
How is it going with the issue? I am currently about to develop a sync script, which depends on receiving these custom fields from the API.
While it is possible to sync Custom Fields with the API, it is still only possible to sync fields that are specifically named "Custom Field N" where N is a number from 1-15. There was previously a work-around where the fields could be created and later renamed, but that is unfortunately not possible currently.
If you have any questions about the above, please let me know and I will be happy to help!
Thank for your very quick response.
I hope it will be possible some day to use the API for at least as much as the GUI.
Thank you for your feedback on this! Our long-term vision for our API is to keep moving towards parity with the capabilities that are present in our UI. While full support for custom fields is high on the priority list for new feature to be supported in the API, I don't yet have the ability to give any kind of a time-frame for when it can be expected.
One way that you can make sure to stay on top of any news about new features in the API is to watch out Tech Blog and/or subscribe to our developer newsletter. You can do both of those things at http://techblog.constantcontact.com/.
If I could add my related request here, it would be tremendously helpful if third-party systems that connect through the CC API could add HIDDEN custom properties. It appears whatever custom_field_n property we add is visible and changeable by the user in the CC GUI. This poses a real problem for us trying to keep contacts between our system and CC's system in sync.
Thanks for the feedback on this! I've done some checking around and this isn't currently on the list of planned features and would be challenging to implement in the current V2 API. Having said that, this is something that we can consider when we're doing design work around custom fields for the next major version of the API.