错误代码
Marketo REST API在HTTP、响应或记录级别返回错误。 本页说明每种错误类型并列出相关的错误代码。
处理和记录异常
当集成遇到意外异常时,记录请求和响应。 某些异常(如过期的身份验证)可以通过重新身份验证来处理。 其他例外情况可能需要支持部门的帮助,他们将请求相关的请求和响应详细信息。
错误类型
Marketo REST API在正常操作期间可能会返回三种类型的错误:
- HTTP级别:由
4xx代码指示。 - 响应级别:包含在JSON响应的“错误”数组中。
- 记录级别:包含在JSON响应的“result”数组中,并由“status”字段和“reasons”数组为每个记录指示。
响应级别和记录级别错误返回HTTP状态代码200。 对于所有错误类型,请勿评估HTTP原因短语,因为它是可选的且可能会发生更改。
HTTP级别错误
在正常操作期间,Marketo返回两个HTTP状态代码错误: 413 Request Entity Too Large和414 Request URI Too Long。 要从任一错误中恢复,请修改请求并重试。 您可以在提交之前通过检查请求大小来避免这些错误。
当请求有效负载超过1MB时,Marketo会返回413,如果导入商机超过10MB,则会返回413。 在提交之前检查请求大小。 如果记录导致请求超出限制,请将这些记录移动到另一个请求。
当GET请求的URI超过8KB时,Marketo返回414。 在提交之前检查查询字符串长度。 如果超过限制,请将请求方法更改为POST,将查询字符串放入请求正文中,然后添加_method=GET参数。 长URI在检索具有较长过滤值(如GUID)的大型记录批次时最常见。
Identity终结点可能返回401 Unauthorized错误,通常是因为客户端ID或客户端密钥无效。 下表列出了HTTP级别的错误代码。
响应级别错误
当响应将success参数设置为false时,会发生响应级别错误。 它们使用以下结构:
{
"requestId": "e42b#14272d07d78",
"success": false,
"errors": [
{
"code": "601",
"message": "Unauthorized"
}
]
}
“errors”数组中的每个对象都包含两个成员:
code:引号为601到799的整数。message:错误的纯文本原因。
6xx代码指示整个请求失败且未执行。 例如,通过重新身份验证并使用请求传递新访问令牌,从601“访问令牌无效”错误中恢复。
7xx代码指示请求失败,因为未返回数据或请求参数无效。 原因包括日期无效或缺少所需的参数。
响应级错误代码
调用无法完成,因为它违反了创建或更新资产的要求,例如,尝试在没有模板的情况下创建电子邮件。尝试以下操作时也可能出现此错误:
- 检索包含社交内容的登陆页面的内容。
- 克隆包含特定资产类型的程序(有关详细信息,请参阅程序克隆)。
- 批准没有草稿(即已批准)的资产。
记录级别 record_level_errors
记录级别的错误表示请求有效,但单个记录的操作无法完成。 具有记录级错误的响应遵循以下模式:
响应
{
"requestId":"e42b#14272d07d78",
"success":true,
"result":[
{
"id":50,
"status":"created"
},
{
"id":51,
"status":"created"
},
{
"status":"skipped",
"reasons":[
{
"code":"1005",
"message":"Lead already exists"
}
]
}
]
}
结果数组中的记录与请求输入数组中的记录显示顺序相同。 每个记录都可以独立成功或失败,如其状态字段所示。
对于失败的记录,“状态”字段为“已跳过”,记录中包含“原因”数组。 每个原因都包含一个“代码”成员和一个“消息”成员。 代码始终为1xxx,该消息说明了跳过记录的原因。
例如,如果“同步销售线索”请求将“action”设置为“createOnly”,并且其中一个已提交的键已存在销售线索,则响应将返回代码1005,并返回消息“Lead already exists”,如上所示。
记录级错误代码
| table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3 8-row-3 9-row-3 10-row-3 11-row-3 12-row-3 13-row-3 14-row-3 15-row-3 16-row-3 17-row-3 18-row-3 19-row-3 20-row-3 21-row-3 22-row-3 23-row-3 24-row-3 25-row-3 26-row-3 27-row-3 28-row-3 29-row-3 30-row-3 31-row-3 32-row-3 33-row-3 34-row-3 35-row-3 36-row-3 37-row-3 html-authored no-header | ||
|---|---|---|
| 响应代码 | 描述 | 注释 |
| 1001 | 值“%s”无效。 需要“%s”类型 | 每当参数值有类型不匹配时,就会生成错误。 例如,为integer参数指定的字符串值。 |
| 1002 | 缺少所需参数“%s”的值 | 请求中缺少所需的参数时会生成错误 |
| 1003 | 数据无效 | 提交的数据不是给定端点或模式的有效类型时;例如,通过指定为createOnly的操作提交商机的id时,或在批量营销活动中使用请求营销活动时。 |
| 1004 | 未找到潜在客户 | 对于syncLead,当操作为“updateOnly”且未找到潜在客户时 |
| 1005 | 潜在客户已存在 | 对于syncLead,当操作为“createOnly”并且商机已存在时 |
| 1006 | 找不到字段“%s” | 调用中包含的字段不是有效字段。 |
| 1007 | 多个潜在客户符合查找条件 | 多个潜在客户符合查找条件。 仅当键与单个记录匹配时才能执行更新 |
| 1008 | 访问分区“%s”被拒绝 | 自定义服务的用户无权访问包含该记录所在分区的工作区。 |
| 1009 | 必须指定分区名称 | |
| 1010 | 不允许分区更新 | 指定的记录已存在于单独的Lead分区中。 |
| 1011 | 不支持字段“%s” | 当查找字段或用不支持的标准字段(例如:firstName、lastName)指定的“filterType”时 |
| 1012 | 无效的Cookie值“%s” | 调用关联潜在客户时,可能会发生这种情况,因为该潜在客户的“cookie”参数值无效。 当使用“filterType=cookies”和“filterValues”参数的无效值通过筛选类型调用获取潜在客户时,也会发生这种情况。 |
| 1013 | 未找到对象 | 按ID获取对象(列表、营销活动)会返回此错误代码 |
| 1014 | 创建对象失败 | 创建对象(列表)失败 |
| 1015 | 潜在客户不在列表中 | 指定的潜在客户不是目标列表的成员 |
| 1016 | 导入过多 | 有太多导入已排队。 最多允许10个 |
| 1017 | 对象已存在 | 创建失败,因为记录已存在 |
| 1018 | CRM已启用 | 无法执行操作,因为实例启用了本机CRM集成。 |
| 1019 | 正在导入 | 目标列表已在导入到 |
| 1020 | 要编程的克隆太多 | 订阅已达到当天的计划计划中“cloneToProgramName”的分配使用量 |
| 1021 | 不允许公司更新 | 不允许在syncLead期间更新公司 |
| 1022 | 正在使用的对象 | 当某个对象正由另一个对象使用时,不允许删除 |
| 1025 | 程序状态未找到 | 为更改潜在客户计划状态指定的状态与计划渠道可用的状态不匹配。 |
| 1026 | 未启用自定义对象 | 无法执行该操作,因为实例未启用自定义对象集成。 |
| 1027 | 已达到最大活动类型限制 | 订阅已达到可用自定义活动类型的最大数。 |
| 1028 | 已达到最大字段限制 | 自定义活动最多有20个次要属性。 |
| 1029 |
|
|
| 1035 | 不支持的筛选器类型 | 在某些订阅中,不支持以下批量潜在客户提取过滤器类型: updatedAt、smartListId、smartListName。 |
| 1036 | 在输入中发现重复的对象 | 调用了使用相同的外键更新两个或多个记录。 例如,同步公司调用时对多个公司使用相同的externalCompanyId。 |
| 1037 | 已跳过潜在客户 | 已跳过潜在客户,因为它已经处于或超过此状态。 |
| 1042 | 运行日期无效 | 为计划营销活动指定的runAt日期太长了(最长为2年)。 |
| 1048 | 自定义对象放弃草稿失败 | 已进行调用以放弃自定义对象的草稿版本。 |
| 1049 | 创建活动失败 | 属性数组太长。 传递给记录的属性数组超过了65536字节的最大长度 |
| 1076 | 使用mergeInCRM标志的合并潜在客户调用为4。 | 您正在创建重复记录。建议您改用现有记录。 这是Marketo在Salesforce中合并时收到的错误消息。 |
| 1077 | 由于“SFDC字段”长度,合并潜在客户调用失败 | 由于“SFDC字段”超出允许的字符限制,mergeInCRM设置为true的合并潜在客户调用失败。 要更正此问题,请缩短“SFDC字段”的长度,或将mergeInCRM设置为false。 |
| 1078 | 合并潜在客户调用失败,因为实体已删除,不是潜在客户/联系人,或者字段筛选条件不匹配。 | 合并失败,无法在本地同步的CRM中执行合并操作 这是Marketo在Salesforce中合并时收到的错误消息。 |
| 1079 | 由于重复记录中存在个性化URL冲突,合并潜在客户调用失败 | 合并潜在客户调用指定了具有相同个性化URL的多个潜在客户。 要解决此问题,请使用Marketo Engage用户界面合并这些记录。 |