跳转到内容

400 MissingParameter: input.type:Claude Code 第二轮报错

Quick fix

原帖尚未提供可验证的解法;报告者直连测试确认补齐 "type": "message" 可返回 200,但代理转换补丁仍是建议。

报错原文
API Error: 400
{"error":{"code":"MissingParameter","message":"The request failed because it is missing `input.type` parameter. Request id: <id>","param":"input.type","type":"BadRequest"}}

报告者在 Claude Code 经 cc-switch 本地代理调用火山方舟 Responses API 的 deepseek-v4-flash 时,第一轮正常,第二轮历史包含数组内容的 assistant 文本消息后返回 400。据其分析,src-tauri/src/proxy/providers/transform_responses.rs 中的 convert_messages_to_input 生成 role-based message item 时未携带顶层 type 字段,而该模型后端对此进行严格校验。

报告者的直连控制实验显示:仅 user 消息或转换为 function_call / function_call_output 的工具消息返回 200;所有 message item 补上 "type": "message" 后也返回 200。同样请求换用 glm-5.3-flash、glm-5.3、qwen3.8-max 或 deepseek-v4-pro 均正常。这些属于报告者的测试结果;issue 仍开放,补齐三个转换分支的建议尚无合入或发布确认,原帖尚未提供可验证的解法来修复已安装的 cc-switch。

  1. 核对是否符合原帖场景:Claude Code 经 cc-switch 本地代理使用火山方舟 Responses API 的 deepseek-v4-flash,第一轮成功,历史出现 assistant 文本消息后第二轮失败。

  2. 如需临时避开触发条件,可尝试原帖同网关测试正常的 glm-5.3-flash、glm-5.3、qwen3.8-max 或 deepseek-v4-pro;这些模型的成功结果来自报告者测试,不代表 deepseek-v4-flash 已修复。

  3. 跟进 issue #7552 的转换补丁进展:报告者建议在 convert_messages_to_input 的字符串内容、数组内容、无内容三个分支,为所有 role-based message item 补上 "type": "message"。直连请求补字段已测试返回 200,但原帖没有可直接应用的补丁或已发布修复版本。

ToolClaude Code
Versioncc-switch v3.20.3(报告受影响版本);Claude Code 2.1.278
PlatformsmacOS

(暂无 FAQ)

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。