Перейти к содержимому

REST API

Справочник REST API n8n

Окно терминала
# Создание ключа: Settings → API → Create API Key
curl -H "X-N8N-API-KEY: your-api-key" \
https://n8n.example.com/api/v1/workflows
X-N8N-API-KEY: your-api-key
Окно терминала
GET /api/v1/workflows

Response:

{
"data": [
{
"id": "123",
"name": "My Workflow",
"active": true,
"createdAt": "2025-01-15T10:00:00.000Z",
"updatedAt": "2025-01-15T12:00:00.000Z"
}
]
}
Окно терминала
GET /api/v1/workflows/{id}
Окно терминала
POST /api/v1/workflows
Content-Type: application/json
{
"name": "New Workflow",
"nodes": [...],
"connections": {...},
"settings": {...}
}
Окно терминала
PUT /api/v1/workflows/{id}
Content-Type: application/json
{
"name": "Updated Workflow",
"nodes": [...],
"connections": {...}
}
Окно терминала
DELETE /api/v1/workflows/{id}
Окно терминала
POST /api/v1/workflows/{id}/activate
POST /api/v1/workflows/{id}/deactivate
Окно терминала
GET /api/v1/executions
# С фильтрами
GET /api/v1/executions?workflowId=123&status=success&limit=10

Parameters:

ПараметрОписание
workflowIdID workflow
statussuccess, error, waiting
limitКоличество (max 250)
Окно терминала
GET /api/v1/executions/{id}
Окно терминала
DELETE /api/v1/executions/{id}
Окно терминала
POST /api/v1/workflows/{id}/execute
Content-Type: application/json
{
"workflowData": {...} // опционально
}

Response:

{
"data": {
"executionId": "456"
}
}
Окно терминала
POST /api/v1/workflows/{id}/execute
Content-Type: application/json
{
"workflowData": {
"nodes": [...],
"connections": {...}
}
}
Окно терминала
GET /api/v1/credentials
Окно терминала
POST /api/v1/credentials
Content-Type: application/json
{
"name": "My API Key",
"type": "httpHeaderAuth",
"data": {
"name": "Authorization",
"value": "Bearer token"
}
}
Окно терминала
DELETE /api/v1/credentials/{id}
Окно терминала
GET /api/v1/users
Окно терминала
POST /api/v1/users
Content-Type: application/json
{
"email": "user@example.com",
"firstName": "John",
"lastName": "Doe",
"role": "member"
}
Окно терминала
GET /api/v1/tags
Окно терминала
POST /api/v1/tags
Content-Type: application/json
{
"name": "production"
}
Окно терминала
GET /api/v1/variables
Окно терминала
POST /api/v1/variables
Content-Type: application/json
{
"key": "API_URL",
"value": "https://api.example.com"
}
import requests
API_KEY = "your-api-key"
BASE_URL = "https://n8n.example.com/api/v1"
headers = {
"X-N8N-API-KEY": API_KEY,
"Content-Type": "application/json"
}
# Получить workflows
response = requests.get(f"{BASE_URL}/workflows", headers=headers)
workflows = response.json()["data"]
# Запустить workflow
response = requests.post(
f"{BASE_URL}/workflows/123/execute",
headers=headers
)
execution_id = response.json()["data"]["executionId"]
const API_KEY = 'your-api-key';
const BASE_URL = 'https://n8n.example.com/api/v1';
async function getWorkflows() {
const response = await fetch(`${BASE_URL}/workflows`, {
headers: {
'X-N8N-API-KEY': API_KEY
}
});
return response.json();
}
async function executeWorkflow(id) {
const response = await fetch(`${BASE_URL}/workflows/${id}/execute`, {
method: 'POST',
headers: {
'X-N8N-API-KEY': API_KEY,
'Content-Type': 'application/json'
}
});
return response.json();
}
Окно терминала
# Получить workflows
curl -H "X-N8N-API-KEY: key" \
https://n8n.example.com/api/v1/workflows
# Запустить workflow
curl -X POST \
-H "X-N8N-API-KEY: key" \
-H "Content-Type: application/json" \
https://n8n.example.com/api/v1/workflows/123/execute
# Создать workflow
curl -X POST \
-H "X-N8N-API-KEY: key" \
-H "Content-Type: application/json" \
-d '{"name":"Test","nodes":[],"connections":{}}' \
https://n8n.example.com/api/v1/workflows
EndpointLimit
Общий100 req/min
Execute20 req/min
КодОписание
400Bad Request
401Unauthorized (неверный API key)
404Not Found
429Rate Limit Exceeded
500Internal Server Error