Ressources · Intégration n8n

Intégration Npm n8nAutomatiser Npm avec n8n.

L'intégration Npm n8n fait entrer le registre npm dans tes workflows. Le nœud expose 5 opérations sur 2 ressources, les paquets d'un côté, les dist-tags de l'autre. Il interroge le registre indiqué par le credential, l'identifiant enregistré une fois dans n8n. Aucun trigger npm : l'exécution démarre ailleurs.

Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth

Pourquoi automatiser

Que fait vraiment l'intégration Npm n8n ?

Le nœud npm appelle l'API du registre npm depuis n8n. Il lit ce qu'un paquet déclare : les métadonnées d'une version précise, la liste complète des versions publiées, les dist-tags qui associent un nom à une version, et les résultats d'une recherche par mot-clé. Une seule opération écrit, celle qui déplace un dist-tag vers une autre version. Le registre interrogé est toujours celui du credential, le public ou le tien.

Premier cas de figure, la veille de dépendances. Un Schedule Trigger part tôt le matin, le nœud sort la liste des versions publiées pour chaque paquet du socle technique, et la comparaison avec ce qui dort déjà dans MySQL isole les paquets qui ont bougé. Ce que l'équipe lit vraiment, c'est le mail Gmail du bout de chaîne, une ligne par paquet, posé avant la réunion.

Deuxième cas, la fiche d'une version avant validation. Quand un dépôt GitHub signale une montée de version, le workflow récupère les métadonnées de cette version exacte et les rattache au ticket. La discussion porte alors sur ce que le paquet déclare, pas sur un numéro sorti de nulle part.

Troisième cas, la promotion d'une étiquette. Une fois la recette terminée, le workflow déplace le dist-tag que les équipes installent vers la version qui a passé les tests. La recherche de paquets, elle, sert ailleurs : repérer ce qui existe sur un sujet avant d'ajouter une dépendance de plus au projet.

Le nœud s'arrête à ces 5 opérations. Publier un paquet, le dépublier, déprécier une version, changer les propriétaires : rien de tout ça n'y figure. Le nœud HTTP Request appelle le reste de l'API du registre en réutilisant le même credential, donc une opération manquante coûte un nœud de plus, pas un changement d'outil. Deux détails méritent d'être connus avant de construire. Get Package Metadata réclame une version exacte, ce qui oblige souvent à lister les versions d'abord, puis à passer celle que tu retiens au second appel. Et la recherche avance par Limit et Offset, un appel par page, sans option pour tout ramener d'un coup.

Reste la question de l'hébergement. Le nœud est livré avec n8n, sur n8n Cloud comme sur une instance auto-hébergée, sans installation ni surcoût côté n8n. L'Avis n8n détaille où l'outil est à l'aise et où il l'est moins.

Connexion

Comment connecter npm à n8n ?

  1. 01

    Générer le jeton d'accès sur npm

    Connecte-toi au compte npm qui gère les paquets concernés, ouvre le menu de ton profil et choisis Access Tokens. Génère un jeton depuis cet écran et copie sa valeur. C'est cette chaîne que n8n enverra à chaque appel : elle se traite comme un mot de passe, puisque quiconque la détient parle au registre avec les droits du compte.

  2. 02

    Enregistrer le credential dans n8n

    Dans n8n, ouvre le menu Credentials et crée un credential npm. Colle le jeton dans Access Token, puis regarde Registry URL : garde la valeur du registre public fournie par défaut, ou remplace-la par l'adresse de ton propre registre. Un credential se crée une fois et se réutilise partout : à partir de là, le nœud npm le propose dans sa liste déroulante.

  3. 03

    Câbler le nœud et l'exécuter une fois

    Ajoute le nœud npm au workflow, sélectionne le credential, puis choisis la ressource, Package ou Distribution Tag, et l'opération en dessous. Remplis les champs requis à la main pour le premier essai, et exécute ce nœud seul. Ce qui sort dans le panneau de résultat est exactement ce que les nœuds suivants iront chercher : autant le regarder avant d'écrire la suite.

Actions

Les 5 opérations du nœud npm , une par une

Le nœud Npm expose 5 opérations sur 2 ressources. Pour chacune : le nœud tel que tu le configures dans n8n, les champs obligatoires, et nos notes de terrain.

Matrice ressources × opérations
RessourceUpdateGet AllGet MetadataGet VersionsSearch
Package✓✓✓
Distribution Tag✓✓

Package

3 opérations
01

Returns all the metadata for a package at a specific version

package.getMetadata

Ce que tu vois dans n8n

Notes & cas d'usage

Cette opération demande au registre une version précise et renvoie tout ce que cette version déclare, en un seul item. Elle lit sans rien modifier, donc tu peux la rejouer autant de fois qu'une analyse le demande.

Paramètres clés

  • Package Name : le nom du paquet tel qu'il est publié sur le registre, saisi en dur ou repris d'un nœud précédent avec {{ $json.field }}.
  • Package Version : la version exacte. Le champ est requis, le nœud s'arrête s'il reste vide, et il n'existe pas de raccourci vers la dernière version ici.
Cas d'usage
documenter la version qu'une équipe vient de mettre en production, à côté du ticket qui a déclenché la livraison.
02

Returns all the versions for a package

package.getVersions

Ce que tu vois dans n8n

Notes & cas d'usage

Un nom de paquet en entrée, la liste des versions publiées en sortie. C'est l'opération qui répond à la question « est-ce que quelque chose est sorti depuis hier », puisque rien ne vient prévenir n8n d'une publication.

Paramètres clés

  • Package Name : le paquet à lire, écrit en dur dans le champ ou pris sur l'item entrant, par exemple {{ $json.field }}.
Cas d'usage
une veille quotidienne sur les paquets du socle, comparée à la liste de la veille pour ne signaler que les nouveautés.

Distribution Tag

2 opérations
04

Returns all the dist-tags for a package

distTag.getMany

Ce que tu vois dans n8n

Notes & cas d'usage

Renvoie les dist-tags d'un paquet. Un dist-tag, c'est un nom qui pointe vers une version publiée : il donne une étiquette stable là où il faudrait sinon retenir un numéro de version.

Paramètres clés

  • Package Name : le paquet dont tu veux lire les étiquettes.
Cas d'usage
vérifier, paquet par paquet, sur quelle version pointe chaque étiquette avant d'ouvrir une fenêtre de déploiement.
05

Update a the dist-tags for a package

distTag.update

Ce que tu vois dans n8n

Notes & cas d'usage

Ici le nœud écrit : il fait pointer une étiquette vers la version que tu désignes. C'est la seule opération du nœud qui modifie quelque chose dans le registre, donc sa place est en fin de workflow, après le contrôle qui valide la version.

Paramètres clés

  • Package Name : le paquet concerné par l'étiquette.
  • Package Version : la version visée par l'étiquette après l'appel, souvent transmise par le nœud précédent avec {{ $json.field }}.
  • Distribution Tag Name : le nom de l'étiquette que l'appel fait pointer vers la version ci-dessus.
Cas d'usage
clore une recette en basculant l'étiquette que les équipes installent vers la version validée.
Besoin d'aide

Besoin d'aide pour automatiser Npm avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Les questions qui reviennent sur npm dans n8n

01L'intégration Npm n8n est-elle gratuite ?
Oui côté n8n. Le nœud npm est livré avec n8n, sur n8n Cloud comme sur une instance que tu héberges toi-même en Community Edition, sous licence Sustainable Use. Rien à installer, rien à acheter en plus pour ce nœud précis : ce que tu paies, c'est ton plan n8n ou le serveur sur lequel il tourne. Côté registre, tout dépend du compte que tu branches, puisque le nœud interroge le registre indiqué dans le credential. Le workflow, lui, reste strictement le même dans les deux modes d'hébergement, ce qui permet de commencer sur Cloud et de rapatrier ensuite.
02Quels credentials faut-il pour le nœud npm ?
Un compte npm et un jeton d'accès API. Le credential n8n contient deux champs : Access Token, que tu génères depuis l'entrée Access Tokens du menu de ton profil npm, et Registry URL, qui garde la valeur du registre public tant que tu ne pointes pas vers un registre interne. Il se crée une fois dans le menu Credentials et tous les workflows de l'instance peuvent le sélectionner, donc changer de jeton se fait à un seul endroit. Sur les 5 opérations, 4 se contentent de lire ; seule la mise à jour d'un dist-tag écrit dans le registre.
03Quelles sont les limites du nœud npm dans n8n ?
Il y a 5 opérations, et elles lisent plus qu'elles n'écrivent. Métadonnées d'une version, liste des versions, dist-tags d'un paquet, recherche par mot-clé : voilà la partie lecture. Côté écriture, il n'y a que le déplacement d'un dist-tag. Publier un paquet, le dépublier, déprécier une version ou gérer les propriétaires ne fait pas partie du nœud. Deux points gênent en pratique : Get Package Metadata exige une version exacte et pas seulement un nom, et la recherche avance page par page avec Limit et Offset. Pour le reste de l'API du registre, le nœud HTTP Request prend le relais avec le même credential.
04Peut-on réagir tout de suite à la publication d'une version ?
Non, pas directement. npm n'a pas de nœud trigger dans n8n, donc rien ne pousse l'information vers ton workflow. Il faut un autre point de départ : un Schedule Trigger qui tourne à intervalle fixe, liste les versions et les compare à ce que tu avais stocké au tour précédent ; un nœud Webhook, c'est-à-dire une URL n8n qu'un service tiers appelle, par exemple ta chaîne de publication ; ou le trigger d'un autre outil, un dépôt de code par exemple. Le premier chemin convient aux paquets que tu ne maîtrises pas. Le second est plus précis quand c'est toi qui publies, parce que l'événement est exact.
05n8n ou Make pour automatiser npm ?
Ça dépend surtout de l'hébergement et du modèle de coût. Make est hébergé par son éditeur, sans auto-hébergement possible, et se facture à l'opération : une veille qui boucle chaque matin sur beaucoup de paquets voit sa note suivre le nombre d'appels. n8n tourne sur Cloud ou sur ton serveur, ce qui compte quand le jeton stocké donne accès à un registre interne et que tu préfères le garder chez toi. Make reste plus simple à prendre en main sur les premiers scénarios. n8n apporte le nœud HTTP Request pour couvrir ce que le nœud npm ne fait pas, et c'est souvent ce qui tranche.