Mailchimp date validate problem - ISO8601 rejected

I am trying to use Mailchimp.com's API 3.0 to add people from a PHP web server, but my datetime values for "timestamp_signup"and "timestamp_opt" are being rejected on insert subscriber.

According to this page : https://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/ the format of timestamp_signup and timestamp_opt is ISO 8601 format and both are writeable.

But all the versions I have tried have been rejected: "2018-10-19T13:50:37+01:00"
"2018-10-19T13:50:37" "2018-10-19T13:50" "2018-10-19"

Many thanks Ian What is the correct format?


Solution 1:

Great find Ian, that seems to be a new issue within the MailChimp API that occurred first with us around a week ago, but it seems to also not happen always.

I contacted the MailChimp Support and they confirmed it seems to be a problem on their end and that they will look into it.

For now I can confirm that your workaround (YYYY-MM-DD HH:MM:SS) works fine but it is not what the MailChimp API states and should definitely be fixed by them.

Solution 2:

The format to use is YYYY-MM-DD HH:MM:SS

Not ISO 8601 which is YYYY-MM-DDTHH:MM:SS+HH:MM

Mailchimp.com's software generated correct ISO8601 dates when it sends datetimes back. However it requires the "T" to be a space, and will reject a date that includes the timezone (the +HH:MM on the end).

This is contrary to my reading of the standard.