API 身份验证
n8n 使用 API 密钥验证 API 调用。
信息
功能可用范围
免费试用期间无法使用 n8n API,请升级后使用此功能。
创建 API 密钥
- 登录 n8n。
- 前往 Settings(设置)> n8n API。
- 选择 Create an API key(创建 API 密钥)。
- 为密钥设置 Label(标签)和 Expiration(过期时间)。
- 如果使用 Enterprise 方案,选择要授予密钥的 Scopes(作用域)。完整列表请参阅 API 作用域。
- 复制 My API Key(我的 API 密钥),用它验证调用。
使用密钥调用 API
在 API 调用中,通过名为 X-N8N-API-KEY 的请求头发送 API 密钥。
例如,要获取所有活跃工作流,curl 请求如下:
# For a self-hosted n8n instance <a href="#for-a-self-hosted-n8n-instance" id="for-a-self-hosted-n8n-instance"></a>
curl -X 'GET' \
'<N8N_HOST>:<N8N_PORT>/<N8N_PATH>/api/v<version-number>/workflows?active=true' \
-H 'accept: application/json' \
-H 'X-N8N-API-KEY: <your-api-key>'
# For n8n Cloud <a href="#for-n8n-cloud" id="for-n8n-cloud"></a>
curl -X 'GET' \
'<your-cloud-instance>/api/v<version-number>/workflows?active=true' \
-H 'accept: application/json' \
-H 'X-N8N-API-KEY: <your-api-key>'
节点配置
要在工作流中调用 n8n API,请使用 n8n 节点。创建凭据时,填写以下字段:
- API Key(API 密钥):粘贴在创建 API 密钥中生成的密钥。
- Base URL(基础 URL):使用以下格式之一填写实例的 API 根地址:
- Cloud:
https://<name>.app.n8n.cloud/api/v1,其中<name>是 Cloud 子域名。 - 自托管:
https://<your-instance-url>/api/v1。
- Cloud:
可用操作和参数请参阅 n8n 节点文档。
删除 API 密钥
- 登录 n8n。
- 前往 Settings(设置)> n8n API。
- 选择待删除密钥旁的 Delete(删除)。
- 选择 Delete Forever(永久删除)进行确认。
API 作用域
在 Enterprise 实例中,可以使用作用域限制 API 密钥可访问的资源和操作。 请为密钥的预定用途选择所需的最小作用域。
非 Enterprise 方案的 API 密钥具有该账号全部资源和功能的完整访问权限。
信息
API 密钥作用域与项目角色作用域
API 密钥作用域控制 API 密钥在实例级别能执行的操作,不同于定义项目内自定义角色所用的项目角色作用域。项目角色作用域请参阅自定义项目角色。
以下表格按资源列出创建受限 API 密钥时可用的作用域。
社区软件包作用域
| 作用域 | 说明 |
|---|---|
communityPackage:install | 在实例上安装社区节点软件包。 |
communityPackage:list | 列出已安装的社区节点软件包。 |
communityPackage:uninstall | 卸载社区节点软件包。 |
communityPackage:update | 更新已安装的社区节点软件包。 |
凭据作用域
| 作用域 | 说明 |
|---|---|
credential:create | 创建凭据。 |
credential:read | 获取凭据及其数据结构。 |
credential:list | 列出凭据。 |
credential:update | 更新凭据。 |
credential:delete | 删除凭据。 |
credential:move | 将凭据转移到其他项目。 |
数据表作用域
| 作用域 | 说明 |
|---|---|
dataTable:create | 创建数据表。 |
dataTable:read | 获取数据表。 |
dataTable:list | 列出数据表。 |
dataTable:update | 更新数据表元数据。 |
dataTable:delete | 删除数据表。 |