Interactions API: GaosClientException.getMessage() only returns "400 . API error occurred" and omits the server error details
维护者通常 1 天内回复
@hemasekhar-p 已经在做这个了。
开始于 2026年10月5日。
评估
这个 Issue 还没有评估数据。
描述
Environment
com.google.genai:google-genai:1.73.0- Java 21+
Problem Description
When a call to client.interactions.create(...) fails with an HTTP 4xx error (throwing CreateInteractionClientError, a subclass of GaosClientException), Throwable.getMessage() returns only:
400 . API error occurred
The actual diagnostic JSON error body returned by the server (e.g. {"error":{"message":"...","code":"invalid_request"}}) is only accessible if the caller explicitly catches GaosClientException and calls e.bodyAsString().
By comparison, com.google.genai.errors.ApiException (thrown by client.models.*) includes the server's error message directly in getMessage(), making stack traces and logs immediately actionable.
Steps to Reproduce
import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.GenerationConfig;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ThinkingLevel;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
public class ErrorRepro {
public static void main(String[] args) {
Client client = Client.builder().build();
var request =
CreateModelInteraction.builder()
.model(Model.GEMINI_3_FLASH_PREVIEW)
.input(InteractionsInput.of("Hello"))
.generationConfig(
GenerationConfig.builder()
.thinkingLevel(ThinkingLevel.MINIMAL) // unsupported on gemini-3-flash-preview
.build())
.build();
// Throws CreateInteractionClientError with message: "400 . API error occurred"
// instead of including: "Thinking level THINKING_LEVEL_MINIMAL is not supported for this model."
client.interactions.create(CreateInteractionRequestBody.of(request));
}
}
Expected Behavior
GaosClientException (and its subclasses like CreateInteractionClientError) should include the server error message or bodyAsString() in getMessage().
- 主要语言
- Java
- 星标
- 398
- 派生
- 126
- 平均合并
- 1 天 12 小时
- 30 天内合并 PR
- 71
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
googleapis/java-genai 的其他 Issue
-
ResponseStream.close() can block on the reader lock before closing the HTTP response可能已有人在做 @hirematha 于 1 天前认领。 未关闭priority: p2 type: bug
难度 2/5 1-3 小时 新手友好度 68/100
googleapis/java-genai#1372 ·
维护者通常 1 天内回复
-
Interactions API: store(false) omits "id", breaking Interaction and InteractionCompletedEvent deserialization可能已有人在做 @hemasekhar-p 于 25 天前认领。 未关闭priority: p2 type: bug
googleapis/java-genai#1281 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Interaction.outputText() always returns Optional.empty() (SDK-computed field is never populated)可能已有人在做 @hemasekhar-p 于 25 天前认领。 未关闭priority: p2 type: bug
googleapis/java-genai#1280 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Gen AI with structured output - `propertyOrdering` in Python vs. Java implementations可能已有人在做 @hemasekhar-p 于 79 天前认领。 未关闭priority: p3 type: feature request
googleapis/java-genai#1169 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Live API: no way to observe session close or connection errors after setup可能已有人在做 @hemasekhar-p 于 88 天前认领。 未关闭priority: p3 type: feature request
googleapis/java-genai#1153 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
查看 googleapis/java-genai 的全部 Issue
相似的 Issue
-
breaking change bug needs human review not ready priority medium size S
难度 2/5 1-3 小时 新手友好度 76/100
martin-francois/symphony-trello#1193 · 1 条评论 ·
维护者通常 1 天内回复
-
Mend: dependency security vulnerability
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 2/5 1-3 小时 新手友好度 65/100
维护者通常 1 天内回复
-
status: waiting-for-triage
难度 2/5 1-3 小时 新手友好度 78/100
spring-projects/spring-framework#37614 ·
维护者通常 1 天内回复