【问题标题】:Mailchimp - how can I tell if a user has unsubscribed themselves?Mailchimp - 我如何判断用户是否取消订阅?
【发布时间】:2017-08-16 20:25:21
【问题描述】:

所以他们点击了时事通讯中的取消订阅链接。在他们的个人资料中,例如:

此人于 2017 年 3 月 24 日下午 2:40 退订

收到“Newsletter Test#6”后

很好,但是我如何通过 API 以编程方式判断某人是否取消了自己的订阅?甚至可能吗?我问的原因是因为您无法删除已取消订阅的人。如果您尝试,他们的数据将被清除,但电子邮件地址将保留在您的列表中。此外,如果您尝试通过单击取消订阅链接来订阅已取消订阅的某人,您将收到“john@example.com 由于取消订阅、退回或合规审查而处于合规状态并且无法订阅”。所以在这种情况下,我们应该检查他们是否自己取消订阅,如果是,我们可以将他们的状态设置为待处理,这将发送确认选择加入电子邮件。否则,我们可以通过 API 订阅它们,而无需将它们的状态设置为待处理并向他们发送电子邮件并要求他们单击电子邮件中的链接。

【问题讨论】:

    标签: mailchimp mailchimp-api-v3.0


    【解决方案1】:

    正如您所指出的,如果您尝试删除处于合规状态的某人,API 将拒绝您的请求,但遗憾的是不会返回任何有用的响应来表明这一点。另一方面,如果您尝试订阅处于合规状态的某人,您应该收到带有status400 的json 格式的响应以及相应的消息。就我而言,它看起来像这样:

    {
        "type":"http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/",
        "title":"Member In Compliance State",
        "status":400,
        "detail":"johndoe@example.com is in a compliance state due to unsubscribe, bounce, or compliance review and cannot be subscribed.",
        "instance":"1234567890abcdefg"
    }
    

    如果您只是解析该响应,您可以检查 status 的值,这可能比文本描述符更可靠且向前兼容 - 如果适用,您可以从那里将成员状态设置为 pending

    【讨论】:

    • 感谢您撰写答案。从编程的角度来看,我现在很后悔使用 mailchimp,而且他们似乎对让开发人员更轻松的事情没有兴趣。我们越能互相帮助越好。干杯。
    【解决方案2】:

    来自 Mailchimp 支持:

    当用户取消订阅时,您会看到参数 unsubscribe_reason,如果它是管理员取消订阅或通过 API 完成的取消订阅,它将显示“N/A(管理员取消订阅)”。但是,如果它是由用户完成的,如果他们没有留下原因,它通常会说“未指定”,或者它可能会显示用户取消订阅的原因。您可以在下面的链接中阅读有关 unsubscribe_reason 参数的更多信息。

    http://developer.mailchimp.com/documentation/mailchimp/reference/lists/members/

    【讨论】:

      猜你喜欢
      • 2019-10-10
      • 2017-06-28
      • 1970-01-01
      • 2017-08-11
      • 2016-03-20
      • 1970-01-01
      • 2018-12-18
      • 1970-01-01
      • 2016-10-04
      相关资源
      最近更新 更多