360 Secure SkillHub
360 安全技能中心

n8n API

提供用 curl 调用 n8n 公共 REST API 的操作指南:配置 N8N_API_BASE_URL 与 N8N_API_KEY,列出与启停工作流,触发生产/测试 Webhook,查看与重试执行,并给出健康检查与失败排查流程。

codedao12
codedao12
热度 76.19
最近更新 2026-05-11 15:52:26
分类:自动化依赖:代码执行 / 第三方 API应用场景:工作流 / 自动化脚本 / API 集成

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add n8n-api
Metadata
name
n8n-api
description
Operate n8n via its public REST API from OpenClaw. Use for workflow management, executions, and automation tasks such as listing, creating, publishing, triggering, or troubleshooting. Works with both self-hosted n8n and n8n Cloud.

n8n Public REST API

Use this skill when you need to drive n8n programmatically. It covers the same core actions you use in the UI: workflows, executions, tags, credentials, projects, and more.

Availability

  • The public API is unavailable during the free trial.
  • Upgrade your plan to enable API access.

Configuration

Recommended environment variables (or store in .n8n-api-config):

export N8N_API_BASE_URL="https://your-instance.app.n8n.cloud/api/v1"  # or http://localhost:5678/api/v1
export N8N_API_KEY="your-api-key-here"

Create the API key in: n8n Settings → n8n API → Create an API key.

Auth header

All requests require this header:

X-N8N-API-KEY: $N8N_API_KEY

Playground

The API playground is only available on self-hosted n8n and operates on real data. For safe experiments, use a test workflow or a separate test instance.

Quick actions

Workflows: list

curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_BASE_URL/workflows" \
  | jq '.data[] | {id, name, active}'

Workflows: details

curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" "$N8N_API_BASE_URL/workflows/{id}"

Workflows: activate or deactivate

# Activate (publish)
curl -s -X POST -H "X-N8N-API-KEY: $N8N_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"versionId":"","name":"","description":""}' \
  "$N8N_API_BASE_URL/workflows/{id}/activate"

# Deactivate
curl -s -X POST -H "X-N8N-API-KEY: $N8N_API_KEY" \
  "$N8N_API_BASE_URL/workflows/{id}/deactivate"

Webhook trigger

# Production webhook
curl -s -X POST "$N8N_API_BASE_URL/../webhook/{webhook-path}" \
  -H "Content-Type: application/json" \
  -d '{"key":"value"}'

# Test webhook
curl -s -X POST "$N8N_API_BASE_URL/../webhook-test/{webhook-path}" \
  -H "Content-Type: application/json" \
  -d '{"key":"value"}'

Executions: list

# Recent executions
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" \
  "$N8N_API_BASE_URL/executions?limit=10" \
  | jq '.data[] | {id, workflowId, status, startedAt}'

# Failed only
curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" \
  "$N8N_API_BASE_URL/executions?status=error&limit=5"

Executions: retry

curl -s -X POST -H "X-N8N-API-KEY: $N8N_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"loadWorkflow":true}' \
  "$N8N_API_BASE_URL/executions/{id}/retry"

Common flows

Health check summary

Count active workflows and recent failures:

ACTIVE=$(curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" \
  "$N8N_API_BASE_URL/workflows?active=true" | jq '.data | length')

FAILED=$(curl -s -H "X-N8N-API-KEY: $N8N_API_KEY" \
  "$N8N_API_BASE_URL/executions?status=error&limit=100" \
  | jq '[.data[] | select(.startedAt > (now - 86400 | todate))] | length')

echo "Active workflows: $ACTIVE | Failed (24h): $FAILED"

Debug a failed run

  1. List failed executions to get the execution ID.
  2. Fetch execution details and identify the failing node.
  3. Review node parameters and input data.
  4. Suggest a fix based on the error message.

Endpoint index

See assets/n8n-api.endpoints.md for the full list of endpoints.

REST basics (optional)

If you want a refresher, these are commonly recommended:

  • KnowledgeOwl: working with APIs (intro)
  • IBM Cloud Learn Hub: what is an API / REST API
  • MDN: overview of HTTP

Notes and tips

  • The n8n API node can call the public API from inside workflows.
  • Webhook URLs are not the same as API URLs and do not use the API key header.
  • Execution records may be pruned based on instance retention settings.