Подписка пользователей с группами через MailChimp 2.0 API

Я работаю над этой проблемой в течение нескольких часов и не могу найти решение, надеюсь, кто-то может помочь!

Я пытаюсь создать простую форму подписки MailChimp на сайте HTTPS и, следовательно, должен использовать API. Я использую PHP-оболочку «super simple mailchimp-api», которую они предлагают, и пытаюсь добавить своих подписчиков в группы интересов на основе флажков, выбранных в форме. Все соответствующие флажки называются «группа []», поэтому PHP будет отправлять их как массив.

Я передаю в оболочку следующее:

$MailChimp = new MailChimp('api_key_removed');
$result = $MailChimp->call('lists/subscribe', array(
                'id'                => 'list_ID_removed',
                'email'             => array( 'email' => $_POST['email'] ),
                'merge_vars'        => array( 'FNAME' => $_POST['fname'], 'LNAME' => $_POST['lname'], 'COMPANY' => $_POST['company'], 'STATE' => $_POST['state'], 
                                    'GROUPINGS' => array(
                                        array( 
                                            'ID' => 14093, 
                                            'GROUPS' => $_POST['group']
                                        ) 
                                    )
                ),
                'double_optin'      => false,
                'update_existing'   => true,
                'replace_interests' => false,
                'send_welcome'      => true
            ));

Когда я тестирую, пользователи создаются правильно, но группы интересов не выбираются. Я дважды проверил правильность идентификатора группы и имен групп. Я даже пытался жестко закодировать массив для ГРУПП, но безрезультатно.

Примеры аргументов merge_vars $args, переданных в API:

[merge_vars] => Array
    (
        [FNAME] => Test
        [LNAME] => Test
        [COMPANY] => 
        [STATE] => TAS
        [GROUPINGS] => Array
            (
                [0] => Array
                    (
                        [ID] => 14093
                        [GROUPS] => Array
                            (
                                [0] => Invest
                                [1] => Deposit Bonds
                            )

                    )

            )

    )

Насколько я понимаю, это совершенно правильно, поэтому я просто не понимаю, в чем проблема. Может ли кто-нибудь увидеть, что я делаю неправильно? Или API сломан?

Спасибо

Джош


person Josh    schedule 28.11.2013    source источник
comment
OMG, через 5 часов я только что обнаружил проблему! Для тех, кто еще озадачен этим - ключи (не значения), группы, идентификаторы и группы должны быть в нижнем регистре. Я действительно не понимаю, почему, когда все остальные поля везде задокументированы как заглавные и действительно работают, когда они заглавные. Я предполагаю, что это какая-то жестокая шутка, которую они любят играть с разработчиками.   -  person Josh    schedule 28.11.2013
comment
В старых версиях API они были в верхнем регистре. Они изменили его в 2.0.   -  person Daniel Rikowski    schedule 17.03.2014
comment
@Josh - Вы можете ответить на вопрос содержанием своего комментария. В противном случае это будет отображаться как вопрос без ответа.   -  person JonathanBristow    schedule 18.02.2015


Ответы (1)


Я пришел к этому «безответному» вопросу с нулевым ответом, но обнаружил, что на самом деле на него уже был дан ответ в комментариях к вопросу. Я копирую комментарии, чтобы отразить, что вопрос уже получил ответ.


OMG, через 5 часов я только что обнаружил проблему! Для тех, кто еще озадачен этим - ключи (не значения) «группы», «идентификатор» и «группы» должны быть в нижнем регистре. Я действительно не понимаю, почему, когда все остальные поля везде задокументированы как заглавные и действительно работают, когда они заглавные. Я предполагаю, что это какая-то жестокая шутка, которую они любят играть с разработчиками. — Джош


В старых версиях API они были в верхнем регистре. Они изменили его в 2.0. — Даниэль Риковски

person jimp    schedule 18.03.2015