در این قسمت از مجموعه آموزش n8n در کدیتی، قصد داریم به شما نشان دهیم n8n چیست و چرا در دنیای اتوماسیون بدون کد، یکی از قدرتمندترین ابزارهای متن‌باز به شمار می‌رود. اگر تا به حال با ابزارهایی مثل Zapier یا Make کار کرده باشید، n8n همان ایده را در قالبی بسیار آزادتر و قابل شخصی‌ سازی‌تر ارائه می‌دهد. در این آموزش یاد می‌گیرید چطور n8n را نصب و راه‌اندازی کنید، گردش کار (Workflow) بسازید و اولین اجرای موفق خود را انجام دهید.

n8n چیست؟

n8n یک ابزار اتوماسیون متن‌باز است که به شما اجازه می‌دهد بدون نیاز به کدنویسی، سیستم‌ها و سرویس‌های مختلف را به هم متصل کنید. با استفاده از Nodeها در n8n می‌توانید وظایف تکراری مثل ارسال ایمیل، به‌روزرسانی داده‌ها یا ذخیره اطلاعات را به‌صورت خودکار انجام دهید. این ابزار روی هر سیستم عاملی اجرا می‌شود و می‌توانید آن را هم به‌صورت لوکال و هم روی سرورهای ابری راه‌اندازی کنید.

 

 

مزایای استفاده از n8n

  • کاملاً متن‌باز (Open Source) و بدون محدودیت‌های پلتفرم‌های تجاری
  • قابل‌نصب روی سیستم شخصی، سرور یا Docker
  • پشتیبانی از بیش از ۲۰۰ سرویس محبوب از جمله Gmail، Slack، Telegram و Google Sheets
  • قابلیت ترکیب نودهای مختلف برای ساخت فلوهای پیچیده با شرط، حلقه، و مدیریت خطا

نصب و راه‌اندازی n8n

برای شروع، ساده‌ترین روش استفاده از n8n روی Docker یا به‌صورت محلی است. در محیط لوکال می‌توانید با اجرای دستور زیر در ترمینال n8n را راه‌اندازی کنید:

npx n8n

پس از اجرا، با باز کردن مرورگر و وارد کردن آدرس http://localhost:5678 وارد محیط گرافیکی n8n می‌شوید.

ساخت اولین Workflow

حالا زمان آن است که اولین گردش کار خود را بسازید. در این مثال می‌خواهیم فلو ساده‌ای ایجاد کنیم که درخواست HTTP را از طریق Webhook دریافت کند و در پاسخ، پیام خوش‌آمدگویی نمایش دهد.

گام ۱: ایجاد Webhook

  • از قسمت بالا روی + Add Node کلیک کنید.
  • گزینه Webhook را انتخاب کنید.
  • در قسمت HTTP Method گزینه POST را انتخاب کنید.
  • مسیر (Path) را برابر با hello بگذارید.
  • در قسمت Response Mode گزینه Last Node را انتخاب کنید تا خروجی آخرین نود به عنوان پاسخ برگردد.

گام ۲: افزودن Function برای پاسخ

  • یک نود جدید از نوع Function اضافه کنید.
  • در قسمت Function Code کد زیر را وارد کنید:
// Ready-to-run for n8n v1.8+
// این کد درخواست ورودی را می‌گیرد و پاسخ JSON برمی‌گرداند
const name = $json.name ? String($json.name).trim() : "کاربر";
return [
  {
    json: {
      ok: true,
      message: `سلام ${name}! خوش آمدی به دنیای n8n 🚀`,
      time: new Date().toISOString()
    }
  }
];

گام ۳: اجرای Workflow

  • روی Execute Workflow کلیک کنید.
  • با استفاده از ابزار Postman یا cURL درخواست POST ارسال کنید:
curl -X POST http://localhost:5678/webhook/hello \
  -H "Content-Type: application/json" \
  -d '{"name":"سارا"}'

در پاسخ، پیام خوش‌آمدگویی را به‌صورت JSON دریافت خواهید کرد.

آموزش ابزارهای هوش مصنوعی

اکسپورت آماده برای وارد کردن در n8n

کد زیر را کپی کنید و در n8n از منوی Import from Clipboard استفاده کنید. پس از وارد کردن، تنها کافی است Workflow را Active کرده و اجرا بگیرید.

{
  "name": "Codity - Hello API",
  "nodes": [
    {
      "parameters": {
        "path": "hello",
        "options": {
          "responseMode": "lastNode"
        },
        "httpMethod": "POST"
      },
      "id": "Webhook_Hello",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "typeVersion": 2,
      "position": [300, 300]
    },
    {
      "parameters": {
        "functionCode": "// Ready-to-run for n8n v1.8+\nconst name = $json.name ? String($json.name).trim() : \"کاربر\";\nreturn [{ json: { ok: true, message: `سلام ${name}! خوش آمدی به دنیای n8n 🚀`, time: new Date().toISOString() } }];"
      },
      "id": "Function_Reply",
      "name": "Build Reply",
      "type": "n8n-nodes-base.function",
      "typeVersion": 2,
      "position": [560, 300]
    }
  ],
  "connections": {
    "Webhook": {
      "main": [
        [
          {
            "node": "Build Reply",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  ],
  "settings": {
    "executionOrder": "v1"
  }
}

جمع‌ بندی

در این قسمت از آموزش n8n یاد گرفتید چگونه با ساخت یک Webhook ساده، داده ورودی را دریافت و در پاسخ، یک پیام JSON برگردانید. این مرحله اولین گام برای درک جریان داده در n8n است و پایه‌ی ساخت گردش کارهای پیچیده‌تر خواهد بود. در قسمت دوم یاد می‌گیرید چگونه Nodeها را با هم ترکیب کنید تا داده‌ها را پردازش کرده و خروجی‌های هوشمند بسازید.