POST

Stream generate content

使用 Gemini streamGenerateContent 原生格式以 SSE 流式生成内容,支持多模态输入、多轮对话、函数调用(Function Calling)和思考预算(thinkingConfig)。同时兼容 x-goog-api-key 和 Bearer 两种鉴权方式。

Authentication

支持两种鉴权方式,任选其一即可。
x-goog-api-keystringOptional

在请求头中直接传入 API Key(Google AI Studio / Gemini SDK 默认方式)。

AuthorizationstringOptional

兼容 OpenAI 风格的 Bearer Token,格式为 Bearer $HY_API_KEY。与 x-goog-api-key 二选一。

Headers

发送 POST 请求时需指定以下请求头。
Content-TypestringOptional

通常为 application/json,大多数 SDK 会自动处理。

Path Parameters

模型名称通过 URL 路径传入。
modelstringRequired

Gemini 模型 ID,例如 gemini-3.1-pro-preview。具体可用模型以你的 API Key 权限为准。

Request

此端点接收一个 JSON 对象作为请求体。
contentsarray of objectsRequired

Gemini 多轮对话内容数组,按对话顺序排列。role 缺省时网关自动补 "user"。

generationConfigobjectOptional

输出生成配置项集合。

systemInstructionobjectOptional

系统指令,格式与 contents 中的条目相同(含 parts 数组)。

toolsarray of objectsOptional

函数调用工具定义,开启 Function Calling。

Errors

API 请求失败时可能返回以下 HTTP 状态码:
POST
1import { GoogleGenAI } from '@google/genai'
2
3const ai = new GoogleGenAI({
4 apiKey: process.env.HY_API_KEY,
5 httpOptions: { baseUrl: 'https://apiclaw.cc' },
6})
7
8const stream = await ai.models.generateContentStream({
9 model: 'gemini-3.1-pro-preview',
10 config: {
11 systemInstruction: '你是一个专业的产品助手。',
12 maxOutputTokens: 256,
13 },
14 contents: '用一句话解释 API 网关',
15})
16for await (const chunk of stream) {
17 if (chunk.text) process.stdout.write(chunk.text)
18}
POST

Authorization

获取 API Key →
🔑

Path Parameters

modelstring必填

Gemini 模型 ID,例如 gemini-3.1-pro-preview。具体可用模型以你的 API Key 权限为准。

Body Parameters

contentsarray of objects必填

Gemini 多轮对话内容数组,按对话顺序排列。role 缺省时网关自动补 "user"。

generationConfigobject可选

输出生成配置项集合。

systemInstructionobject可选

系统指令,格式与 contents 中的条目相同(含 parts 数组)。

toolsarray of objects可选

函数调用工具定义,开启 Function Calling。

REQUEST
1const response = await fetch("https://apiclaw.cc/v1beta/models/gemini-3.1-pro-preview:streamGenerateContent", {
2 method: "POST",
3 headers: {
4 "Authorization": "Bearer YOUR_API_KEY",
5 "Content-Type": "application/json",
6 },
7 body: JSON.stringify({
8 "contents": [
9 {
10 "role": "user",
11 "parts": [
12 {
13 "text": "Hello!"
14 }
15 ]
16 }
17 ]
18 }),
19});
20const data = await response.json();
21console.log(data);
RESPONSE

点击 Send request 查看响应

Response
1{
2 "candidates": [
3 {
4 "content": {
5 "role": "model",
6 "parts": [
7 {
8 "text": "API 网关是位于客户端与后端服务之间的统一入口,负责路由、鉴权、限流等横切关注点。"
9 }
10 ]
11 },
12 "finishReason": "STOP",
13 "index": 0
14 }
15 ],
16 "usageMetadata": {
17 "promptTokenCount": 18,
18 "candidatesTokenCount": 35,
19 "totalTokenCount": 53
20 }
21}