n8n 对接 51API
本文适合
既适合第一次接触 n8n 的零基础用户,也适合已经在搭工作流的开发者。
先说结论
n8n 对接 51API,最稳妥的方式是:
- 在工作流里添加
HTTP Request节点 - 把请求地址写成
https://www.51api.org/v1/chat/completions - 在请求头里带上
Authorization: Bearer sk-你的密钥 - 在请求体里写入
model和messages
如果你只是想先跑通,一套最小可用配置如下:
| 配置项 | 填写内容 |
|---|---|
| Method | POST |
| URL | https://www.51api.org/v1/chat/completions |
| Header 1 | Authorization: Bearer sk-你的密钥 |
| Header 2 | Content-Type: application/json |
| Model | gpt-4o |
| Body 格式 | JSON |
注意
URL 必须带 /v1。
- ✅ 正确:
https://www.51api.org/v1/chat/completions - ❌ 错误:
https://www.51api.org/chat/completions
为什么本文默认用 HTTP Request 节点?
这是一个有意的选择,不是绕路。
根据 n8n 官方文档:
- n8n 官方
OpenAI节点确实存在 - AI 教程里也会用
OpenAI Chat Model - 但官方公开的
OpenAI credentials文档当前主要写的是API Key和Organization ID - 官方
HTTP Request文档明确支持直接调任意 REST API,也支持Import cURL
所以本文默认给你一条 最稳定、最不依赖版本差异 的路线:
Manual Trigger / Webhook / Set
-> HTTP Request
-> (可选)Edit Fields / Code2
3
说明
如果你的 n8n 当前版本或你安装的 AI 相关节点,明确提供了可自定义 Base URL 的 OpenAI 兼容配置,你当然也可以试节点法。
但从官方公开文档角度看,HTTP Request 是当前最稳的教程写法。
n8n、51API、模型三者是什么关系?
可以这样理解:
- n8n:负责流程编排、定时任务、Webhook、数据流转
- 51API:负责真正调用 GPT / Claude / Gemini / Grok
- 模型 ID:决定这一次到底调用哪个模型,例如
gpt-4o
真实链路是:
你 / 业务系统 -> n8n -> 51API -> 具体模型所以在 n8n 里,最核心的 3 个参数就是:
URLAPI Keymodel
开始前要准备什么?
1. 一个 51API 密钥
在 51API 控制台创建一个 API Key,格式通常是:
sk-xxxxxxxxxxxxxxxx2. 确认 n8n 可以访问外网
无论你是:
- n8n Cloud
- 自建 n8n
- Docker 版 n8n
都要确保它这台机器本身能访问:
https://www.51api.org3. 先决定要调用哪个模型
如果你第一次接,建议先用这几个最常见的模型之一:
| 场景 | 建议模型 |
|---|---|
| 第一次先跑通 | gpt-4o |
| OpenAI 主力 | gpt-5 |
| 长文写作 | claude-sonnet-4-6 |
| 成本敏感 | gemini-2.5-flash |
| 极低成本测试 | grok-420-fast |
零基础用户最稳做法
第 1 步:新建一个测试工作流
先不要一上来就接复杂业务。
最稳妥的是先新建一条最简单的工作流:
Manual Trigger -> Set -> HTTP Request第 2 步:添加 Manual Trigger
这一步只是为了让你点一下按钮就能测试,不需要先接 Webhook、数据库或第三方系统。
第 3 步:添加 Set 节点
在 Set 节点里新增一个字段:
| 字段名 | 值 |
|---|---|
prompt | 你好,给我一句 20 字以内的自我介绍 |
这样你后面在 HTTP Request 节点里就可以直接引用这个字段。
第 4 步:添加 HTTP Request 节点
把它配置成:
| 字段 | 建议填写 |
|---|---|
Method | POST |
URL | https://www.51api.org/v1/chat/completions |
Send Headers | 开启 |
Send Body | 开启 |
Body Content Type | JSON |
第 5 步:填写请求头
在 Headers 里填两项:
| Header 名称 | Header 值 |
|---|---|
Authorization | Bearer sk-你的密钥 |
Content-Type | application/json |
第 6 步:填写 JSON Body
把 Body 切到 JSON 模式,填入:
{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "={{ $json.prompt }}"
}
]
}2
3
4
5
6
7
8
9
这里的意思是:
model:你要调用的模型messages:标准 OpenAI 兼容消息格式={{ $json.prompt }}:读取前一个Set节点里的内容
第 7 步:执行工作流
点击 Execute workflow。
如果返回正常,你会看到类似这样的结构:
{
"id": "chatcmpl-xxx",
"choices": [
{
"message": {
"role": "assistant",
"content": "你好,我是一个可协助你完成任务的 AI 助手。"
}
}
]
}2
3
4
5
6
7
8
9
10
11
这就说明 n8n 和 51API 已经打通。
程序员直接看这里
你如果已经熟悉 n8n,可以直接用这份最小请求:
POST https://www.51api.org/v1/chat/completions
Authorization: Bearer sk-你的密钥
Content-Type: application/json2
3
{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}2
3
4
5
6
7
8
9
如果你在 HTTP Request 节点里用表达式,常见写法如下:
{
"model": "gpt-4o",
"messages": [
{
"role": "system",
"content": "你是一个简洁的中文助手。"
},
{
"role": "user",
"content": "={{ $json.prompt }}"
}
]
}2
3
4
5
6
7
8
9
10
11
12
13
n8n 里最快的做法:直接导入 cURL
这一步对很多客户更实用。
根据 n8n 官方 HTTP Request 文档,HTTP Request 节点支持 Import cURL。
你可以直接导入这段:
curl https://www.51api.org/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-你的密钥" \
-d '{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "你好"
}
]
}'2
3
4
5
6
7
8
9
10
11
12
在 n8n 中操作:
- 打开
HTTP Request节点 - 选择
Import cURL - 粘贴上面的命令
- 导入后再把模型和提示词改成你自己的
这个方法的好处是:
- 不容易漏 Header
- 不容易把 JSON 格式写错
- 客户端教程和 API 文档里的 cURL 可以直接复用
如果你要做聊天机器人 / AI 工作流
n8n 官方 AI 教程里,常见结构是:
Chat Trigger -> AI Agent -> Chat Model如果你当前实例里已经有一套 明确支持自定义 OpenAI 兼容 Base URL 的模型节点配置,你可以尝试直接走该方案。
但从官方公开文档角度看,最稳妥的教程写法仍然是:
Chat Trigger / Webhook
-> HTTP Request
-> 响应清洗
-> 返回结果2
3
4
原因很简单:
- 版本差异更少
- 不依赖某个插件版本是否支持自定义 endpoint
- 出错时返回信息更直接,排查也更简单
如果你要从 Webhook 接业务系统
很多客户不是手动点按钮,而是让:
- 网站表单
- 企业微信机器人
- 飞书机器人
- 业务后台
- CRM / ERP
来调用 n8n。
这种场景下,推荐结构是:
Webhook -> HTTP Request -> Respond to Webhook假设 Webhook 收到的数据结构是:
{
"message": "帮我总结这段文本"
}2
3
那么你在 HTTP Request 的 Body 里可以这样写:
{
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": "={{ $json.body.message }}"
}
]
}2
3
4
5
6
7
8
9
如果你后面还想把回答发回去,可以在 Respond to Webhook 里只返回:
{{ $json.choices[0].message.content }}如何只取 AI 回复正文?
51API 返回的是标准 OpenAI 兼容结果,真正的回答正文通常在:
choices[0].message.content所以你可以在 n8n 里再接一个 Edit Fields 或 Code 节点,把结果清洗成更简单的结构。
例如你只想保留这 3 个字段:
{
"model": "={{ $json.model }}",
"reply": "={{ $json.choices[0].message.content }}",
"usage": "={{ $json.usage }}"
}2
3
4
5
这样后面发回前端、数据库或消息系统都会更方便。
常见模型怎么换?
在 n8n 里切模型,本质上只改 JSON Body 里的 model 字段。
例如:
| 用途 | 模型 |
|---|---|
| 默认聊天 | gpt-4o |
| OpenAI 主力 | gpt-5 |
| 长文与写作 | claude-sonnet-4-6 |
| 高性价比 | gemini-2.5-flash |
| 极低成本测试 | grok-420-fast |
示例:
{
"model": "claude-sonnet-4-6",
"messages": [
{
"role": "user",
"content": "把下面这段中文润色成正式商务邮件"
}
]
}2
3
4
5
6
7
8
9
常见报错怎么排查?
1. 提示 404
最常见原因就是 URL 少了 /v1。
请检查:
https://www.51api.org/v1/chat/completions是不是被写成了:
https://www.51api.org/chat/completions2. 提示 401 / Unauthorized
通常是:
- API Key 写错
Bearer前缀没带- Key 前后有空格
- 这个 Key 已失效
3. 提示 Model not found
通常是:
model名字写错- 令牌分组不匹配
- 该模型当前未开放给这把 Key
4. 提示 Bad request
通常要检查这几项:
- Body 是否是合法 JSON
messages是否是数组- 每条消息是否有
role和content Content-Type是否为application/json
5. n8n 请求发出去了,但你只看到一大段 JSON
这不是报错,是因为你还没把返回结果清洗成正文。
请取:
choices[0].message.content客户最常问的 4 个问题
Q1:我充值进 51API 后,Claude、GPT-5、Gemini 是共用余额吗?
通常是共用同一个 51API 余额体系,按你实际调用的模型分别扣费。
n8n 只是调用入口,不是单独的钱包。
Q2:我在 n8n 里是不是还要单独买 OpenAI / Claude 官方账号?
不需要。
如果你是通过 51API 对接,n8n 调的就是 51API,不是直接调各家官方平台。
Q3:我是支付宝打款或兑换码充值后,n8n 里要填什么?
n8n 里填的不是兑换码本身,而是:
- 先把兑换码充到 51API
- 在 51API 创建 API Key
- 在 n8n 的请求头里填写这个 API Key
Q4:我能不能在一个工作流里同时切 GPT、Claude、Gemini?
可以。
最简单的方法有两种:
- 复制多个
HTTP Request节点,每个节点一个模型 - 用表达式动态控制
model字段
例如:
{
"model": "={{ $json.modelName }}",
"messages": [
{
"role": "user",
"content": "={{ $json.prompt }}"
}
]
}2
3
4
5
6
7
8
9
最稳妥的接入顺序
如果你不想走弯路,直接按这个顺序:
- 在 51API 创建一个新 API Key
- 在 n8n 用
Manual Trigger + Set + HTTP Request先跑通gpt-4o - 确认能收到正常回复
- 再改成 Webhook、定时任务、数据库触发等真实业务流
- 最后再扩成多模型切换
下一步
参考资料
- n8n 官方:OpenAI 节点
https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-langchain.openai/ - n8n 官方:OpenAI credentials
https://docs.n8n.io/integrations/builtin/credentials/openai/ - n8n 官方:HTTP Request 节点
https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/ - n8n 官方:Build an AI workflow in n8n
https://docs.n8n.io/advanced-ai/intro-tutorial/