You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Sendinblue API为双选入联系人设置分类类型属性?

如何在Sendinblue Double Opt-in (DOI) API中正确设置分类(Category)类型的联系人属性

问题背景

已能正常运行Sendinblue DOI创建联系人的示例代码,但设置GENDER这类带预定义值的分类类型属性时,多种写法均无法生效。

正确解决方案

对于DOI接口的attributes字段,分类类型属性直接使用预定义的标签值(字符串形式)传入即可,但需满足两个前提:

  1. 你的Sendinblue账户中已创建GENDER分类属性,且预定义标签包含male/female/diverse;
  2. 传入的字符串必须与后台预定义标签完全一致(大小写敏感)。

修正后的完整代码示例:

const SibApiV3Sdk = require('sib-api-v3-sdk');
let defaultClient = SibApiV3Sdk.ApiClient.instance;

let apiKey = defaultClient.authentications['api-key'];
apiKey.apiKey = 'YOUR API KEY';

let apiInstance = new SibApiV3Sdk.ContactsApi();

let createDoiContact = new SibApiV3Sdk.CreateDoiContact();

createDoiContact.email = "example@example.com";
// 正确设置分类类型属性
createDoiContact.attributes = {"FNAME":"John","LNAME":"Doe", "GENDER": "male"};
createDoiContact.includeListIds = [2];
createDoiContact.templateId = 1;
createDoiContact.redirectionUrl = "https://yourdomain.com/redirect";

apiInstance.createDoiContact(createDoiContact).then(function() {
  console.log('API called successfully.');
}, function(error) {
  // 打印完整错误信息用于排查
  console.error('Error details:', error.response.data);
});

常见失败原因说明

  1. 数组格式不适用:[{"label": "male", value: 1}]是更新联系人接口的格式,DOI创建接口不支持;
  2. 嵌套对象格式错误:{"category": "male"}不符合DOI接口的扁平键值对要求;
  3. 标签不匹配:传入的字符串与后台预定义标签不一致(如大小写错误);
  4. 属性未配置:账户中未创建对应分类属性,或属性类型不是「分类」。

排查步骤

  1. 登录Sendinblue后台,进入「联系人 > 属性」,确认目标分类属性存在、类型正确且包含目标标签;
  2. 调用API时打印完整错误响应(error.response.data),根据提示定位具体问题。

内容的提问来源于stack exchange,提问作者user7996789

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 11:05:21