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

MailJet .NET API 创建营销活动时JSON输入无效错误求助

解决MailJet .NET API创建Campaign时的JSON格式错误

你碰到的这个400错误很明确是JSON格式不合法导致的,从错误信息里的"ctsList":"|ContactLis..."能直接看出来,问题大概率出在ContactsList字段的赋值上——这个字段的格式完全不符合MailJet API的要求。

我给你整理了具体的排查和修复步骤:

  • 先明确ContactsList的正确格式:MailJet要求这个字段是一个包含联系人列表ID的对象数组,绝对不能传类似"|ContactLis..."这种不规范的字符串,必须用符合JSON规范的数组结构。
  • 修正你的代码:把ContactsList字段改成正确的构造方式,下面是补全后的示例代码:
var client = new MailjetClient(MjApikeyPublic, MjApikeyPrivate){ Version = ApiVersion.V3 };

// 正确构造联系人列表参数:用JArray包装包含ID的JObject
var targetContactLists = new JArray();
targetContactLists.Add(new JObject { {"ID", 123456} }); // 替换成你实际的联系人列表ID

MailjetRequest request = new MailjetRequest{ 
    Resource = Campaigndraft.Resource,
}
// 绑定正确格式的ContactsList
.Property(Campaigndraft.ContactsList, targetContactLists)
// 别忘了补充其他必填字段,比如活动名称、发件人信息等
.Property(Campaigndraft.CampaignName, "我的测试营销活动")
.Property(Campaigndraft.SenderEmail, "your-sender@domain.com")
.Property(Campaigndraft.SenderName, "你的发件人名称");

// 发送请求(同步场景可改用Post方法,异步场景用await PostAsync)
MailjetResponse response = await client.PostAsync(request);
  • 额外排查小技巧:
    • 对照MailJet的CampaignDraft文档,确保所有必填字段都正确赋值,没有遗漏
    • 调试时可以查看SDK生成的最终JSON payload,确认格式是否合法——比如用Fiddler抓包,或者开启SDK的日志功能
    • 检查其他字段的类型是否匹配要求,比如ID必须是整数,不能传字符串

这样调整后,应该就能解决这个JSON格式错误了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:50:47