راهنمای جامع نود HTTP Request در n8n (۱۴۰۴): اتصال به هر API بدون محدودیت
فرض کنید هزینه ماهانه Zapier برای اتصال HubSpot به سیستم حسابداری داخلی شما سر به فلک کشیده است. یا بدتر، میخواهید به API جدید یک سرویس ایرانی (مثل یک پنل پیامک یا CRM) متصل شوید که هیچ اینتگریشن آمادهای در پلتفرمهای خارجی ندارد.
این بنبست، نقطه شروع قدرت واقعی شماست. اینجا جایی است که ابزارهای کلیکمحور به پایان خط میرسند و مهندسان کنترل را به دست میگیرند.
این مطلب صرفاً یک آموزش کامل n8n برای مبتدیان نیست؛ بلکه یک دستورالعمل جنگی برای استفاده از قدرتمندترین ابزار این پلتفرم، یعنی نود HTTP Request است. با تسلط بر این نود، شما میتوانید هر اتوماسیونی که فکرش را بکنید، بدون هزینه اضافه لایسنس و بدون محدودیت پلتفرمهای دیگر بسازید.
این نود، کابوس Zapier و دلیل اصلی مهاجرت تیمهای فنی به n8n در سال ۲۰۲۶ است.
آناتومی یک درخواست API در n8n: از متد تا هدر (راهنمای ۱۴۰۴)

نود HTTP Request در n8n، پنل کنترل شما برای ارتباط با دنیای خارج است. هر فیلد در این نود، یک بخش از مکالمه شما با سرور مقصد را تعیین میکند. بیایید این پنل را کالبدشکافی کنیم:
1. Method (متد): فعلِ دستور شما. مشخص میکند که از سرور چه میخواهید. آیا قصد گرفتن دیتا (GET) را دارید یا ارسال دیتای جدید (POST)؟
2. URL (آدرس): آدرس دقیق Endpoint. اینجا همان آدرسی است که میخواهید دیتا را به آنجا بفرستید یا از آنجا اطلاعات بگیرید. این آدرس باید کامل و دقیق باشد.
3. Authentication (احراز هویت): کلید ورود به سرور. سرورها برای اطمینان از هویت شما، به یک مکانیزم تایید نیاز دارند. اینجا مشخص میکنید که از چه روشی (مثلاً API Key یا OAuth2) استفاده میکنید.
4. Send (نحوه ارسال): مشخص میکند پارامترهای شما چطور ارسال شوند. در ۹۹٪ موارد، شما با Query Parameters (برای GET) و Body (برای POST/PUT) کار خواهید کرد.
5. Headers (سرآیندها): فرادادههای (Metadata) درخواست شما. مثل زبان مکالمه یا نوع محتوایی که ارسال میکنید. یکی از مهمترین هدرها Content-Type است که به سرور میگوید فرمت دیتای ارسالی شما چیست (مثلاً application/json).
6. Query Parameters (پارامترهای پرسوجو): فیلترهای شما برای درخواستهای GET. وقتی میخواهید از یک لیست بزرگ، فقط آیتمهای خاصی را بگیرید (مثلاً کاربرانی که در سال ۱۴۰۴ ثبتنام کردهاند)، از این پارامترها استفاده میکنید.
7. Body (بدنه): محموله اصلی شما. وقتی دیتایی را با متد POST یا PUT ارسال میکنید، اصل اطلاعات در این قسمت قرار میگیرد، معمولاً در فرمت JSON.
8. Options (تنظیمات پیشرفته): جعبه ابزار حرفهایها. تنظیماتی مثل Timeout، نادیده گرفتن خطاهای SSL (برای محیط تست) و تنظیمات پروکسی در اینجا قرار دارند.
در پروژههای واقعی، انتخاب متد صحیح اولین و مهمترین قدم است. جدول زیر به شما کمک میکند تا تصمیم درستی بگیرید:
| متد (Method) | کاربرد اصلی | مثال در یک ورکفلوی n8n |
| :— | :— | :— |
| GET | خواندن و دریافت اطلاعات از یک منبع. | دریافت لیست آخرین مقالات از API وردپرس برای ارسال در شبکههای اجتماعی. |
| POST | ایجاد یک منبع جدید. | ثبت اطلاعات یک کاربر جدید در CRM دیدار پس از پر کردن فرم تماس. |
| PUT | جایگزینی کامل یک منبع موجود. | آپدیت کامل پروفایل یک کاربر (مثلاً نام، ایمیل و تلفن) در یک مرحله. |
| PATCH | آپدیت جزئی یک منبع موجود. | تغییر فقط وضعیت یک سفارش از “در حال پردازش” به “ارسال شده” بدون دست زدن به بقیه اطلاعات سفارش. |
| DELETE | حذف یک منبع. | حذف یک کاربر از لیست ایمیل پس از اینکه روی لینک Unsubscribe کلیک کرد. |
ورکفلوی آماده: ثبت لیدهای سایت در CRM
همین ورکفلوی اتصال Elementor به CRM دیدار را به صورت یک فایل JSON آماده دریافت کنید. فقط ایمپورت کنید، کلید API خود را وارد کنید و در ۵ دقیقه، فرآیند ثبت لیدهای خود را برای همیشه اتوماتیک کنید.
فصل ۱: ارسال و دریافت دیتا (متدهای GET و POST با مثالهای واقعی)
تئوری کافی است. بیایید دو سناریوی واقعی را که ما در پروژههای کارورا با آن مواجه شدهایم، قدم به قدم پیادهسازی کنیم.
مثال ۱: ساخت داشبورد لحظهای قیمت ارز با متد GET
سناریو: میخواهیم هر ساعت، قیمت لحظهای دلار را از یک API عمومی بگیریم و در یک کانال تلگرام داخلی برای تیم فروش ارسال کنیم تا در فاکتورهای خود از آن استفاده کنند.
قدمها:
1. Trigger (ماشه): از نود Cron (در نسخههای جدید Schedule) استفاده کنید و زمانبندی را روی “Every Hour” تنظیم کنید. این نود ورکفلو را به صورت خودکار در بازههای زمانی مشخص اجرا میکند.
2. HTTP Request Node (پیکربندی):
GET (چون فقط قصد خواندن اطلاعات را داریم).https://api.example.com/v1/currency/usd.None (چون این یک API عمومی است).Item Lists (عملیات Split Out) متصل کنید.3. Telegram Node (ارسال پیام):
Telegram اضافه کنید و Credential خود را تنظیم کنید.text
قیمت لحظهای دلار:
خرید: {{ $json[“buy_price”] }} تومان
فروش: {{ $json[“sell_price”] }} تومان
آخرین بروزرسانی: {{ new Date($json[“last_updated”]).toLocaleString(‘fa-IR’) }}
این عبارتها ({{...}}) به n8n میگویند که مقادیر buy_price و sell_price را از خروجی JSON نود قبلی (متغیر $json) بخواند و در پیام جایگزین کند.
با اجرای این ورکفلو، هر ساعت یک پیام تمیز و خودکار با قیمتهای جدید در کانال تلگرام شما ارسال میشود.
مثال ۲: ثبت لید از فرم Elementor در CRM دیدار با متد POST
سناریو: یک فرم “درخواست دمو” در وبسایت وردپرسی خود با Elementor ساختهایم. میخواهیم به محض اینکه کاربری فرم را پر کرد، اطلاعات او به صورت خودکار به عنوان یک “لید جدید” در CRM دیدار ثبت شود.
قدمها:
1. Trigger (ماشه): از نود Webhook استفاده کنید. n8n یک URL یکتا به شما میدهد. این URL را در تنظیمات فرم Elementor در بخش “Actions After Submit” و زیرمجموعه “Webhook” قرار دهید. حالا هر بار که فرم سابمیت شود، Elementor تمام اطلاعات را به این آدرس ارسال میکند.
> ⚠️ نکته امنیتی: URLهای وبهوک عمومی هستند. برای جلوگیری از ارسال اسپم، پیشنهاد میکنیم در هدر درخواستهای Elementor یک توکن امنیتی دلخواه ارسال کنید و در ابتدای ورکفلو با یک نود If آن را چک کنید.
2. HTTP Request Node (پیکربندی):
POST (چون قصد ایجاد یک موجودیت جدید یعنی “لید” را داریم).https://api.didar.me/api/leads.Body.JSON.Content-Type و مقدار application/json اضافه کنید. این به سرور دیدار میگوید که ما در حال ارسال داده با فرمت JSON هستیم. تجربه ما نشان داده که فراموش کردن این هدر، یکی از رایجترین دلایل خطای 400 Bad Request است.{
“firstName”: “{{ $json.body.form_fields.name }}”,
“lastName”: “”,
“company”: “{{ $json.body.form_fields.company }}”,
“phones”: [
{
“phone”: “{{ $json.body.form_fields.phone }}”,
“type”: “mobile”
}
],
“emails”: [
{
“email”: “{{ $json.body.form_fields.email }}”,
“type”: “work”
}
]
}
در کد بالا، ما مقادیر فیلدهای فرم (name, company, phone, email) که از وبهوک Elementor آمدهاند را به فیلدهای متناظر در API دیدار “مپ” کردهایم.
3. If Node (بررسی موفقیت): (اختیاری اما به شدت توصیه میشود)
If بعد از HTTP Request قرار دهید.Status Code خروجی نود HTTP Request برابر با 201 (کد استاندارد برای “Created”) باشد.این ورکفلو، فرآیند ثبت لید را کاملاً خودکار کرده و ریسک خطای انسانی را به حداقل میرساند.

فصل ۲: احراز هویت (Authentication): کلید ورود به APIهای امن
بدون احراز هویت صحیح، اکثر APIهای کاربردی به شما اجازه ورود نخواهند داد. این بخش شما را از یک کاربر عادی به یک کاربر حرفهای تبدیل میکند. n8n سه روش اصلی را به صورت داخلی پشتیبانی میکند.
۱. Bearer Token / API Key
این سادهترین و رایجترین روش است. سرویس مقصد یک کلید (رشتهای از حروف و اعداد) به شما میدهد و شما باید آن را در هر درخواست، در هدر Authorization ارسال کنید.
مثال: اتصال به API گیتهاب برای دریافت لیست ریپازیتوریها
1. در نود HTTP Request، به تب Authentication بروید و Header Auth را انتخاب کنید.
2. Name: Authorization
3. Value: Bearer YOUR_GITHUB_PERSONAL_ACCESS_TOKEN
مقدار Value باید دقیقاً با کلمه Bearer و یک فاصله شروع شود و سپس توکن شما قرار گیرد.
نکته حرفهای: هرگز کلیدهای API را مستقیماً در فیلد Value وارد نکنید. این یک ریسک امنیتی بزرگ است. به جای آن، از سیستم Credentials داخلی n8n استفاده کنید. یک Header Auth Credential جدید بسازید، کلید خود را آنجا ذخیره کنید و سپس آن را در نود خود انتخاب کنید. با این کار، اگر ورکفلو را به اشتراک بگذارید، کلیدهای شما مخفی باقی میمانند.
۲. OAuth2
OAuth2 یک پروتکل استاندارد و امنتر برای احراز هویت است. به جای یک کلید ثابت، این فرآیند شامل یک “دست دادن” (handshake) بین n8n و سرویس مقصد برای دریافت یک توکن دسترسی موقت (Access Token) است. این توکن پس از مدتی منقضی میشود و باید با استفاده از یک Refresh Token تمدید شود.
خبر خوب این است که n8n تمام این پیچیدگی را برای شما مدیریت میکند.
مثال: اتصال به Google Calendar برای ایجاد یک رویداد
1. در پنل n8n، به بخش Credentials بروید و روی Add Credential کلیک کنید.
2. Google OAuth2 API را جستجو و انتخاب کنید.
3. n8n شما را راهنمایی میکند که یک Client ID و Client Secret از کنسول توسعهدهندگان گوگل دریافت کنید.
4. این مقادیر را در n8n وارد کرده و روی دکمه Sign in with Google کلیک کنید. شما به صفحه گوگل هدایت میشوید، دسترسیها را تایید میکنید و به n8n بازمیگردید.
5. تمام شد! حالا در هر نودی که با گوگل کار میکند (مثل Google Calendar, Google Sheets)، میتوانید این Credential را انتخاب کنید و n8n به صورت خودکار فرآیند دریافت و تمدید توکن را مدیریت خواهد کرد. شما دیگر هرگز نگران منقضی شدن توکن نخواهید بود.
۳. Basic Auth
این یک روش قدیمیتر است که هنوز در برخی APIهای داخلی یا قدیمی استفاده میشود. در این روش، نام کاربری و رمز عبور به صورت base64 انکود شده و در هدر Authorization ارسال میشوند.
n8n این فرآیند را نیز ساده کرده است:
1. در تب Authentication، گزینه Basic Auth را انتخاب کنید.
2. یک Credential از نوع Basic Auth Credential بسازید و نام کاربری و رمز عبور خود را در آن وارد کنید.
3. همین. n8n به صورت خودکار عملیات انکود کردن و قرار دادن آن در هدر را انجام میدهد.
فصل ۳: تکنیکهای پیشرفته برای حرفهایها (دیباگ، فایل و تنظیمات خاص)
تسلط بر موارد زیر، اعتبار شما را به عنوان یک متخصص اتوماسیون تثبیت میکند.
۱. کار با فایلها (Binary Data)
گاهی اوقات شما با JSON کار نمیکنید، بلکه با فایلهای واقعی سر و کار دارید؛ مثل دانلود یک PDF یا آپلود یک تصویر.
سناریو: دانلود فاکتور PDF از یک URL و ذخیره آن در Dropbox
1. نود اول: HTTP Request (دانلود فایل)
GEThttps://example.com/invoices/INV-123.pdfFile قرار دهید. این به n8n میگوید که پاسخ سرور را به عنوان داده باینری (و نه متن یا JSON) در نظر بگیرد.2. نود دوم: Dropbox (آپلود فایل)
Dropbox را اضافه کرده و Credential خود را تنظیم کنید.FileUploadOn قرار دهید.data است./invoices/{{ $now.toFormat('yyyy-MM-dd') }}_invoice.pdf.این ورکفلو به صورت خودکار فایل را دانلود و در پوشه مورد نظر شما در دراپباکس آپلود میکند.
۲. دیباگ و خطایابی (Debugging)
هیچ API بینقصی وجود ندارد. دیر یا زود با خطا مواجه میشوید. درک معنای کدهای خطا، نیمی از راه حل است.
| کد خطا | معنای فنی | علت احتمالی در n8n | راه حل پیشنهادی |
| :— | :— | :— | :— |
| 400 | Bad Request | ساختار JSON ارسالی در Body شما اشتباه است (مثلاً یک کاما جا افتاده) یا یک پارامتر الزامی را ارسال نکردهاید. | به تب Output در نود HTTP Request بروید و ساختار JSON ارسالی (Input) را کپی کرده و در یک JSON Validator آنلاین بررسی کنید. |
| 401 | Unauthorized | کلید API (API Key/Bearer Token) شما اشتباه است، منقضی شده یا اصلاً ارسال نشده است. | Credential خود را دوباره چک کنید. مطمئن شوید در هدر Authorization کلمه Bearer یا Basic را درست نوشتهاید. |
| 403 | Forbidden | کلید API شما معتبر است، اما شما دسترسی لازم برای انجام آن عمل خاص (مثلاً حذف یک کاربر) را ندارید. | دسترسیهای (Permissions/Scopes) کلید API خود را در پنل سرویس مقصد بررسی کنید. |
| 404 | Not Found | آدرس URL یا Endpoint که وارد کردهاید اشتباه است یا منبعی که به دنبال آن هستید وجود ندارد. | URL را با مستندات API تطبیق دهید. از صحت ID یا پارامترهای ارسالی اطمینان حاصل کنید. |
| 500 | Internal Server Error | مشکل از شما نیست، از سرور مقصد است. سرور در پردازش درخواست شما با یک خطای داخلی مواجه شده است. | چند دقیقه صبر کنید و دوباره تلاش کنید. اگر مشکل ادامه داشت، با پشتیبانی سرویس API تماس بگیرید. |
همیشه از تبهای Input و Output در نمای اجرای نود برای دیدن دادههای دقیق ورودی و خروجی استفاده کنید. این بهترین ابزار شما برای دیباگ است.
۳. تنظیمات پیشرفته (Options)
در پایین نود HTTP Request، بخشی به نام Options وجود دارد که در سناریوهای خاص به کار میآید:
نتیجهگیری: شما دیگر به اینتگریشنهای آماده محدود نیستید
با تسلط بر نود HTTP Request، پارادایم کاری شما تغییر میکند. شما دیگر یک «مصرفکننده» ابزارهای اتوماسیون نیستید که منتظر بمانید تا Zapier یا Make یک اپلیکیشن جدید را به لیست خود اضافه کنند. شما یک «خالق» سیستمهای یکپارچه هستید.
از این به بعد، وقتی با یک سرویس جدید مواجه میشوید، اولین سوال شما این نیست که “آیا این سرویس با n8n یکپارچه میشود؟”؛ بلکه این است که “مستندات API آن کجاست؟”
شما میتوانید هر سرویسی که یک API در اختیار شما قرار میدهد را در کمتر از چند دقیقه به اکوسیستم خود متصل کنید. این سطح از کنترل، انعطافپذیری و استقلال، ارزش اصلی و دلیل برتری n8n بر رقبای خود است. این قدرت واقعی مهندسی اتوماسیون است.
—
یک اتوماسیون پیچیده در ذهن دارید؟
گاهی اوقات اتصال به APIهای خاص یا ساخت ورکفلوهای چندمرحلهای چالشبرانگیز میشود. بیایید در یک جلسه ۱۵ دقیقهای رایگان، معماری اتوماسیون شما را بررسی کنیم. بدون هیچ تعهدی، فقط مشاوره فنی خالص.
