【问题标题】:Can't get MailChimp API listUpdateMember to change a user's email address无法获取 MailChimp API listUpdateMember 以更改用户的电子邮件地址
【发布时间】:2013-06-23 10:32:26
【问题描述】:

当会员在我们的网络应用程序中更改电子邮件时,我正在尝试使用 MailChimp API 更新他们的电子邮件地址。

我正在使用Laravel MailChimp bundle,它运行良好(我可以订阅用户、更新分组、更新名称等),但我必须有 merge_vars 或不正确的东西。

我用这个:

$member_details = array(
    // grabbed from config and working (also API key handled by bundle)
    'id' => $id,
    // passed from function - corresponds to the old email address
    'email_address' => $mailchimp_old_email,
    'merge_vars' => array(
        // Old email again?
        'EMAIL' => $mailchimp_old_email,     
        // new email address        
        'NEW-EMAIL' => $mailchimp_new_email, 
    ),
    'replace_interests' => FALSE,
);

$response = Mailchimp::listUpdateMember($member_details);

所以“$response = 1”,这让我觉得它已经奏效了,但是当我在 MailChimp 上查看订阅者列表时,用户电子邮件并没有改变。

1.3 API 文档有 listSubscribe 详细说明了 merge_vars “EMAIL”和“NEW-EMAIL”,我在 this stackoverflow post 上读到了它。即使它是现有成员,我也确实尝试再次使用 listSubscribe,但这失败了 $response 说该成员已经订阅。

关于我可能出错的地方有什么建议吗?我还没有找到这种 listUpdateMember api 用法的明确示例。

【问题讨论】:

  • 太棒了,这个问题刚刚为我赢得了“风滚草”徽章......

标签: php laravel mailchimp mailchimp-api-v3.0


【解决方案1】:

原来答案很简单。

https://twitter.com/MailChimp_API/status/351674145609748480

显然,在 merge_vars 中根本不需要 NEW-EMAIL - 只需 EMAIL。

所以我的工作代码是:

$member_details = array(
    // grabbed from config and working (also API key handled by bundle)
    'id' => $id,
    // passed from function - corresponds to the old email address
    'email_address' => $mailchimp_old_email,
    'merge_vars' => array(
        // new email address        
        'EMAIL' => $mailchimp_new_email,     
    ),
    'replace_interests' => FALSE,
);

$response = Mailchimp::listUpdateMember($member_details);

这很有效。感觉“NEW-EMAIL”确实没有必要(或者应该删除 EMAIL,只使用“NEW-EMAIL”,因为它更能描述正在发生的事情)。

【讨论】:

    【解决方案2】:

    如果您已更新为使用 MailChimp API v3,则有一种新方法可以做到这一点。

    /lists/members 端点上使用patchput 方法。

    email_address 是您推送的对象的“顶级”属性(与merge_fields 在同一级别,在 API 2 中称为 merge_vars)并表示新的电子邮件地址。

    MailChimp Documentation

    【讨论】:

      猜你喜欢
      • 2011-05-07
      • 1970-01-01
      • 2011-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多