L'autorisation OpenAI Node ne fonctionne pas

Autorisation OpenAI ne fonctionne pas !!

Décrivez le problème/erreur/question

Lorsque je me connecte au nœud OpenAI depuis le n8n auto-hébergé, il est incapable de m’autoriser.

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

Veuillez partager votre workflow

Partagez le résultat renvoyé par le dernier nœud

Informations sur votre configuration n8n

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

Salut @shivakrishna.karnati

Si tu envoies juste un message, ça marche ?
Tu peux ignorer ça si ça peut marcher

Bienvenue @shivakrishna.karnati ! Puisque votre test de credential réussit (« Connection tested successfully »), le problème se situe probablement dans le nœud lui-même, pas dans la clé API. Quel message d’erreur s’affiche quand vous exécutez réellement le nœud ? La cause la plus courante ici est l’accès au modèle - par exemple si vous utilisez gpt-4o ou gpt-4 mais que votre compte OpenAI est sur un tier gratuit qui n’a pas encore accès à ces modèles. Essayez de basculer vers gpt-3.5-turbo dans la configuration du nœud comme test rapide pour confirmer.

Non, ça ne fonctionne pas quand j’envoie le message.

J’ai joint la capture d’écran ci-dessus qui montre l’erreur de sortie après l’exécution du nœud :slight_smile:

@shivakrishna.karnati pouvez-vous coller le texte exact de l’erreur depuis la capture d’écran ? Le message « not working when I send » nous indique que l’exécution échoue, pas l’authentification - donc le contenu de l’erreur est crucial. Cherchez une bannière rouge ou le panneau de sortie sur le côté droit du nœud. Il devrait afficher quelque chose comme « 401 Unauthorized », « insufficient_quota » ou « model_not_found ». Cette formulation exacte nous permettra d’identifier la cause profonde.

Bonjour @nguyenthieutoan ,

voici les informations requises.

**
Erreur d’autorisation - veuillez vérifier vos identifiants**

Code de statut 401 (sans corps) URL de dépannage : MODEL_AUTHENTICATION - Docs by LangChain

Détails de l’erreur

From AI Agent

Message complet

Code de statut 401 (sans corps) URL de dépannage : https://docs.langchain.com/oss/javascript/langchain/errors/MODEL_AUTHENTICATION/
Autres informations

Type de nœud

@n8n/n8n-nodes-langchain.agent

Version du nœud

3.1 (Latest)

Version n8n

2.27.4 (Self Hosted)

Heure

26.6.2026, 07:47:13

Trace de pile

NodeOperationError: Erreur d'autorisation - veuillez vérifier vos identifiants at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/executeBatch.ts:118:11 at Array.forEach (<anonymous>) at executeBatch (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/agents/Agent/agents/ToolsAgent/V3/helpers/executeBatch.ts:107:15) at processTicksAndRejections (node:internal/process/task_queues:104:5) at ExecuteContext.toolsAgentExecute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/agents/Agent/agents/ToolsAgent/V3/execute.ts:93:8) at ExecuteContext.execute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/agents/Agent/V3/AgentV3.node.ts:155:10) at WorkflowExecute.executeNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1067:8) at WorkflowExecute.runNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1367:11) at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1829:27 at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:2521:11

Problème dans le nœud « AI Agent1 »

Erreur d’autorisation - veuillez vérifier vos identifiants

Un « 401 no body » de l’AI Agent pointe directement vers la credential, pas vers le modèle. La clé API est rejetée avant même qu’OpenAI ne traite la requête.

Trois choses à vérifier :

  1. Ouvrez la credential OpenAI dans n8n, supprimez la clé, collez-la à nouveau (sans espaces en début/fin), et cliquez sur « Save & Test » - confirmez qu’elle affiche une coche verte.
  2. Allez sur platform.openai.com → API Keys et vérifiez que la clé est toujours active et n’a pas été révoquée.
  3. Assurez-vous que la credential attachée au nœud OpenAI Chat Model à l’intérieur de votre sous-nœud AI Agent est la même que celle que vous venez de tester - parfois une credential différente est sélectionnée.

Si le test de credential passe mais que l’agent échoue toujours, ouvrez le détail d’erreur « From AI Agent » et partagez ce qu’il contient - cela montrera quel appel secondaire échoue.

Bonjour @nguyenthieutoan, Merci pour votre réponse. Le fournisseur de clé API n’est pas directement OpenAI, mais plutôt un fournisseur tiers qui expose une API compatible OpenAI pour les complétions de chat. La même URL de point de terminaison ainsi que la clé API fonctionnent avec succès sur l’application OpenWebUI.

@shivakrishna.karnati
Veuillez vérifier les points suivants :

1)Lors de l’utilisation de fournisseurs compatibles avec OpenAI tiers, le champ Base URL est extrêmement sensible.

  • L’erreur courante : De nombreux utilisateurs collent le point de terminaison complet, par exemple, https://api.provider.com/v1/chat/completions.
  • La bonne façon : La Base URL ne doit aller que jusqu’au préfixe de version. Elle devrait généralement être https://api.provider.com/v1.

2)Pour déterminer si le problème provient du nœud OpenAI d’n8n ou de vos identifiants/URL, effectuez ce test :

  1. Ajoutez un nœud HTTP Request à votre workflow.
  2. Définissez Method sur POST.
  3. Définissez URL sur le point de terminaison complet (par exemple, https://api.provider.com/v1/chat/completions).
  4. Sous Authentication, sélectionnez Header Auth.
  5. Créez de nouvelles identifiants :
    • Name: Authorization
    • Value: Bearer YOUR_API_KEY_HERE
  6. Dans les Body Parameters, envoyez un JSON simple : {"model": "openai/gpt-oss-120b", "messages": [{"role": "user", "content": "hi"}]}.
  • Si cela fonctionne : Le problème réside dans la façon dont le nœud OpenAI d’n8n construit la requête (probablement le problème de Base URL mentionné à l’étape 1).
  • Si cela échoue avec 401 : Le problème vient définitivement de votre clé API ou de l’exigence du fournisseur concernant un en-tête spécifique (certains fournisseurs nécessitent api-key au lieu de Authorization: Bearer).

3)Certains fournisseurs sont stricts concernant les barres obliques finales. Si https://api.provider.com/v1 ne fonctionne pas, essayez https://api.provider.com/v1/ (avec une barre) ou inversement.

4)Dans votre JSON, le modèle est défini sur openai/gpt-oss-120b. Assurez-vous que cette chaîne est exactement ce que le fournisseur attend. Même une petite faute de frappe ou un espace supplémentaire provoquera que certains fournisseurs retournent une erreur d’autorisation ou de non-trouvé.

Bonjour @kjooleng ,

Merci pour votre réponse ! Oui, ça fonctionne quand j’ai vérifié avec le nœud HTTP Request.

J’ai changé l’URL de v1 à https://api_endpoint_url/v1/chat/completions

Pensez-vous que le nœud OpenAI n’envoie pas v1/chat/completions lors de l’exécution du nœud ?

What did you do for step 1?

Dans l’étape 1 : j’ai essayé l’URL https://api.provider.com/v1 et elle a pu s’authentifier quand j’ai ajouté les credentials mais elle retourne une erreur 401 quand j’envoie la requête.

et aussi avec https://api.provider.com/v1/chat/completions, elle n’arrive pas à s’authentifier quand j’ajoute la clé API.

vs

Alors, c’est quoi exactement ? Votre réponse est confuse. Ça fonctionne ou ça ne fonctionne pas ?

Ceci est l’étape 2 :

D’accord, quand j’ai vérifié avec le nœud HTTP Request avec https://api_endpoint_url/v1/chat/completions comme URL, ça fonctionnait (la complétion de chat se faisait).

Mais quand j’essaie la même chose dans le nœud OpenAI avec l’URL d’endpoint (https://api_endpoint_url/v1/chat/completions) ou l’URL d’endpoint (https://api_endpoint_url/v1), ça ne marche pas.

J’ai demandé/je demande si le problème persiste dans le nœud OpenAI ou dans l’endpoint du vendeur tiers*.

Pour confirmer si le problème provient de la logique interne du nœud OpenAI :

  1. Vérifiez le journal d’exécution : Ouvrez l’exécution du nœud OpenAI défaillant. Regardez l’onglet « Request » (s’il est disponible dans votre version) ou le message d’erreur. Si l’erreur est 404, c’est presque certainement un problème de construction d’URL (le mauvais chemin est appelé).
  2. Essayez l’URL de base sans /v1 : Certains fournisseurs s’attendent à ce que l’URL de base soit simplement https://api_endpoint_url. Le nœud ajoute alors /v1/chat/completions automatiquement.
  3. Comparez les charges JSON : Comparez le « Body » de la requête envoyée par le nœud HTTP Request (qui a fonctionné) avec le « Body » envoyé par le nœud OpenAI. Même une petite différence dans la manière dont le tableau messages est structuré peut amener un fournisseur tiers à rejeter la requête.
  1. Il n’y a pas d’onglet Request, et voici les détails de l’erreur de trace.

    NodeApiError: Authorization failed - please check your credentials
        at ExecuteContext.requestWithAuthentication (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/node-execution-context/utils/request-helpers/authentication.ts:263:10)
        at processTicksAndRejections (node:internal/process/task_queues:104:5)
        at ExecuteContext.requestWithAuthentication (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/node-execution-context/utils/request-helpers/factory.ts:176:11)
        at ExecuteContext.apiRequest (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/vendors/OpenAi/transport/index.ts:56:19)
        at ExecuteContext.execute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/vendors/OpenAi/v2/actions/text/response.operation.ts:621:18)
        at ExecuteContext.router (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/vendors/OpenAi/v2/actions/router.ts:58:25)
        at ExecuteContext.execute (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/@n8n+n8n-nodes-langchain@file+packages+@n8n+nodes-langchain_b494726bf990c8f5fe0c4c40e025f969/node_modules/@n8n/n8n-nodes-langchain/nodes/vendors/OpenAi/v2/OpenAiV2.node.ts:93:10)
        at WorkflowExecute.executeNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1067:8)
        at WorkflowExecute.runNode (/usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1367:11)
        at /usr/local/lib/node_modules/n8n/node_modules/.pnpm/n8n-core@file+packages+core_@opentelemetry+api@1.9.0_@opentelemetry+exporter-trace-otlp_cf5896492347c4895f0373f4acc773d7/node_modules/n8n-core/src/execution-engine/workflow-execute.ts:1829:27
    
  2. Sans /v1, il est impossible d’authentifier la clé API.

Vous pouvez essayer ceci ?

**Option A : Ignorer l’avertissement « Impossible de se connecter » (La méthode « Essayer quand même ») ** Si vous êtes sûr que votre clé API est correcte :

  1. Définissez l’URL de base sur https://openai.inference.de-txl.ionos.com (sans /v1).
  2. Ignorez l’avertissement rouge « Impossible de se connecter » sur l’écran des identifiants et cliquez quand même sur Enregistrer.
  3. Allez à votre workflow, ajoutez le nœud OpenAI et essayez d’exécuter une opération « Chat ». Si le fournisseur ne supporte pas le endpoint /models, le test des identifiants échoue, mais la demande de chat réelle pourrait quand même fonctionner.

**Option B : Utiliser le nœud HTTP Request (La méthode « Stable ») ** Si l’option A échoue, cela signifie que le fournisseur nécessite un format d’en-tête que le nœud OpenAI ne peut pas fournir. Dans ce cas, le nœud HTTP Request est en réalité votre meilleur outil.

Pour donner au nœud HTTP l’apparence d’un nœud IA, vous pouvez :

  1. Créer un Sous-workflow qui prend une invite comme entrée et retourne la réponse IA via le nœud HTTP Request.
  2. Appelez ce sous-workflow chaque fois que vous avez besoin d’une complétion IA.

Option A: ça ne fonctionne pas

Option B: Ça marche!!

Merci!

De rien