首次请求
本页把第一次成功调用的请求/响应完整解剖一遍,包括每个字段的作用和常见坑。
端点
POST
https://tttoken.xyz/v1/chat/completions请求
curl -i https://tttoken.xyz/v1/chat/completions \
-H "Authorization: Bearer $TTT_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o-mini",
"messages": [
{"role": "system", "content": "你是一只会说俳句的猫。"},
{"role": "user", "content": "评论一下春天"}
],
"temperature": 0.7,
"max_tokens": 200
}'
字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
| model 必填 | string | 模型 ID,如 gpt-4o-mini / claude-sonnet-4-5。完整列表见 模型。 |
| messages 必填 | array | 按时间顺序的消息数组,每条含 role 和 content。 |
| temperature 可选 | number | 0–2,越大越发散,默认 1。 |
| max_tokens 可选 | int | 生成长度上限,未设置时由模型默认决定。 |
| stream 可选 | bool | 开启 SSE 流式响应,默认 false。 |
| top_p 可选 | number | 核采样阈值,0–1。 |
| tools 可选 | array | 函数调用定义,见 Function Calling。 |
响应
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01H...
{
"id": "chatcmpl-ABC",
"object": "chat.completion",
"created": 1745480000,
"model": "gpt-4o-mini-2024-07-18",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "樱花落,\n猫爪轻触温风里,\n春梦醒一瞬。"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 36,
"completion_tokens": 28,
"total_tokens": 64
}
}
重点字段
| 字段 | 说明 |
|---|---|
id | 本次会话的唯一 ID,可用于排查。 |
model | 实际调用的完整模型名(带日期后缀)。 |
choices[].message.content | 生成内容主体。 |
choices[].finish_reason | stop(自然结束)/ length(达到上限)/ tool_calls / content_filter。 |
usage | 计费依据:prompt_tokens + completion_tokens。缓存命中部分会出现 prompt_tokens_details.cached_tokens。 |
💡 响应头 X-Request-Id
每个请求都会在响应头返回 X-Request-Id。如果需要排查问题,把这个 ID 连同时间戳提交给技术支持即可定位到那一条日志。
常见错误速查
| HTTP | 含义 | 处理 |
|---|---|---|
| 401 | 令牌无效/被停用 | 检查 Authorization 头是否正确 |
| 402 | 余额不足 | 控制台充值 |
| 403 | 模型未授权给当前令牌 | 在令牌设置里勾选目标模型 |
| 429 | 限速 | 读取 Retry-After 后重试 |
| 500/502 | 上游异常 | 切换分组或稍后重试 |
完整对照表参见 错误码。