Recently we saw a bunch of our DelayedJob tasks fail with
undefined method 'list_subscribe' for Hominid::API
which really made no sense, the whole purpose of Hominid and the Mailchimp API is to subscribe people to mailing lists. How could that method be missing?
Much digging and testing later, it turns out some of the data fields we
were sending as part of our merge vars contained encoded NULL
characters, aka \u0000 and \x00. Those were tripping up the
Mailchimp API which in my opinion is reporting back the wrong error code
to Hominid.
In our case these submissions all appeared to be as part of a scanner filling form submissions in automatically, basically spam.