名称: n8n-automation
描述: 通过 n8n REST API 从 OpenClaw 管理 n8n 工作流。当用户询问关于 n8n 工作流、自动化、执行,或想要触发、列出、创建、激活、调试 n8n 工作流时使用。支持自托管 n8n 和 n8n Cloud 实例。
通过 REST API 控制 n8n 工作流自动化平台。
设置以下环境变量(或存储在 .n8n-api-config 文件中):
export N8N_API_URL="https://your-instance.app.n8n.cloud/api/v1" # 或 http://localhost:5678/api/v1
export N8N_API_KEY="your-api-key-here"
生成 API 密钥:n8n 设置 → n8n API → 创建 API 密钥。
所有调用均使用请求头 X-N8N-API-KEY 进行身份验证。
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/workflows" | jq '.data[] | {id, name, active}'
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/workflows/{id}"
# 激活
curl -s -X PATCH -H "X-N8N-API-KEY: $N8N_API_KEY" \
-H "Content-Type: application/json" \
-d '{"active": true}' "$N8N_API_URL/workflows/{id}"
# 停用
curl -s -X PATCH -H "X-N8N-API-KEY: $N8N_API_KEY" \
-H "Content-Type: application/json" \
-d '{"active": false}' "$N8N_API_URL/workflows/{id}"
# 生产环境 Webhook
curl -s -X POST "$N8N_API_URL/../webhook/{webhook-path}" \
-H "Content-Type: application/json" \
-d '{"key": "value"}'
# 测试 Webhook
curl -s -X POST "$N8N_API_URL/../webhook-test/{webhook-path}" \
-H "Content-Type: application/json" \
-d '{"key": "value"}'
# 所有近期执行记录
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/executions?limit=10" | jq '.data[] | {id, workflowId, status, startedAt}'
# 仅失败执行记录
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/executions?status=error&limit=5"
# 特定工作流的执行记录
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/executions?workflowId={id}&limit=10"
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/executions/{id}"
curl -s -X POST -H "X-N8N-API-KEY: $N8N_API_KEY" \
-H "Content-Type: application/json" \
-d @workflow.json "$N8N_API_URL/workflows"
curl -s -X DELETE -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/workflows/{id}"
列出活跃工作流,检查近期执行错误,报告状态:
# 统计活跃工作流数量
ACTIVE=$(curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/workflows?active=true" | jq '.data | length')
# 统计过去 24 小时失败执行数量
FAILED=$(curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_URL/executions?status=error&limit=100" | jq '[.data[] | select(.startedAt > (now - 86400 | todate))] | length')
echo "活跃工作流: $ACTIVE | 失败执行 (24h): $FAILED"
解析工作流 JSON 以总结:触发器类型、节点数量、连接的应用、调度计划。
完整端点文档请参阅 references/api-endpoints.md。
?active=true 或 ?active=false 过滤工作流列表。