【问题标题】:Multiple categories at once from Sendgrid API request returns status 400 error来自 Sendgrid API 请求的多个类别一次返回状态 400 错误
【发布时间】:2021-09-10 20:17:02
【问题描述】:

我正在尝试从 Sendgrid API 一次接收多个类别的电子邮件统计信息。我已经安装了 @sendgrid/client 并且我正在使用这种和平的代码:

const client = require('@sendgrid/client')
 client.setDefaultRequest('qsStringifyOptions', {arrayFormat: 'repeat'});
 client.setApiKey(process.env.SENDGRID_API_KEY)

 const request = {}
 const queryParams = {
  'aggregated_by': 'day',
  'categories': ['cat1', 'cat2'],
  'start_date': '2021-08-01',
  'end_date': '2021-09-01',
  'limit': 5,
  'offset': 1
 };
 request.qs = queryParams;
 request.method = 'GET';
 request.url = '/v3/categories/stats';
 client
  .request(request)
  .then(([response, body]) => {
    console.log(response.statusCode);
    console.log(response.body);
}).catch(function (error) {
    console.log(error)
  })

取自https://github.com/sendgrid/sendgrid-nodejs/blob/main/packages/client/USAGE.md#get-categoriesstats。 当我执行它时,我收到错误代码 400 和“body: { errors: [Array] }”。当我用 'categories': cat1' 替换 'categories': ['cat1', 'cat2'] 时,它可以工作。它返回代码 200 和包含统计信息的有效对象。我错过了什么?这是某种语法错误吗?我对 API 没有太多经验。

感谢您的所有帮助。

【问题讨论】:

    标签: javascript node.js categories sendgrid-api-v3


    【解决方案1】:

    在与 Sendgrid 支持的几次聊天会话之后,最终情况如何。通过使用以下代码

       const client = require('@sendgrid/client')
    client.setApiKey(process.env.SENDGRID_API_KEY)
    client.setDefaultRequest('qsStringifyOptions', {arrayFormat: 'repeat'});
    
    const request = {}
    const queryParams = {
      'aggregated_by': 'day',
      'categories': 'dallas',
      'start_date': '2021-08-31',
      'end_date': '2021-09-01',
      'limit': 1,
      'offset': 1
    };
    request.method = 'GET';
    request.url = '/v3/categories/stats?start_date=2021-09-01&categories=cat1&categories=cat2&limit=99&aggregated_by=week';
    client
      .request(request)
      .then(([response]) => {
        console.log(response.statusCode);
        console.log(response.body);
        
        }).catch(function (error) {
        console.error(error)
      })

    我可以检索 cat1 和 cat2 的统计信息,但如果您要查找同时包含 cat1 和 cat2 类别的广告系列,则无法使用 API 进行此操作。 假设您有多个人在多个市场工作,并且您正在寻找特定市场上特定人员的统计信息,最好的解决方案是创建电子邮件爆炸以添加多个类别:1)salesperson_name 2)market 3)market&salesperson_name,然后为market&salesperson_name 类别。

    【讨论】:

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