POST

Create a chat completion

创建一条 OpenAI Chat Completions 兼容的文本或多模态对话补全,支持流式和非流式两种模式。

Authentication

在请求头中使用 Bearer Token 进行鉴权。你可以前往控制台的 API Keys 页面生成密钥。
AuthorizationstringRequired

格式为 Bearer $HY_API_KEY。

Headers

发送 POST 请求时,需指定内容类型(大多数 HTTP 客户端及 SDK 会自动处理)。
Content-TypestringOptional

通常为 application/json。

Request

此端点需要接收一个 JSON 对象作为请求体。
modelstringRequired

模型 ID,例如 claude-sonnet-4-6、claude-opus-4-7、gpt-5.4。具体可用模型以你的 API Key 权限为准。

messagesarray of objectsRequired

OpenAI Chat Completions 格式的消息数组。支持多种角色。

streambooleanOptional

是否使用 SSE 流式返回。默认 false;为 true 时返回 text/event-stream。

toolsarray of objectsOptional

函数调用定义,兼容 OpenAI tools 结构。

reasoning_effortstringOptional

推理强度。仅部分模型支持,常见取值为 low、medium、high;不支持的模型可能忽略或拒绝该参数。

temperaturenumberOptional

采样温度。通常取值 0–2;数值越高结果越发散。推理模型(如 o-series, gpt-5)仅支持默认值 1,传其他值会被网关自动丢弃以避免报错。

top_pnumberOptional

核采样概率。推理模型仅支持默认值 1。

presence_penaltynumberOptional

存在惩罚。推理模型会自动丢弃该字段。

frequency_penaltynumberOptional

频率惩罚。推理模型会自动丢弃该字段。

max_completion_tokensintegerOptional

最大输出 token 数量。建议优先使用该字段控制回复长度。老版客户端的 max_tokens 会被网关自动转换为此字段。

response_formatobjectOptional

指定模型输出的格式(如 JSON_OBJECT 等)。

stopstring | arrayOptional

遇到这些字符串时停止生成。

Errors

API 请求失败时可能返回以下 HTTP 状态码:
POST
1import OpenAI from 'openai'
2
3const client = new OpenAI({
4 apiKey: process.env.HY_API_KEY,
5 baseURL: 'https://apiclaw.cc/v1',
6})
7
8const response = await client.chat.completions.create({
9 model: 'claude-sonnet-4-6',
10 messages: [
11 { role: 'system', content: '你是一个专业的产品助手。' },
12 { role: 'user', content: '写一个三行产品介绍' },
13 ],
14 max_completion_tokens: 256,
15})
16console.log(response.choices[0].message.content)
POST

Authorization

获取 API Key →
🔑

Body Parameters

modelstring必填

模型 ID,例如 claude-sonnet-4-6、claude-opus-4-7、gpt-5.4。具体可用模型以你的 API Key 权限为准。

messagesarray of objects必填

OpenAI Chat Completions 格式的消息数组。支持多种角色。

streamboolean可选

是否使用 SSE 流式返回。默认 false;为 true 时返回 text/event-stream。

toolsarray of objects可选

函数调用定义,兼容 OpenAI tools 结构。

reasoning_effortstring可选

推理强度。仅部分模型支持,常见取值为 low、medium、high;不支持的模型可能忽略或拒绝该参数。

temperaturenumber可选

采样温度。通常取值 0–2;数值越高结果越发散。推理模型(如 o-series, gpt-5)仅支持默认值 1,传其他值会被网关自动丢弃以避免报错。

top_pnumber可选

核采样概率。推理模型仅支持默认值 1。

presence_penaltynumber可选

存在惩罚。推理模型会自动丢弃该字段。

frequency_penaltynumber可选

频率惩罚。推理模型会自动丢弃该字段。

max_completion_tokensinteger可选

最大输出 token 数量。建议优先使用该字段控制回复长度。老版客户端的 max_tokens 会被网关自动转换为此字段。

response_formatobject可选

指定模型输出的格式(如 JSON_OBJECT 等)。

stopstring | array可选

遇到这些字符串时停止生成。

REQUEST
1const response = await fetch("https://apiclaw.cc/v1/chat/completions", {
2 method: "POST",
3 headers: {
4 "Authorization": "Bearer YOUR_API_KEY",
5 "Content-Type": "application/json",
6 },
7 body: JSON.stringify({
8 "model": "claude-sonnet-4-6",
9 "messages": [
10 {
11 "role": "system",
12 "content": "You are a helpful assistant."
13 },
14 {
15 "role": "user",
16 "content": "Hello!"
17 }
18 ],
19 "reasoning_effort": "medium",
20 "temperature": 1,
21 "top_p": 1,
22 "presence_penalty": 0,
23 "frequency_penalty": 0,
24 "max_completion_tokens": 512
25 }),
26});
27const data = await response.json();
28console.log(data);
RESPONSE

点击 Send request 查看响应

Response
1{
2 "id": "chatcmpl_abc123",
3 "object": "chat.completion",
4 "model": "claude-sonnet-4-6",
5 "choices": [
6 {
7 "index": 0,
8 "message": {
9 "role": "assistant",
10 "content": "这里是模型生成的内容。"
11 },
12 "finish_reason": "stop"
13 }
14 ],
15 "usage": {
16 "prompt_tokens": 18,
17 "completion_tokens": 20,
18 "total_tokens": 38
19 }
20}