OpenAPI 介绍
FastGPT OpenAPI 介绍
自动化 API 文档
自动化 API 文档为当前版本系统的所有接口,不区分是否可通过 API Key 调用。
后续所有接口都将做自动化生成,会逐步完善文档。
使用说明
FastGPT OpenAPI 接口允许你使用 API Key 进行鉴权,从而操作 FastGPT 上的相关服务和资源,例如:调用应用对话接口、上传知识库数据、搜索测试等等。出于兼容性和安全考虑,并不是所有的接口都允许通过 API Key 访问。
如何查看 BaseURL
注意:BaseURL 不是接口地址,而是所有接口的根地址,直接请求 BaseURL 是没有用的。

API Key 类型
FastGPT 的 API Key 分为 全局 APIKey 和 应用 APIKey。这两个概念的生成位置、隔离范围和可调用接口不同,请按实际场景选择。
| 类型 | 生成位置 | 隔离范围 | 典型用途 |
|---|---|---|---|
| 全局 APIKey | 账号设置 -> API 密钥 | 团队级全局密钥,不绑定单个应用 | 调用支持 API Key 鉴权的通用 OpenAPI。调用 chat/completions 时需要在请求体传入 appId;如需代理团队成员身份,必须由团队所有者为该 key 开启 authProxy 后,再在请求体传入 authProxy。 |
| 应用 APIKey | 应用 -> 发布渠道 -> API | 按应用隔离,每个密钥只属于一个应用 | 只能调用该应用的 chat/completions 对话接口。密钥内已绑定应用,无需额外传 appId,也不支持 authProxy。 |
我们建议:第三方客户端或外部系统只需要对接单个应用对话时,使用 应用 APIKey;服务端需要操作知识库、应用管理等通用资源,或需要在对话接口中使用 authProxy 代理身份时,使用 全局 APIKey。
| 全局 APIKey | 应用 APIKey |
|---|---|
![]() | ![]() |
基本配置
OpenAPI 中,所有的接口都通过 Header.Authorization 进行鉴权。
baseUrl: "http://localhost:3000/api"
headers: {
Authorization: "Bearer {{apikey}}"
}发起应用对话示例
curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
--header 'Authorization: Bearer fastgpt-xxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "111",
"stream": false,
"detail": false,
"messages": [
{
"content": "导演是谁",
"role": "user"
}
]
}'自定义用户 ID
v4.8.13 后支持传入自定义的用户 ID, 并且存入历史记录中。
curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
--header 'Authorization: Bearer fastgpt-xxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "111",
"stream": false,
"detail": false,
"messages": [
{
"content": "导演是谁",
"role": "user"
}
],
"customUid": "xxxxxx"
}'在历史记录中,该条记录的使用者会显示为 xxxxxx。

