php - 无法获取 MailChimp API listUpdateMember 以更改用户的电子邮件地址

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

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

我正在使用 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 用法的明确示例。

最佳答案

原来答案很简单。

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”,因为它更能描述正在发生的事情)。

关于php - 无法获取 MailChimp API listUpdateMember 以更改用户的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17317478/

相关文章:

php - 从 php 到 javascript 传递顺序安全的值

php - Laravel 中的 3 种关系

javascript - 如何从 DB(mysql) 加载数据到 google maps API(laravel)

ajax - MailChimp ajax 帖子返回 "Recipient has too many recent sign up requests"

mailchimp - 通过 API 获取 Mailchimp 列表的 URL

javascript - 使用javascript从其他php文件获取数据

php - 我的概念是否遵循微服务架构?

php - 将任何 GET 请求重定向到单个 php 脚本

javascript - Laravel 5.5 Axios POST 导致 419 错误

mailchimp - 我在哪里可以找到 Mailchimp 中自动化的工作流程 ID?