SendGrid 忽略 JSON 请求中的 subscription_tracking 设置

问题描述

我正在使用 PHP 向 SendGrid API 发出 JSON 请求,以发送带有自定义数据的动态模板。在这种情况下,它会在用户首次注册网站时发送给用户。由于它是事务性的,因此不应有退订选项。

但是,我将 subscription_tracking 设置为 enable: false 并且 SendGrid 完全忽略了这一点并且无论如何都包含链接。老实说,如果它只有“管理首选项”就好了,因为我可以从该页面隐藏特定组。我已经搜索了文档,但似乎找不到关于新动态模板的太多内容

这是我的代码和 JSON 请求:

$sg = new \SendGrid('my key');

$request_body = json_decode('{
  "asm": {
    "group_id": 12345,"groups_to_display": [
      12346,12347
    ]
  },"from": {
    "email": "[email protected]","name": "sender name"
  },"personalizations": [
    {
      "to": [
        {
          "email": "[email protected]","name": "User Name"
        }
      ],"dynamic_template_data":
        {
            "first_name": "first name","code": "generated code"
        }
    }
  ],"template_id": "template id","tracking_settings": {
    "subscription_tracking": {
      "enable": false
    }
  }
}');

try {
    $response = $sg->client->mail()->send()->post($request_body);
    print $response->statusCode() . "\n";
    print_r($response->headers());
    print $response->body() . "\n";
} catch (Exception $e) {
    echo 'Caught exception: ',$e->getMessage(),"\n";
}

为任何帮助干杯。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)