Cours Academy N8N101/N8N103 : les points de terminaison de données retournent HTTP 200 avec un corps vide, ce qui rend les exercices de pipeline impossibles à compléter

Décrivez le problème/l’erreur/la question

Je suis les cours de l’Academy (N8N101 et N8N103) et je suis bloqué sur
deux exercices par ce qui semble être un problème côté serveur sur les points
de terminaison d’entraînement de l’Academy plutôt qu’un problème de flux de
travail. Je publie des preuves complètes pour que ce soit reproductible.
La configuration qui FONCTIONNE (pourquoi je ne pense pas que ce vient de mon
côté) :

  • Authentification par en-tête avec la clé API du cours partagée, envoyée en
    tant que X-API-Key
  • Mon X-Assessment-ID envoyé à chaque requête : e92ae2fa551a70bccfed3545ad3aec70
  • Inscription au cours complétée avec succès
  • Les trois points de terminaison de l’outil agent N8N103 Section 1 fonctionnent
    et retournent 200 :
    tools/order-status, tools/customer-info, tools/product-info
    Le problème — deux points de terminaison censés RETOURNER des données répondent
    avec 200 OK et un corps vide (zéro octet) :
  1. https://learn.app.n8n.cloud/webhook/course/n8n101/sales-data
    (l’exercice « Building a Sales Data Pipeline »)
  2. https://learn.app.n8n.cloud/webhook/course/n8n103/unreliable-api
    (l’exercice de débogage/nouvelle tentative de la Section 2)
    Ce que j’ai exclu (testé le 4 août, environ 21h20-22h30 MST) :
  • Authentification incorrecte : une clé API intentionnellement incorrecte
    retourne 403 « Authorization data is wrong! » — donc le 200 avec la bonne
    clé signifie que l’authentification réussit.
  • ID d’évaluation manquant : sans elle, les points de terminaison de l’outil
    retournent 422 [Validation Failed] — donc l’en-tête est lu.
  • Verbe incorrect : POST vers sales-data retourne 404 « This webhook is not
    registered for POST requests. Did you mean to make a GET request? » — GET
    est correct.
  • Variantes de requête : ?assessment_id=…, ?assessmentId=…, ?limit=10
    et un en-tête Accept: application/json retournent tous le même 200 avec
    0 octet.
    Bonne clé, bon en-tête d’évaluation, bon verbe — 200 OK, corps vide, sur
    exactement les deux points de terminaison dont le rôle est de retourner des
    données.
    Quelqu’un de l’équipe Academy pourrait-il vérifier si la source de données
    mock derrière sales-data et unreliable-api est disponible ? Et si un corps
    vide est attendu là, que les flux de travail devraient-ils recevoir ? Je suis
    heureux de fournir les horodatages d’exécution ou d’exécuter tout diagnostic.
    Les cours eux-mêmes ont été excellents.

Quel est le message d’erreur (le cas échéant) ?

Il n’y a pas d’erreur aux points de terminaison défaillants eux-mêmes — ils
retournent HTTP 200 avec un corps vide, ce qui est le problème.

Les effets en aval dans les exercices :

  • N8N101 : Split Out reçoit un objet sans champ « orders », produit 0 éléments
    et le pipeline se termine après deux nœuds sans erreur.
  • N8N103 : le flux de travail envoie les champs extraits à
    course/n8n103/retry-result, qui rejette correctement avec 422 « [Validation
    Failed] » — parce que order_id, customer_name et confirmation_code se
    résolvent tous à rien à partir de la réponse vide en amont.

Veuillez partager votre flux de travail

Reproduction minimale (ajoutez votre propre authentification par en-tête avec
la clé API du cours — les valeurs des identifiants ne sont pas exportées avec
le JSON) :
{
  "nodes": [
    {
      "parameters": {},
      "name": "When clicking Test workflow",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [0, 0]
    },
    {
      "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": "e92ae2fa551a70bccfed3545ad3aec70"
            }
          ]
        },
        "options": {}
      },
      "name": "GetSalesData",
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [220, 0]
    }
  ],
  "connections": {
    "When clicking Test workflow": {
      "main": [[{ "node": "GetSalesData", "type": "main", "index": 0 }]]
    }
  }
}
Le même comportement se reproduit avec curl simple, donc ce n'est pas une
configuration de nœud :
GET avec X-API-Key + X-Assessment-ID → HTTP 200, Content-Length 0.

Partagez la sortie retournée par le dernier nœud

Un élément, objet vide :
[
{}
]
Attendu (selon l’exercice) : un corps JSON contenant un tableau « orders »
pour sales-data ; données de commande pour unreliable-api.

Informations sur votre configuration n8n

  • Version de n8n :
  • Base de données (défaut : SQLite) :
  • Paramètre n8n EXECUTIONS_PROCESS (défaut : own, main) :
  • Exécution de n8n via (Docker, npm, n8n cloud, application de bureau) :
  • Système d’exploitation :

Bonjour,

J’ai copié ton nœud et il fonctionne, essaie à nouveau. Nous avons eu un problème avec notre API il y a 36 heures, mais c’est résolu.

Cordiales salutations

Salut Jamie
J’ai le même problème avec mon workflow, quand je démarre mon flux, le nœud http ne retourne rien, donc je ne peux pas faire l’assignation. J’utilise n8n cloud

Section 2 - Sales Data Pipeline.json (8.2 KB)

Je pense que ça recommence. J’ai des problèmes pour récupérer les données de ventes nécessaires pour terminer l’exercice.

La requête retourne HTTP 200 OK, mais le corps de la réponse est vide (content-length: 0).

J’ai déjà essayé ce qui suit :

  • Confirmé que la requête utilise GET

  • Confirmé que le point de terminaison sales-data est correct

  • Confirmé que l’authentification utilise X-API-Key

  • Confirmé que la requête inclut X-Assessment-ID

  • Re-copié la clé API et l’ID d’évaluation

  • Recréé l’authentification par en-tête à partir de zéro

  • Supprimé et recréé le nœud de requête HTTP

  • Confirmé que la clé API Academy a fonctionné avec succès sur les workflows de cours précédents

J’ai également activé la réponse HTTP complète et je peux voir statusCode: 200 / statusMessage: OK, mais le serveur retourne un corps vide.

Pouvez-vous vérifier si le point de terminaison n8n101/sales-data d’Academy rencontre des problèmes à nouveau ?

Quel est le meilleur moyen de résoudre cela au plus vite ? Dois-je contacter l’équipe d’assistance ou cela peut-il être géré d’ici ?

Bon, je viens d’essayer. Ça semble fonctionner.

Salut, j’éprouve le même problème avec l’exercice N8N101 – Section 2: Sales Data Pipeline.

Les nœuds GetSalesData, SplitOrders, SetOrderTotals et AggregateOrders fonctionnent correctement. Le workflow produit 50 commandes transformées, et AggregateOrders génère un élément contenant un tableau orders.

Cependant, la requête HTTP SendOrders vers :

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

retourne :

  • Statut : 200 OK

  • Longueur du contenu : 0

  • Corps de réponse vide

Ma configuration SendOrders est :

  • Méthode : POST

  • Authentification par en-tête utilisant la clé API Academy

  • En-tête X-Assessment-ID inclus

  • Type de contenu du corps : JSON

  • Le corps contient le tableau orders complet

J’ai également essayé d’envoyer le corps via Using JSON avec l’expression {{ $json }}, mais la réponse reste vide.

La réponse attendue est le résultat de l’évaluation contenant status, orders_received, transformation_valid et confirmation_code.

Quelqu’un de l’équipe Academy pourrait-il vérifier si le point de terminaison process-orders ou le correcteur a actuellement des problèmes ? Je peux fournir des captures d’écran ou des détails d’exécution supplémentaires si nécessaire. Merci.