【问题标题】:"Please enter a complete address" error when adding/updating subscriber's address添加/更新订阅者地址时出现“请输入完整地址”错误
【发布时间】:2017-01-26 21:29:15
【问题描述】:

我正在使用 MailChimp 的 API v3.0,但在尝试更新订阅者的邮寄地址时遇到问题。

我发送的数据是:

[method] => patch
[path] => lists/123456789/members/membershash
[url] => https://us13.api.mailchimp.com/3.0/lists/123456789/members/membershash
[body] => {"merge_fields":{"FNAME":"firstname","LNAME":"lastname","TITLE":"Mr","BDAY":"10\/11","TSTATUS":"approved","ADDRESS":{"addr1":"10811 International Drive","city":"Rancho Cordova","state":"CA","zipcode":"95670"}}}
[timeout] => 10
[headers] => PATCH /3.0/lists/123456789/members/membershash HTTP/1.0

我得到的错误是:

400: Your merge fields were invalid. Please enter a complete address.

我尝试将其作为字符串发送(字段由双空格分隔,如导入文件架构中所述),即

10811 International Drive  Rancho Cordova  CA  95670

但我遇到了同样的错误。我做错了什么?

【问题讨论】:

  • 这里有同样的问题。使用与 API v2.0 相同的格式。您找到解决方案了吗?
  • 不,我最终有多个国家、城市等地址字段。我仍然不知道正确的格式是什么。 ://

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


【解决方案1】:

以防万一您仍在寻找...我正在使用 Drewm 包装器并使用以下内容更新邮寄地址:

$subscriber_hash = $MailChimp->subscriberHash($email);
$result = $MailChimp->patch("lists/$list_id/members/$subscriber_hash", [
            'merge_fields' => [
            'FNAME'     =>  $firstname, 
            'LNAME'     =>  $lastname, 
            'ADDRESS'   => array
                (
                    'addr1'   => $addline1,
                    'addr2'   => $addline2,
                    'city'    => $city,
                    'state'   => $state,
                    'zip'     => $zip,
                    'country' => $country
                )
            ],
            'interests'    => [$interest_id => true],
        ]);
print_r($result);   

【讨论】:

    【解决方案2】:

    如果您不发送country 的值,则会发生“输入完整地址”错误。

    addr2country 都是可选的,但 MailChimp 暗中要求您为 country 发送一个空字符串,而您可以完全省略 addr2

    MailChimp 支持告诉我:

    你说得对,Address 对象唯一需要的参数 是 addr1、city、state 和 zip。话虽如此,为了与 应用程序的性能,“国家”参数将需要 存在并被赋予一个空字符串值。空字符串将 解析为 default_country。如果不改变,那就是美国。

    我了解这与 文档。我会将这些反馈传递给我们的团队 监督我们的架构,因为这会造成混乱。

    【讨论】:

      【解决方案3】:

      如果您有外国地址怎么办?将填写国家/地区,但其中许多没有州和邮政编码的值。

      【讨论】:

        猜你喜欢
        • 2013-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-21
        • 2017-05-21
        • 2018-06-27
        • 2021-01-18
        • 1970-01-01
        相关资源
        最近更新 更多