Problem bei der Workflow-Übung von N8N101 Abschnitt 2 beim Versenden der CSV

Hallo zusammen. Ich benötige Hilfe bei N8N101 Abschnitt 2 zur Workflow-Übung - Schritt 4: Bericht generieren und finalisieren. Ich würde gerne wissen, ob jemand diesen Schritt geschafft hat und was ich noch tun könnte, um das Problem zu beheben.

Ich bin auf ein Problem gestoßen, als ich eine CSV-Datei an https://learn.app.n8n.cloud/webhook/course/n8n101/send-report senden wollte, und es antwortet immer leer.

Was habe ich bereits versucht zu beheben?

  • Ich habe zwei vorherige Kontrollpunkte erreicht, also ist der Workflow in diesen Stadien in Ordnung.
  • Ich habe noch einmal überprüft, dass ich die genauen Anweisungen für diesen Schritt befolgt habe.
  • Unten ist mein bisheriger Workflow und die CSV-Datei, die ich redigiert habe, um nicht die Lösung preiszugeben.

average_order_total;region;order_totals;order_count;report_generated;assessment_id
999.5;region1;999;9;2026-06-19 11:49:24;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
999.5;region2;999;9;2026-06-19 11:49:24;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
999;region3;999;9;2026-06-19 11:49:24;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
999.5;region4;999;9;2026-06-19 11:49:24;aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

Mir ist aufgefallen, dass die CSV eine assessment_id-Spalte hat, daher vermute ich, dass es möglicherweise ein Problem bei der Überprüfung gibt, die mit einem früheren Beitrag zusammenhängen könnte, bei dem assessment_id Probleme beim Versenden über den Header hatte.

Hi @kristinker

Danke, dass du das meldest, schon wieder ein Tippfehler meinerseits in unserem Workflow. Behoben und getestet.

Viele Grüße,

Hallo… Darf ich fragen, wie ich es beheben kann, da ich nach dem Versenden des Berichts immer noch nichts erhalte. Danke

Hallo asdrt,

Das Problem war, dass die n8n Academy in der CSV-Datei, die der Student auf seinen Server gesendet hat, assessment_it überprüft hat. Ich habe es erneut ausgeführt, und es funktioniert immer noch, daher könnte das Problem in deinem aktuellen Setup liegen.

Berücksichtige das Folgende. Du könntest deine vorherigen Schritte überprüfen, bevor du die CSV-Datei sendest, um zu sehen, welcher Schritt schiefgeht. Du könntest meinen ursprünglichen Beitrag als Checkliste verwenden:

  • Hast du die zwei vorherigen Checkpoints bestanden?
  • Sieht deine CSV-Datei wie die aus, die ich beigefügt habe? Die echten Daten sind reduziert, aber die Spaltennamen und die Gesamtzahl der Zeilen sind immer noch korrekt.
  • Hast du alle Anweisungen aus diesem Schritt befolgt (Node-Name, Datentyp, Feldname usw.)

Viel Erfolg

Ich habe bereits die vorherigen Checkpoints durchlaufen und die Schritte befolgt. Ich sende einfach mein Setup – kannst du es überprüfen? Mein einziges Problem ist in Schritt 4. Danke für deine Hilfe.

Sicher, du könntest mir deinen Workflow schicken, aber probier vorher bitte diese Schritte. Ich sehe in deinem Workflow ein paar Stellen, die es wert sind zu überprüfen:

  • Node „SetReportMetaData

Hallo @jamiemadden_n8n

Bezüglich der Step-Server-Überprüfung für CSV sehe ich das aktuelle Verhalten, wenn Studierende eine ungültige CSV senden (die Studierenden können eine ungültige CSV-Datei mit nur 2 Spalten (assessment_id und created_date) senden oder die assessment_id-Überprüfung schlägt in meinem ursprünglichen Fall fehl), und der Server antwortet immer noch mit 200 und leerem Body, was Studierende verwirrt: „Ich sehe den Node grün, habe ich bestanden? Oder muss ich etwas beheben?" Ich schlage daher ein kleines Update vor, um das Feedback intuitiver zu gestalten:

  • Wenn die Studierenden eine ungültige CSV senden und nicht bestehen, sollte der Server mit 4xx antworten und darauf hinweisen, dass die CSV nicht korrekt ist, sodass die Studierenden wissen, wo sie das beheben müssen.

  • Oder falls wir die Antwort aus irgendeinem Grund als leere 200 behalten, sollten wir dies zumindest im Checkpoint oder in der Fehlerbehebung erwähnen, damit die Studierenden wissen, dass etwas nicht stimmt und sie noch nicht bestanden haben, und einen Weg zur eigenständigen Fehlerbehebung haben.

Buenas, tengo el mismo problema, estuve leyendo el post, y por lo que interpreto, es un problema del servidor verdad? Porque en el último paso, no me asigna el código de verificación y dentro del curso, me queda como que tengo pendiente esta tarea, si me pueden orientar por favor, tal vez hay algo que no estoy viendo. Revise dos veces todas las instrucciones, no encontre ninguna diferencia, pero aún así, no logro obtener el último código de verificación. Los anteriores si los pude obtener, muchas gracias. Adjunto el JSON de mi workflow.

{

“name”: “Section 2 - Sales Data Pipeline”,

“nodes”: [

{

  "parameters": {},

  "type": "n8n-nodes-base.manualTrigger",

  "typeVersion": 1,

  "position": \[

    0,

    -272

  \],

  "id": "ccdc0a3f-c825-4875-9de9-7d7c2014be2b",

  "name": "TriggerManual"

},

{

  "parameters": {

    "url": "https://learn.app.n8n.cloud/webhook/course/n8n101/sales-data",

    "authentication": "genericCredentialType",

    "genericAuthType": "httpHeaderAuth",

    "sendHeaders": true,

    "headerParameters": {

      "parameters": \[

        {

          "name": "X-Assessment-ID",

          "value": "a2522471826abeaf5b090ee65e56e18c"

        }

      \]

    },

    "options": {}

  },

  "type": "n8n-nodes-base.httpRequest",

  "typeVersion": 4.4,

  "position": \[

    224,

    -272

  \],

  "id": "4ee58409-12fc-4709-ace7-c293e03fa8bf",

  "name": "GetSalesData",

  "credentials": {

    "httpHeaderAuth": {

      "id": "QQcXYH9c9Bjq284o",

      "name": "n8n Academy API Key"

    }

  }

},

{

  "parameters": {

    "fieldToSplitOut": "orders",

    "options": {}

  },

  "type": "n8n-nodes-base.splitOut",

  "typeVersion": 1,

  "position": \[

    448,

    -272

  \],

  "id": "c9297b13-caf6-4bc8-9c42-b62bca11d6c4",

  "name": "SplitOrders"

},

{

  "parameters": {

    "assignments": {

      "assignments": \[

        {

          "id": "0c7b5fc4-920a-4363-9468-c9701ed0b3bf",

          "name": "order_id",

          "value": "={{ $json.order_id }}",

          "type": "string"

        },

        {

          "id": "036a73b7-7896-438a-9ecc-440dc6d571d3",

          "name": "customer_name",

          "value": "={{ $json.customer_name }}",

          "type": "string"

        },

        {

          "id": "9994322b-80ea-436a-941f-73d4b394b692",

          "name": "region",

          "value": "={{ $json.region }}",

          "type": "string"

        },

        {

          "id": "e3eebd43-39e2-4b91-b760-66b7e18f1863",

          "name": "status",

          "value": "={{ $json.status }}",

          "type": "string"

        },

        {

          "id": "cde0d5f0-ff61-4f63-8209-735324c8e3e9",

          "name": "order_total",

          "value": "={{ $json.quantity \* $json.unit_price }}",

          "type": "number"

        }

      \]

    },

    "options": {}

  },

  "type": "n8n-nodes-base.set",

  "typeVersion": 3.4,

  "position": \[

    672,

    -272

  \],

  "id": "a436a191-3500-4f9f-9b3c-de2834021079",

  "name": "SetOrderTotals"

},

{

  "parameters": {

    "aggregate": "aggregateAllItemData",

    "destinationFieldName": "orders",

    "options": {}

  },

  "type": "n8n-nodes-base.aggregate",

  "typeVersion": 1,

  "position": \[

    896,

    -464

  \],

  "id": "4c0c71d2-2f34-49bc-8436-7a0d99ee90b9",

  "name": "AggregateOrders"

},

{

  "parameters": {

    "method": "POST",

    "url": "https://learn.app.n8n.cloud/webhook/course/n8n101/process-orders",

    "authentication": "genericCredentialType",

    "genericAuthType": "httpHeaderAuth",

    "sendHeaders": true,

    "headerParameters": {

      "parameters": \[

        {

          "name": "X-Assessment-ID",

          "value": "a2522471826abeaf5b090ee65e56e18c"

        }

      \]

    },

    "sendBody": true,

    "bodyParameters": {

      "parameters": \[

        {

          "name": "orders",

          "value": "={{ $json.orders }}"

        }

      \]

    },

    "options": {}

  },

  "type": "n8n-nodes-base.httpRequest",

  "typeVersion": 4.4,

  "position": \[

    1120,

    -464

  \],

  "id": "b75a2fd2-94ed-4b73-ae50-bc4b716b67d9",

  "name": "SendOrders",

  "credentials": {

    "httpHeaderAuth": {

      "id": "QQcXYH9c9Bjq284o",

      "name": "n8n Academy API Key"

    }

  }

},

{

  "parameters": {

    "conditions": {

      "options": {

        "caseSensitive": true,

        "leftValue": "",

        "typeValidation": "strict",

        "version": 3

      },

      "conditions": \[

        {

          "id": "84d523d2-884a-44f6-bc84-1c7a9788ced5",

          "leftValue": "={{ $json.status }}",

          "rightValue": "delivered",

          "operator": {

            "type": "string",

            "operation": "equals"

          }

        }

      \],

      "combinator": "and"

    },

    "options": {}

  },

  "type": "n8n-nodes-base.if",

  "typeVersion": 2.3,

  "position": \[

    896,

    -176

  \],

  "id": "b74fb43d-2d94-4af1-b3a5-fc17c2f8678a",

  "name": "FilterDelivered"

},

{

  "parameters": {

    "fieldsToSummarize": {

      "values": \[

        {

          "aggregation": "sum",

          "field": "order_total"

        },

        {

          "field": "order_total"

        },

        {

          "aggregation": "average",

          "field": "order_total"

        }

      \]

    },

    "fieldsToSplitBy": "region",

    "options": {}

  },

  "type": "n8n-nodes-base.summarize",

  "typeVersion": 1.1,

  "position": \[

    1120,

    -272

  \],

  "id": "b79acb85-1eee-4b10-ae31-634770ac3503",

  "name": "SummarizeByRegion"

},

{

  "parameters": {

    "keys": {

      "key": \[

        {

          "currentKey": "sum_order_total",

          "newKey": "order_totals"

        },

        {

          "currentKey": "count_order_total",

          "newKey": "order_count"

        },

        {

          "currentKey": "average_order_total",

          "newKey": "avarege_order_total"

        }

      \]

    },

    "additionalOptions": {}

  },

  "type": "n8n-nodes-base.renameKeys",

  "typeVersion": 1,

  "position": \[

    1344,

    -272

  \],

  "id": "0a89ddb6-6598-45a7-82e7-8535f2e4749c",

  "name": "UpdateFieldNames"

},

{

  "parameters": {

    "aggregate": "aggregateAllItemData",

    "destinationFieldName": "regions",

    "options": {}

  },

  "type": "n8n-nodes-base.aggregate",

  "typeVersion": 1,

  "position": \[

    1568,

    -368

  \],

  "id": "e4d2ff81-11e5-4994-991b-008b91d87062",

  "name": "AggregateRegions"

},

{

  "parameters": {

    "method": "POST",

    "url": "https://learn.app.n8n.cloud/webhook/course/n8n101/validate-analysis",

    "authentication": "genericCredentialType",

    "genericAuthType": "httpHeaderAuth",

    "sendHeaders": true,

    "headerParameters": {

      "parameters": \[

        {

          "name": "X-Assessment-ID",

          "value": "a2522471826abeaf5b090ee65e56e18c"

        }

      \]

    },

    "sendBody": true,

    "bodyParameters": {

      "parameters": \[

        {

          "name": "regions",

          "value": "={{ $json.regions }}"

        }

      \]

    },

    "options": {}

  },

  "type": "n8n-nodes-base.httpRequest",

  "typeVersion": 4.4,

  "position": \[

    1792,

    -368

  \],

  "id": "504d6d3e-3914-408d-a0bf-b30b328c298f",

  "name": "SendAnalysis",

  "credentials": {

    "httpHeaderAuth": {

      "id": "QQcXYH9c9Bjq284o",

      "name": "n8n Academy API Key"

    }

  }

},

{

  "parameters": {

    "assignments": {

      "assignments": \[

        {

          "id": "3471e8c4-6494-4d87-8c27-fcd8f626a2f7",

          "name": "report_generated",

          "value": "={{ $now.format('yyyy-MM-dd HH:mm:ss') }}",

          "type": "string"

        },

        {

          "id": "797e341f-6d34-4e56-b428-1644a78d3915",

          "name": "assessment_id",

          "value": "a2522471826abeaf5b090ee65e56e18c",

          "type": "string"

        }

      \]

    },

    "includeOtherFields": true,

    "options": {}

  },

  "type": "n8n-nodes-base.set",

  "typeVersion": 3.4,

  "position": \[

    1568,

    -176

  \],

  "id": "a1638fbf-f6fd-403a-8ce9-d73f965985b7",

  "name": "SetReportMetadata"

},

{

  "parameters": {

    "binaryPropertyName": "report",

    "options": {}

  },

  "type": "n8n-nodes-base.convertToFile",

  "typeVersion": 1.1,

  "position": \[

    1792,

    -176

  \],

  "id": "28660eaa-4cb1-4952-ac18-2c4bb28fcbe3",

  "name": "ConvertToCSV"

},

{

  "parameters": {

    "method": "POST",

    "url": "https://learn.app.n8n.cloud/webhook/course/n8n101/send-report",

    "authentication": "genericCredentialType",

    "genericAuthType": "httpHeaderAuth",

    "sendHeaders": true,

    "headerParameters": {

      "parameters": \[

        {

          "name": "X-Assessment-ID",

          "value": "a2522471826abeaf5b090ee65e56e18c"

        }

      \]

    },

    "sendBody": true,

    "contentType": "binaryData",

    "inputDataFieldName": "report",

    "options": {}

  },

  "type": "n8n-nodes-base.httpRequest",

  "typeVersion": 4.4,

  "position": \[

    2016,

    -176

  \],

  "id": "194d9159-bc73-453b-8e18-8c9b0278d31e",

  "name": "SendReport",

  "credentials": {

    "httpHeaderAuth": {

      "id": "QQcXYH9c9Bjq284o",

      "name": "n8n Academy API Key"

    }

  }

},

{

  "parameters": {},

  "type": "n8n-nodes-base.noOp",

  "typeVersion": 1,

  "position": \[

    1120,

    -80

  \],

  "id": "af17a61f-e8d1-4290-9724-7d113bd9124c",

  "name": "IgnoreNonDelivered"

}

],

“pinData”: {},

“connections”: {

"TriggerManual": {

  "main": \[

    \[

      {

        "node": "GetSalesData",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"GetSalesData": {

  "main": \[

    \[

      {

        "node": "SplitOrders",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"SplitOrders": {

  "main": \[

    \[

      {

        "node": "SetOrderTotals",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"SetOrderTotals": {

  "main": \[

    \[

      {

        "node": "FilterDelivered",

        "type": "main",

        "index": 0

      },

      {

        "node": "AggregateOrders",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"AggregateOrders": {

  "main": \[

    \[

      {

        "node": "SendOrders",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"FilterDelivered": {

  "main": \[

    \[

      {

        "node": "SummarizeByRegion",

        "type": "main",

        "index": 0

      }

    \],

    \[

      {

        "node": "IgnoreNonDelivered",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"SummarizeByRegion": {

  "main": \[

    \[

      {

        "node": "UpdateFieldNames",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"UpdateFieldNames": {

  "main": \[

    \[

      {

        "node": "AggregateRegions",

        "type": "main",

        "index": 0

      },

      {

        "node": "SetReportMetadata",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"AggregateRegions": {

  "main": \[

    \[

      {

        "node": "SendAnalysis",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"SetReportMetadata": {

  "main": \[

    \[

      {

        "node": "ConvertToCSV",

        "type": "main",

        "index": 0

      }

    \]

  \]

},

"ConvertToCSV": {

  "main": \[

    \[

      {

        "node": "SendReport",

        "type": "main",

        "index": 0

      }

    \]

  \]

}

},

“active”: false,

“settings”: {

"executionOrder": "v1",

"binaryMode": "separate"

},

“versionId”: “13d25ae4-5903-4e5d-96fd-c31460bd9e79”,

“meta”: {

"instanceId": "54f686cd8025e96d283c85699adf4945c234670c29097dcbc346f6794485ee6a"

},

“nodeGroups”: [],

“id”: “zHhggcePiczrgYaw”,

“tags”: [

{

  "name": "n8n101",

  "id": "ANRJX0kNx03bHS7k",

  "updatedAt": "2026-06-23T03:07:48.986Z",

  "createdAt": "2026-06-23T03:07:48.986Z"

}

]

}

Hallo @EzeMorales

Bitte starten Sie in Zukunft Ihre eigenen Themen und teilen Sie Ihren vollständigen Arbeitsablauf, damit wir Ihnen helfen können.

Viele Grüße,

Uh, okay, Entschuldigung, ich war nicht informiert, ich habe genutzt, dass es dasselbe Thema war, Entschuldigung. Jetzt öffne ich ein neues Thema, vielen Dank und Entschuldigung.