Comment corriger ce paramètre de défi de code lors de la connexion de HubSpot à n8n ?

Impossible de terminer la connexion

L’autorisation a échoué car le paramètre de défi de code est manquant. PKCE est requis pour cette demande d’autorisation. Veuillez contacter le développeur de l’application.

J’utilise la clé API développeur hubspot node comme déclencheur, j’utilise l’application d’authentification mcp et la clé développeur et j’obtiens toujours cette erreur

Salut @patpat, en attendant une réponse, voici quelques ressources qui pourraient t’aider :

Ressources suggérées

Automatiquement associées à ta question.

Documentation :

Forum :

@achamm, @Glorious, @D_Schu - vous avez déjà aidé sur des problèmes similaires, pouvez-vous jeter un coup d’œil ?

Suggéré automatiquement par le bot communautaire de n8n. C’est un test - n’hésitez pas à donner votre avis ici.

Salut @patpat

Je pense que voici ce qui s’est passé.

HubSpot applique maintenant strictement PKCE (Proof Key for Code Exchange) pour les applications OAuth2 publiques. Comme le client OAuth2 standard de n8n n’envoie pas le paramètre code_challenge requis pour ce flux spécifique, HubSpot le rejette. De plus, bien que vous ayez mentionné posséder une « clé API développeur », l’erreur confirme que n8n est actuellement configuré pour utiliser la méthode d’authentification OAuth2 au lieu de votre clé API/jeton d’accès.

Voici comment corriger cela en basculant vers la méthode d’authentification serveur à serveur recommandée :

  1. Vérifiez/créez une application privée HubSpot :
    • Accédez à votre portail des développeurs HubSpot.
    • Naviguez vers Paramètres > Applications privées (n’utilisez pas les applications publiques pour n8n).
    • Créez une nouvelle application privée (ou utilisez une application existante) et assurez-vous d’accorder les étendues exactes requises pour votre déclencheur (par exemple, crm.objects.contacts.read, tickets, etc.).
    • Allez à l’onglet Jeton d’accès et copiez le jeton.
  2. Reconfigurez l’identifiant n8n :
    • Ouvrez votre flux de travail n8n et cliquez sur le déclencheur ou le nœud HubSpot.
    • Dans la liste déroulante Identifiant pour l’API HubSpot, cliquez sur Créer nouveau (ou modifiez celui existant).
    • Étape cruciale : Recherchez la liste déroulante Authentification (ou Type d’authentification). Basculez-la de OAuth2 à Application privée (dans certaines versions antérieures de n8n, ceci est étiqueté comme Clé API ou Jeton d'accès).
    • Collez votre jeton d’accès copié dans le champ Jeton d’accès / Clé API.
    • Cliquez sur Enregistrer et testez le nœud.

Cela vous aide-t-il ?

Salut @patpat Bienvenue !
Les applications MCP Auth sont réservées au serveur MCP distant de HubSpot à mcp.hubspot.com, et ce flux oblige à utiliser OAuth 2.1 avec PKCE, donc l’ID client de cette application ne peut pas être utilisé pour la connexion du déclencheur. Le déclencheur HubSpot nécessite une application publique normale créée dans un compte développeur, associée à la clé API développeur de ce même compte.
Sur developers.hubspot.com ouvrez Apps, copiez la clé API HubSpot dans Developer API Key dans n8n, puis Create app et prenez App ID, Client ID et Client Secret depuis l’onglet Auth. Ajoutez la portée oauth plus les portées de lecture pour les objets sur lesquels vous déclenchez, et collez l’URL de redirection OAuth de n8n dans le champ Redirect URL de l’application avant de sauvegarder.
HubSpot credentials | Nodes | n8n Docs

le problème est que lorsque je crée une application legacy privée, il n’y a pas d’ID d’application et dans n8n lors de l’utilisation du déclencheur il n’y a pas d’autre option pour choisir où mettre les identifiants sauf celle-ci, ma version de n8n est 2.32.7

le problème c’est que quand je crée une application legacy privée, il n’y a pas d’ID d’application et dans n8n lors de l’utilisation du déclencheur, il n’y a pas d’autre option pour choisir où placer les identifiants de connexion que celle-ci, ma version n8n est 2.32.7

Puisque vous devez utiliser un nœud Trigger, créez une Application publique au lieu d’une Application privée :

  1. Dans le portail des développeurs HubSpot, allez à ApplicationsCréer une application
  2. Choisissez Application publique (et non Application privée)
  3. Cela générera :
    • Client ID
    • Client Secret
    • APP ID (c’est ce qui vous manque)
  4. Ajoutez tous les scopes requis pour les déclencheurs :
  5. Définissez l’URL de redirection sur : http://localhost:5678/rest/oauth2-credential/callback
  6. Obtenez votre clé API développeur depuis le tableau de bord des applications
  7. Remplissez tous les champs de votre identifiant n8n (y compris l’APP ID)

L’ID d’application n’existe pas sur les applications privées, et le type d’application qui en possède un ne peut plus être créé. HubSpot a désactivé la création d’applications publiques héritées le 23 juin 2026, et la paire ID d’application plus clé API de développeur que les données d’identification du déclencheur HubSpot attendent ne provient que de ce type d’application. Sur la version 2.32.7, il n’y a donc aucun moyen de remplir ces champs à moins que votre compte de développeur n’ait déjà une application publique héritée d’avant cette date.

Utilisez l’interrogation au lieu du déclenchement. Dans HubSpot, accédez à Development > Keys > Service Keys, créez une clé de service avec les portées de lecture dont vous avez besoin, et collez-la dans une donnée d’identification HubSpot n8n en tant que jeton d’application. Exécutez ensuite un Schedule Trigger dans le nœud HubSpot avec « Get recently created/updated » pour les contacts, ou « Get recently modified » pour les transactions et les entreprises.

d’accord, merci