微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mailchimp使用php和drupal 8将标签添加到列表中的现有成员

如何解决Mailchimp使用php和drupal 8将标签添加到列表中的现有成员

我想在将成员添加到Drupal 8中的mailchimp列表中的成员后添加标签。我使用PHP

基于我在以下位置找到的信息: https://mailchimp.com/developer/guides/organize-contacts-with-tags/#label-a-contact-with-a-tag

以下代码有效:

$response_tags = $mailchimp->lists->getListMemberTags($list_id,$subscriber_hash);
\Drupal::logger('mailchimp_get_tags')->notice('<pre><code>' . print_r($response_tags,TRUE) . '</code></pre>');


stdClass Object
(
    [tags] => Array
        (
            [0] => stdClass Object
                (
                    [id] => ****
                    [name] => 1_year
                    [date_added] => 2020-09-30T14:09:29+00:00
                )

        )

    [total_items] => 1
)

但是下面的代码给出了400错误的请求错误...

$mailchimp->lists->updateListMemberTags($list_id,$subscriber_hash,[
   "tags" => [
     "name" => "my_new_tag","status" => "active"
   ]
]);

错误

GuzzleHttp \ Exception \ ClientException:客户端错误POST https://***.api.mailchimp.com/3.0/lists/***/members/***/tags导致400 Bad Request响应:{“ type”:“ http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/”,“ title”:“无效的资源”,“ stat(已截断...),位于GuzzleHttp \ Exception \ RequestException :: create()(/ home / d8 / drupal-project / vendor / guzzlehttp / guzzle / src / Exception / RequestException.PHP的第113行)。

=> https://mailchimp.com/developer/guides/marketing-api-conventions/#error-glossary

list_id 是正确的, hash 是正确的,但是向mailchimp列表中的现有成员添加标签无效。

解决方法

文档不是很清楚。 “名称”和“状态”必须是一个数组。 这是有道理的...但是没有充分记录。

$mailchimp->lists->updateListMemberTags($list_id,$subscriber_hash,[
   "tags" => [
     ["name" => "my_new_tag","status" => "active"]
   ]
]);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。