تصحيحات يجب إجراؤها في قسم N8N102 الدرس العملي 2

مرحبا بك في المجتمع،

أنا أتابع دورة N8N102 وأصل إلى قسم الممارسة العملية 2.

لقد وجدت بعض الأخطاء في التعليمات، ربما تأتي من دورات الأساسيات القديمة.

  1. يرسل اختبار webhook سلسلة نصية غير صحيحة للقيمة total بدلاً من رقم في التشغيل رقم 1. هذا يمنع سير العمل من التنفيذ بشكل صحيح، إلا إذا تم تفعيل خيار “تحويل الأنواع عند الحاجة”.

  2. في عقدة “InsertOrder” في سير العمل الفرعي المستدعى، أعتقد أنه يجب تعيين “status” إلى “received”. حاولت استدعاء ProcessingAPI مع حالة “processed” وحصلت على حالة “failed” في الرد.

  3. عنوان URL لـ webhook “CallProcessingAPI” هو https://learn.app.n8n.cloud/webhook/course/foundations/process-order. يجب أن يكون https://learn.app.n8n.cloud/webhook/course/n8n102/process-order

  4. بعد إكمال الخطوة 3، يبدو أن اختبار الخطوة 2 لم يعد يمر. أردت التحقق من نجاح جميع وحدات الاختبار الثلاث، وكان عليّ استعادة سير العمل الرئيسي إلى النسخة المنشورة السابقة حتى تنجح.

مرحبا،

شكراً لك على الإشارة إلى هذه النقاط.

  1. تم إصلاح هذا
  2. تم تحديث هذا
  3. تم تحديث هذا.
  4. سير العمل الكامل من الخطوة 3 يجب أن يعمل عبر جميع الاختبارات، لقد اختبرت الخاص بي للتو وهو يجتاز جميع الخطوات الـ 3.

مع أطيب التحيات،

مرحبا،

شكرا على هذا! أنا بصراحة أتلقى نفس رسالة الخطأ " Wrong type: ‘1’ is a string but was expecting a number [condition 1, item 0]" عند اختبار الخطوة 1 من Webhook Tester.

إليك أول عقدتين لديّ:

لا يمكنني معرفة الجزء الذي أفتقده لكي تعمل هذه العقدة :sweat_smile:

مرحباً،

لقد قمت بنسخ العقدتين الخاصتين بك، وأضفت عقد الرد على webhook المطلوبة بعدهما، وهي تعمل بنجاح. يرسل المختبر لدينا الأنواع الصحيحة.

هل يمكنك من فضلك تقديم السجل الكامل لما يتم إرساله إلى نقطة النهاية الخاصة بك حتى أتمكن من التحقق منه؟

مع التحيات،

مرحبا، هل يمكنك مساعدتي من فضلك؟ لا يمكنني المتابعة بعد الخطوة 1. هذا هو الخطأ الذي أتلقاه

هذا هو شكل سير العمل الخاص بي:

[
{
“headers”: {
“host”: “mbakari.app.n8n.cloud”,
“user-agent”: “n8n”,
“content-length”: “46”,
“accept”: “application/json,text/html,application/xhtml+xml,application/xml,text/;q=0.9, image/;q=0.8, /;q=0.7”,
“accept-encoding”: “gzip, br”,
“cdn-loop”: “cloudflare; loops=1; subreqs=1”,
“cf-connecting-ip”: “4.184.78.241”,
“cf-ew-via”: “15”,
“cf-ipcountry”: “DE”,
“cf-ray”: “a1188fed6cb2bb61-FRA”,
“cf-visitor”: “{"scheme":"https"}”,
“cf-worker”: “n8n.cloud”,
“content-type”: “application/json”,
“x-api-key”: “pFT1jtDoVHAmVan$7eb6”,
“x-forwarded-for”: “4.184.78.241, 172.68.192.157”,
“x-forwarded-host”: “mbakari.app.n8n.cloud”,
“x-forwarded-port”: “443”,
“x-forwarded-proto”: “https”,
“x-forwarded-server”: “traefik-prod-users-swc-20-df7569f7f-6tb77”,
“x-is-trusted”: “yes”,
“x-real-ip”: “4.184.78.241”
},
“params”: {},
“query”: {},
“body”: {
“order_id”: “1”,
“total”: “1”,
“customer_id”: “1”
},
“webhookUrl”: “https://mbakari.app.n8n.cloud/webhook-test/course/n8n102/new-order”,
“executionMode”: “test”
}
]

نفس المشكلة، لا يمكن المتابعة لأنها لا ترجع أي شيء للخطأ 400

يا إلهي! هل سيصلحونها؟ هل نحن عالقون؟ ماذا نفعل؟

تحديث: فريق n8n قام بإصلاح المشكلة، لذا لم تعد هذه الحيلة ضرورية.

مرحبا،

واجهت نفس المشكلة لكنني وجدت هذا الحل البديل، حتى نتمكن من إكمال القسمين 2 و 3 وتجنب إهدار هذا الأسبوع في انتظار إصلاح رسمي. آمل أن تجد هذا مفيداً.

كان بإمكاننا تفعيل زر “تشغيل اختبارات الخطوة 2” دون إكمال الخطوة 1 أولاً.

النتيجة:

وجدت خطأ في هذا المكان، هل يمكن للمطورين إصلاح هذه المشكلة؟ لا يمكنني اجتياز الدورة

أنا عالق في Node: SendToPriorityQueue، أهدرت يومي كله اليوم محاولاً إصلاحه لكن لا يمكنني تجاوز هذه النقطة التي توقف تقدمي في الدورة إلى الأبد، إرسال JSON كامل ونص الخطأ التالي

JSON كامل:
{
“nodes”: [
{
“parameters”: {},
“type”: “n8n-nodes-base.manualTrigger”,
“typeVersion”: 1,
“position”: [
-512,
208
],
“id”: “c94cabc3-98bb-414a-9f7a-57d043c3a748”,
“name”: “TriggerManual”
},
{
“parameters”: {
“url”: “https://learn.app.n8n.cloud/webhook/course/n8n102/orders”,
“authentication”: “genericCredentialType”,
“genericAuthType”: “httpHeaderAuth”,
“sendHeaders”: true,
“headerParameters”: {
“parameters”: [
{
“name”: “X-Assessment-ID”,
“value”: “4bc05b1b9cc576b8cd6cd3cccc29a8da”
}
]
},
“options”: {
“pagination”: {
“pagination”: {
“parameters”: {
“parameters”: [
{
“name”: “page”,
“value”: “={{ $pageCount + 1 }}”
}
]
}
}
}
}
},
“type”: “n8n-nodes-base.httpRequest”,
“typeVersion”: 4.4,
“position”: [
-288,
112
],
“id”: “40e35e92-29c4-4b0b-b670-79d3ede50dd5”,
“name”: “GetOrders”,
“credentials”: {
“httpHeaderAuth”: {
“id”: “vMHAPkPKaravjcEZ”,
“name”: “n8n Academy API Key”
}
}
},
{
“parameters”: {
“url”: “https://learn.app.n8n.cloud/webhook/course/n8n102/customers”,
“authentication”: “genericCredentialType”,
“genericAuthType”: “httpHeaderAuth”,
“sendHeaders”: true,
“headerParameters”: {
“parameters”: [
{
“name”: “X-Assessment-ID”,
“value”: “4bc05b1b9cc576b8cd6cd3cccc29a8da”
}
]
},
“options”: {}
},
“type”: “n8n-nodes-base.httpRequest”,
“typeVersion”: 4.4,
“position”: [
-288,
304
],
“id”: “3fad8be8-4433-49ec-8bad-bfc781e676ba”,
“name”: “GetCustomers”,
“credentials”: {
“httpHeaderAuth”: {
“id”: “vMHAPkPKaravjcEZ”,
“name”: “n8n Academy API Key”
}
}
},
{
“parameters”: {
“mode”: “combine”,
“fieldsToMatchString”: “customer_id”,
“joinMode”: “enrichInput1”,
“options”: {}
},
“type”: “n8n-nodes-base.merge”,
“typeVersion”: 3.2,
“position”: [
-64,
208
],
“id”: “fc2ed990-2d94-4a4b-aed3-79ed3688e53c”,
“name”: “MergeOrdersCustomers”
},
{
“parameters”: {
“aggregate”: “aggregateAllItemData”,
“destinationFieldName”: “enriched_orders”,
“options”: {}
},
“type”: “n8n-nodes-base.aggregate”,
“typeVersion”: 1,
“position”: [
160,
-16
],
“id”: “a1934843-0eaa-4990-8a3f-12fa0f60c4bd”,
“name”: “AggregateOrders”
},
{
“parameters”: {
“method”: “POST”,
“url”: “https://learn.app.n8n.cloud/webhook/course/n8n102/orders-queue”,
“authentication”: “genericCredentialType”,
“genericAuthType”: “httpHeaderAuth”,
“sendHeaders”: true,
“headerParameters”: {
“parameters”: [
{
“name”: “X-Assessment-ID”,
“value”: “4bc05b1b9cc576b8cd6cd3cccc29a8da”
}
]
},
“sendBody”: true,
“bodyParameters”: {
“parameters”: [
{
“name”: “enriched_orders”,
“value”: “={{ $json.enriched_orders }}”
}
]
},
“options”: {}
},
“type”: “n8n-nodes-base.httpRequest”,
“typeVersion”: 4.4,
“position”: [
384,
-16
],
“id”: “0cf07ce8-68ad-4fec-bdd5-9e3e593795d6”,
“name”: “SendToOrdersQueue”,
“credentials”: {
“httpHeaderAuth”: {
“id”: “vMHAPkPKaravjcEZ”,
“name”: “n8n Academy API Key”
}
}
},
{
“parameters”: {
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “92dde10e-a0ac-4901-985e-6a0e8a1963e4”,
“leftValue”: “={{ $json.subscription }}”,
“rightValue”: “Enterprise”,
“operator”: {
“type”: “string”,
“operation”: “equals”,
“name”: “filter.operator.equals”
}
}
],
“combinator”: “and”
},
“options”: {}
},
“type”: “n8n-nodes-base.if”,
“typeVersion”: 2.3,
“position”: [
160,
304
],
“id”: “cec1001d-a5b4-4e84-9470-06d40d4f90b4”,
“name”: “CheckSubscriptionTier”
},
{
“parameters”: {
“rules”: {
“values”: [
{
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“leftValue”: “={{ $json.region }}”,
“rightValue”: “north”,
“operator”: {
“type”: “string”,
“operation”: “equals”
},
“id”: “9585e06c-4bf6-4422-b8d9-c65c8aa315ad”
}
],
“combinator”: “and”
},
“renameOutput”: true,
“outputKey”: “North”
},
{
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “4002a616-dbfd-4991-a1e0-72c888ac3bd9”,
“leftValue”: “={{ $json.region }}”,
“rightValue”: “south”,
“operator”: {
“type”: “string”,
“operation”: “equals”,
“name”: “filter.operator.equals”
}
}
],
“combinator”: “and”
},
“renameOutput”: true,
“outputKey”: “South”
},
{
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “9f1f69c9-19bc-4738-a1e2-7cc2be1ba95f”,
“leftValue”: “={{ $json.region }}”,
“rightValue”: “e”,
“operator”: {
“type”: “string”,
“operation”: “equals”,
“name”: “filter.operator.equals”
}
}
],
“combinator”: “and”
},
“renameOutput”: true,
“outputKey”: “East”
},
{
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “6a7b5b7f-1a45-4b11-9efb-5b3b7cbe7e76”,
“leftValue”: “={{ $json.region }}”,
“rightValue”: “west”,
“operator”: {
“type”: “string”,
“operation”: “equals”,
“name”: “filter.operator.equals”
}
}
],
“combinator”: “and”
},
“renameOutput”: true,
“outputKey”: “West”
}
]
},
“options”: {
“fallbackOutput”: “extra”
}
},
“type”: “n8n-nodes-base.switch”,
“typeVersion”: 3.4,
“position”: [
384,
368
],
“id”: “4cca393c-d01e-4552-a4c4-60f20c5d9a76”,
“name”: “RouteByRegion”
},
{
“parameters”: {
“conditions”: {
“options”: {
“caseSensitive”: true,
“leftValue”: “”,
“typeValidation”: “strict”,
“version”: 3
},
“conditions”: [
{
“id”: “6f605cb6-29ce-47ad-adc2-ae26af637db2”,
“leftValue”: “={{ $json.status }}”,
“rightValue”: “delivered”,
“operator”: {
“type”: “string”,
“operation”: “notEquals”
}
}
],
“combinator”: “and”
},
“options”: {}
},
“type”: “n8n-nodes-base.filter”,
“typeVersion”: 2.3,
“position”: [
384,
176
],
“id”: “cbeb6ae5-04d7-42bb-b562-a7dc31997144”,
“name”: “FilterDelivered”
},
{
“parameters”: {
“method”: “POST”,
“url”: “https://learn.app.n8n.cloud/webhook/course/n8n102/priority-queue”,
“authentication”: “genericCredentialType”,
“genericAuthType”: “httpHeaderAuth”,
“sendHeaders”: true,
“headerParameters”: {
“parameters”: [
{
“name”: “X-Assessment-ID”,
“value”: “4bc05b1b9cc576b8cd6cd3cccc29a8da”
}
]
},
“sendBody”: true,
“bodyParameters”: {
“parameters”: [
{
“name”: “order_id”,
“value”: “={{ $json.order_id }}”
},
{
“name”: “customer_id”,
“value”: “={{ $json.customer_id }}”
},
{
“name”: “company_name”,
“value”: “={{ $json.customer_name }}”
},
{
“name”: “subscription”,
“value”: “={{ $json.subscription }}”
}
]
},
“options”: {}
},
“type”: “n8n-nodes-base.httpRequest”,
“typeVersion”: 4.4,
“position”: [
704,
176
],
“id”: “648920ef-df9c-41ad-a978-70b082ce97d9”,
“name”: “SendToPriorityQueue”,
“credentials”: {
“httpHeaderAuth”: {
“id”: “vMHAPkPKaravjcEZ”,
“name”: “n8n Academy API Key”
}
}
}
],
“connections”: {
“TriggerManual”: {
“main”: [
[
{
“node”: “GetOrders”,
“type”: “main”,
“index”: 0
},
{
“node”: “GetCustomers”,
“type”: “main”,
“index”: 0
}
]
]
},
“GetOrders”: {
“main”: [
[
{
“node”: “MergeOrdersCustomers”,
“type”: “main”,
“index”: 0
}
]
]
},
“GetCustomers”: {
“main”: [
[
{
“node”: “MergeOrdersCustomers”,
“type”: “main”,
“index”: 1
}
]
]
},
“MergeOrdersCustomers”: {
“main”: [
[
{
“node”: “AggregateOrders”,
“type”: “main”,
“index”: 0
},
{
“node”: “CheckSubscriptionTier”,
“type”: “main”,
“index”: 0
}
]
]
},
“AggregateOrders”: {
“main”: [
[
{
“node”: “SendToOrdersQueue”,
“type”: “main”,
“index”: 0
}
]
]
},
“SendToOrdersQueue”: {
“main”: [

]
},
“CheckSubscriptionTier”: {
“main”: [
[
{
“node”: “FilterDelivered”,
“type”: “main”,
“index”: 0
}
],
[
{
“node”: “RouteByRegion”,
“type”: “main”,
“index”: 0
}
]
]
},
“FilterDelivered”: {
“main”: [
[
{
“node”: “SendToPriorityQueue”,
“type”: “main”,
“index”: 0
}
]
]
}
},
“pinData”: {},
“meta”: {
“instanceId”: “1b202188b62737e64678f469a8e86b98e8d2c2147255e95f1e4af4dc019b5e9d”
}
}

إخراج الخطأ:
{
“errorMessage”: “طلبك غير صحيح أو لم تتمكن الخدمة من معالجته [العنصر 0]”,
“errorDescription”: “معرّف الطلب غير صحيح. يرجى التأكد من إرسال معرّف الطلب الصحيح”,
“errorDetails”: {
“rawErrorMessage”: [
“422 - "{\"error\":\"معرّف الطلب غير صحيح. يرجى التأكد من إرسال معرّف الطلب الصحيح\"}"”
],
“httpCode”: “422”
},
“n8nDetails”: {
“nodeName”: “SendToPriorityQueue”,
“nodeType”: “n8n-nodes-base.httpRequest”,
“nodeVersion”: 4.4,
“itemIndex”: 0,
“time”: “6/26/2026, 6:29:18 PM”,
“n8nVersion”: “2.22.5 (Self Hosted)”,
“binaryDataMode”: “filesystem”,
“stackTrace”: [
“NodeApiError: طلبك غير صحيح أو لم تتمكن الخدمة من معالجته”,
" at ExecuteContext.execute (C:\Users\Usman\AppData\Roaming\npm\node_modules\n8n\node_modules\n8n-nodes-base\nodes\HttpRequest\V3\HttpRequestV3.node.ts:849:16)“,
" at WorkflowExecute.executeNode (C:\Users\Usman\AppData\Roaming\npm\node_modules\n8n\node_modules\n8n-core\src\execution-engine\workflow-execute.ts:1053:9)”,
" at WorkflowExecute.runNode (C:\Users\Usman\AppData\Roaming\npm\node_modules\n8n\node_modules\n8n-core\src\execution-engine\workflow-execute.ts:1327:11)“,
" at C:\Users\Usman\AppData\Roaming\npm\node_modules\n8n\node_modules\n8n-core\src\execution-engine\workflow-execute.ts:1778:27”,
" at C:\Users\Usman\AppData\Roaming\npm\node_modules\n8n\node_modules\n8n-core\src\execution-engine\workflow-execute.ts:2426:11"
]
}
}

أواجه بالضبط هذه المشكلة أيضاً

أواجه نفس المشكلة مع هذا أيضًا، يرجى إصلاحها

هل يمكن لأي شخص يواجه خطأ في مشكلة الطلب الانتقال إلى هنا؟ N8n: N8N102 Integrations: APIs & Connected Workflows - #5 by achamm

مرحبًا جميعًا،

أعتذر عن التأخير، كان هذا خطأ مثيرًا للاهتمام جدًا واستغرق وقتًا طويلاً للعثور عليه وإصلاحه واختباره. تم إصلاحه الآن.

تحياتي،

مرحباً جيمي،

شكراً جزيلاً على المتابعة! أستطيع أن أرى أن جميع عمليات التنفيذ تعمل بشكل صحيح الآن.

لا يزال اختبار Webhook يفشل في الخطوة 1 إذا تم تنفيذ الخطوات 2 و3. استجابة webhook لا تطابق الاستجابة المتوقعة، حيث يتم الإرسال

{ 
"order_id": 
"VALIDURL-TEST",
   
"processing_result": 
"processed",
  
"processed_at": 
"\"2026-06-28T06:48:25.712Z\"",
  
"stored": 
"true",
  
"stored_order": 
"{\"order_id\":\"VALIDURL-TEST\",\"customer_id\":\"VALIDURL-TEST\",\"total\":0,\"status\":\"processed\",\"received_at\":\"2026-06-27T19:42:24.838Z\",\"processed_at\":\"2026-06-28T06:48:25.712Z\",\"id\":36,\"createdAt\":\"2026-06-27T19:42:24.846Z\",\"updatedAt\":\"2026-06-27T19:42:26.643Z\"}"
}

بدلاً من الاستجابة المتوقعة

{
  "status": "accepted",
  "order_id": "{{ $('WebhookNewOrder').item.json.body.order_id }}",
  "message": "Order received and queued for processing"
}

إذا احتاج أحد ما إلى إعادة التحقق من عمله من خلال اختبار Webhook بعد إكمال الخطوة 2 أو 3 من التمرين، فسيواجه مشكلة في التحقق من الخطوة 1.

لا أعرف ما إذا كان هذا يحتاج إلى تصحيح، لكنني أردت إطلاعك على هذا الموضوع.

هل حصلت على الحل؟

نعم، لكنني لا أتذكر الكثير حقًا، شيء واحد مؤكد، أنني استخدمت ChatGPT/Gemini بإرسال لقطات شاشة والسؤال عن حل أو طريقة بديلة لتشغيل سير العمل بنجاح، وتم إنجازه بعدها