Besoin d'aide avec un workflow. Je suis bloqué

Bonjour,

Je suis en train de reproduire le workflow de Nick Saraev (https://youtu.be/2GZ2SNXWK-c?si=vEHZO8dGKFWNXLMq) à partir duquel, en utilisant des données de Google Sheets, j’envoie des e-mails à des entreprises via OpenAI. Je ne sais pas ce que je fais mal, et même en parlant avec l’IA, je n’arrive à aucune solution. N’importe quel conseil ou aide serait grandement apprécié à l’adresse e-mail : pabloserranovasquez2006@gmail.com. Merci beaucoup !!!
n8n.io - Workflow Automation

@Pablo_Serrano, en attendant une réponse, voici quelques ressources qui pourraient vous aider :

Ressources suggérées

Automatiquement associées à votre question.

Documentation :

Forum :

@solomon, @Jekylls - vous avez aidé avec des problèmes similaires auparavant, pouvez-vous jeter un coup d’œil ?

Suggéré automatiquement par le bot communautaire de n8n. C’est un programme pilote - veuillez partager vos commentaires ici.

Bonjour @Pablo_Serrano Bienvenue !
C’est votre propre URL d’éditeur, elle ne s’ouvre que sur votre compte, donc personne ici ne peut voir le workflow. Sélectionnez tous les nœuds sur la toile avec Ctrl+A, copiez-les avec Ctrl+C, et collez le JSON dans un bloc de code dans une réponse ici. Supprimez d’abord les noms d’identifiants de la copie.
Publiez le texte d’erreur du nœud qui échoue avec celui-ci, ainsi que ses panneaux d’entrée et de sortie. Sans le nœud défaillant et son erreur, il n’y a rien de concret à déboguer.
Conservez-le sur le fil plutôt que de l’envoyer par e-mail, de cette façon, quiconque rencontrera le même problème plus tard trouvera également la solution.

Plus d’informations sur comment obtenir une réponse :

Bonjour @Pablo_Serrano Pour pouvoir vous aider, nous avons besoin de détails plus spécifiques. Le lien vers le workflow n’est pas accessible aux autres utilisateurs car il s’agit de votre instance Cloud privée. Pourriez-vous nous partager :

À quel nœud spécifique échoue-t-il ou s’arrête-t-il ?

Quel message d’erreur exact recevez-vous (capture d’écran ou texte) ?

Qu’aviez-vous prévu de se passer par rapport à ce qui s’est réellement passé ?

Avec ces informations, quelqu’un pourra vraiment vous aider. De plus, vous pourriez éditer votre message pour supprimer votre email personnel. Il est préférable de garder la conversation ici sur le forum pour qu’elle puisse aider d’autres personnes confrontées au même problème à l’avenir.

Bonjour Pablo_Serrano,
Fournissez votre JSON de workflow pour que je puisse le corriger pour vous, c’est une excellente approche pour moi d’aider quelqu’un merci.
Remarque : Gardez-le sur le fil plutôt que par e-mail, de cette façon si quelqu’un d’autre rencontre le même problème plus tard, ils verront aussi la correction.

Bonjour, j’essaie de reproduire le workflow de Nick Saraev (https://youtu.be/2GZ2SNXWK-c?si=vEHZO8dGKFWNXLMq) à partir duquel, en utilisant des données de Google Sheets, on envoie des e-mails à des entreprises via OpenAI. Je ne sais pas ce que je fais mal, même en discutant avec l’IA je n’arrive à aucune solution. N’importe quel conseil ou aide serait vraiment apprécié. Merci beaucoup !!!

WORKFLOW AU FORMAT JSON :

{
“nodes”: [
{
“parameters”: {},
“type”: “n8n-nodes-base.manualTrigger”,
“typeVersion”: 1,
“position”: [
-96,
496
],
“id”: “815388b3-0e10-4c2c-8312-4e5180dfa21f”,
“name”: “When clicking ‘Execute workflow’”
},
{
“parameters”: {
“documentId”: {
“__rl”: true,
“mode”: “id”,
“value”: “1yZnRCCrx6_8iA_SHacH_wLsz3aPYSn9yJMDvtFK6wuU”
},
“sheetName”: {
“__rl”: true,
“value”: “gid=0”,
“mode”: “list”,
“cachedResultName”: “Hoja 1”,
“cachedResultUrl”: " prueban8n - Google Sheets "
},
“options”: {}
},
“type”: “n8n-nodes-base.googleSheets”,
“typeVersion”: 4.7,
“position”: [
112,
496
],
“id”: “1deb068f-842a-47f3-82ef-483114838d22”,
“name”: “Get row(s) in sheet”,
“credentials”: {
“googleSheetsOAuth2Api”: {
“id”: “l91Lg09x9gnLmisB”,
“name”: “Google Sheets account”
}
}
},
{
“parameters”: {
“modelId”: {
“__rl”: true,
“value”: “gpt-5.1”,
“mode”: “list”,
“cachedResultName”: “GPT-5.1”
},
“responses”: {
“values”: [
{
“role”: “assistant”,
“content”: “Tu es un assistant intelligent pour l’écriture d’e-mails.”
},
{
“role”: “=user”,
“content”: “=Ta tâche est d’écrire un e-mail personnalisé. Tu recevras comme entrée une URL LinkedIn {{ $json.UrlLinkedin }} Je veux que tu adaptes ces 5 modèles pour les différentes parties de l’e-mail :\n\nSujet : Bonjour {Nom}, je crois que j’ai quelque chose pour toi concernant : {Entreprise}.\n\nAccroche : Je sais que tu travailles dans {{ $json[‘descripcionCompañía’] }} et je suis depuis un moment {relateddescripcionComapñia}, donc j’ai pensé que ça valait le coup de discuter avec toi.\n\nPitch d’ascenseur : En résumé : je crois que je peux ajouter environ 5 000 $/mois à {descripcionCompañiaParaphrased} avec un couple de systèmes automatisés.\n\nAppel à l’action : Je viens de faire exactement la même chose pour une entreprise très similaire dans {RelationedCompañía} et nous avons atteint 28 350 $ en quelques mois — ils font {descripcionCompañíaSimilar} — donc je suis très confiant que je peux au minimum doubler cela avec vous. Ce serait 100% sans risque, je te garantis 60% des résultats, si je n’y arrive pas, tu ne paies rien\n\nPostscriptum (PS) : Même si on discute juste un peu, j’aimerais en savoir plus sur ce que tu fais avec {Entreprise}.\n\nMaintenant je vais te donner un guide pour la rédaction de l’e-mail :\n\n1. Tu dois utiliser un ton familier, comme si tu étais dans une conversation au bar, c’est une PRIORITÉ que l’e-mail semble écrit par un ami plutôt que par une grande agence de marketing\n\n2. Tu dois chercher et exposer tout au long de l’e-mail des connexions RÉELLES entre ce que vend l’entreprise et ce que nous vendons (automatisations)\n\n3. Tu ne peux EN AUCUN CAS mettre des informations identiques de l’entreprise qui se trouvent sur le profil LinkedIn ou sur Internet, dans tous les cas tu les paraphrases, Chaque e-mail doit être unique\n\n4. Le sujet doit être en minuscules.\n\n5. La sortie doit être exprimée au format JSON en suivant la structure suivante :\n\n{{ $json.SubjectLine }},{{ $json.Icebreaker }}, {{ $json.ElevatorPitch }},{{ $json.callToAction }}, {{ $json.PS }}\n”
}
]
},
“builtInTools”: {},
“options”: {}
},
“type”: “@n8n/n8n-nodes-langchain.openAi”,
“typeVersion”: 2.3,
“position”: [
320,
496
],
“id”: “72eb8b2e-2ca9-46ae-9a32-a1a907fc865d”,
“name”: “Message a model1”,
“credentials”: {}
}
],
“connections”: {
“When clicking ‘Execute workflow’”: {
“main”: [
[
{
“node”: “Get row(s) in sheet”,
“type”: “main”,
“index”: 0
}
]
]
},
“Get row(s) in sheet”: {
“main”: [
[
{
“node”: “Message a model1”,
“type”: “main”,
“index”: 0
}
]
]
}
},
“pinData”: {},
“meta”: {
“templateCredsSetupCompleted”: true,
“instanceId”: “de8c734c1dc0e7ee34a192c3342867821f37e3e023d4f63a26811d820d59caa0”
}
}

Bonjour @Pablo_Serrano

Correction :

  1. Changez le rôle du premier message de Assistant à System. Supprimez également le = superflu dans "role": "=user" du deuxième message.

  2. Réécrivez la fin de votre prompt. Actuellement, vous avez {{ $json.SubjectLine }}, {{ $json.Icebreaker }}... — ces champs n’existent pas encore, ils se résolvent donc à vide et le modèle n’obtient aucun format du tout. Remplacez par du texte littéral :

Return ONLY this JSON, nothing else:

{
  "SubjectLine": "...",
  "Icebreaker": "...",
  "ElevatorPitch": "...",
  "CallToAction": "...",
  "PS": "..."
}

Changez également vos placeholders {curly} en [square]{{ est la syntaxe d’expression n8n et causera des dysfonctionnements.

  1. Exécutez le nœud Google Sheets seul et copiez vos noms de colonnes exactement depuis le panneau de sortie. {{ $json.UrlLinkedin }} et {{ $json.companyDescription }} doivent correspondre à vos en-têtes caractère par caractère.

Merci beaucoup, ça m’a énormément aidé !!

de rien, si cela vous a été utile, marquez-le comme solution merci.