Ressources · Intégration n8n

Intégration GitHub n8nAutomatiser GitHub avec n8n.

Chaque push, chaque ticket et chaque release peut lancer un workflow. L'intégration GitHub n8n ouvre 38 opérations réparties sur 8 ressources, et le GitHub Trigger écoute 42 événements en webhook. Elle vise les équipes qui traitent releases, revues et tickets sans passer la journée à changer d'onglet.

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

Pourquoi automatiser

Que fait l'intégration GitHub n8n, concrètement ?

L'intégration GitHub n8n repose sur deux nœuds livrés avec n8n. Le nœud GitHub appelle l'API de GitHub pour lire et écrire des fichiers, des tickets, des releases et les données d'un dépôt. Le GitHub Trigger, lui, enregistre un webhook sur un dépôt, c'est-à-dire une URL que GitHub appelle avec le contenu de l'événement, pour démarrer le workflow au moment où il se passe quelque chose. Rien à installer : les deux nœuds sont déjà là, sur n8n Cloud comme sur une instance auto-hébergée.

Premier usage, le dépôt qui sert d'archive. file.create commite un fichier à partir d'un texte ou d'un champ binaire, avec le Commit Message que tu décides : c'est comme ça qu'une sauvegarde quotidienne des workflows n8n finit versionnée dans un dépôt, avec un commit par exécution. file.list parcourt un dossier, file.get ramène un fichier précis, file.delete nettoie ce qui a expiré.

Deuxième usage, les releases. Le tag est prêt, le workflow appelle release.create avec le champ Tag, laisse la release en Draft le temps qu'une relecture passe sur les notes, puis la publie avec release.update. Dans la foulée, le corps de la release part dans Slack et personne n'ouvre le dépôt juste pour savoir ce qui est parti en production.

Troisième usage, le tri des tickets. L'événement issues se déclenche à l'ouverture, au changement de label, à l'assignation et à la fermeture ; issue.edit réécrit les labels, les assignés et un motif d'état comme not_planned. Quand un point hebdomadaire suffit, repository.getIssues filtre par State, Labels et Updated Since, et les lignes atterrissent dans Google Sheets, ou dans Jira si l'équipe technique y suit ses sujets.

Le nœud s'arrête à 38 opérations. Tout ce que l'API GitHub propose au-delà passe par le nœud HTTP Request, qui appelle n'importe quel endpoint en réutilisant le même credential GitHub, c'est-à-dire l'identifiant enregistré une fois dans n8n, en authentification prédéfinie. Pas de deuxième jeton à gérer.

Deux limites méritent d'être connues avant de construire. Les listes sont paginées : si Return All reste décoché, l'exécution s'arrête à Limit, et côté pull requests ce Limit plafonne à 100. Les opérations de trafic regardent une fenêtre fixe : repository.listPopularPaths et repository.listReferrers renvoient 10 entrées sur les 14 derniers jours, donc une vue trimestrielle n'existe que si chaque exécution est stockée quelque part, dans Mysql par exemple. Tu hésites encore entre deux plateformes ? L'Avis n8n pose les critères, et la Formation n8n reprend les nœuds un par un.

Connexion

Comment connecter GitHub à n8n ?

  1. 01

    Générer un jeton d'accès personnel

    Vérifie ton adresse e-mail côté GitHub, ouvre les Settings de ton profil, puis Developer settings et, sous Personal access tokens, choisis Tokens (classic). C'est le type que n8n recommande : les jetons fine-grained se limitent à certains dépôts et permissions, mais ils ont des limitations. Nomme le jeton dans le champ Note, choisis une Expiration, et coche les Scopes. Pour la plupart des nœuds GitHub, ajoute repo.

  2. 02

    Créer le credential dans n8n

    Dans le menu Credentials, ajoute un credential GitHub. Laisse GitHub server tel quel, sauf sur GitHub Enterprise Server où il prend l'URL de ton serveur. Renseigne User avec ton nom tel qu'il apparaît sur ton profil GitHub, puis colle l'Access Token. Créé une fois, ce credential revient dans la liste déroulante de chaque nœud GitHub.

  3. 03

    Basculer sur OAuth2 si tu préfères

    OAuth2 est l'autre méthode acceptée, pour le nœud GitHub et le GitHub Trigger. Sur une instance auto-hébergée, crée une OAuth app : Settings, Developer settings, OAuth apps, New OAuth App. Remplis l'Application name et la Homepage URL, copie l'OAuth Redirect URL de n8n dans l'Authorization callback URL de GitHub, puis reporte le Client ID et le Client Secret.

Déclencheurs

Qu'est-ce qui peut déclencher un workflow depuis GitHub ?

Github Trigger est le nœud qui démarre un workflow quand quelque chose se passe dans GitHub. Il écoute 42 événements, listés ci-dessous par famille. Tu en choisis un ou plusieurs, tu actives le workflow : n8n enregistre le webhook (l'URL que GitHub appelle) sur ton compte.

Ce que tu vois dans n8n

Tous les événements, par famille

Une ligne par objet, une puce par action. L'événement à cocher dans le nœud s'écrit objet.action ; survole une puce pour lire quand il se déclenche.

check_run.*1
  • check_run.
    • check_run
check_suite.*1
  • check_suite.
    • check_suite
commit_comment.*1
  • commit_comment.
    • commit_comment
create.*1
  • create.
    • create
delete.*1
  • delete.
    • delete
deploy_key.*1
  • deploy_key.
    • deploy_key
deployment.*1
  • deployment.
    • deployment
deployment_status.*1
  • deployment_status.
    • deployment_status
fork.*1
  • fork.
    • fork
github_app_authorization.*1
  • github_app_authorization.
    • github_app_authorization
gollum.*1
  • gollum.
    • gollum
installation.*1
  • installation.
    • installation
installation_repositories.*1
  • installation_repositories.
    • installation_repositories
issue_comment.*1
  • issue_comment.
    • issue_comment
issues.*1
  • issues.
    • issues
label.*1
  • label.
    • label
marketplace_purchase.*1
  • marketplace_purchase.
    • marketplace_purchase
member.*1
  • member.
    • member
membership.*1
  • membership.
    • membership
meta.*1
  • meta.
    • meta
milestone.*1
  • milestone.
    • milestone
org_block.*1
  • org_block.
    • org_block
organization.*1
  • organization.
    • organization
page_build.*1
  • page_build.
    • page_build
project.*1
  • project.
    • project
project_card.*1
  • project_card.
    • project_card
project_column.*1
  • project_column.
    • project_column
public.*1
  • public.
    • public
pull_request.*1
  • pull_request.
    • pull_request
pull_request_review.*1
  • pull_request_review.
    • pull_request_review
pull_request_review_comment.*1
  • pull_request_review_comment.
    • pull_request_review_comment
push.*1
  • push.
    • push
release.*1
  • release.
    • release
repository.*1
  • repository.
    • repository
repository_import.*1
  • repository_import.
    • repository_import
repository_vulnerability_alert.*1
  • repository_vulnerability_alert.
    • repository_vulnerability_alert
security_advisory.*1
  • security_advisory.
    • security_advisory
star.*1
  • star.
    • star
status.*1
  • status.
    • status
team.*1
  • team.
    • team
team_add.*1
  • team_add.
    • team_add
watch.*1
  • watch.
    • watch

Le trigger accepte aussi * (tout événement). Pratique pour du log, dangereux en production.

Notes de configuration

01Set up the GitHub TriggerLe trigger surveille un dépôt et démarre le workflow quand les événements cochés s'y produisent. À l'activation du workflow, n8n enregistre un webhook auprès de GitHub, soit une URL que GitHub appelle avec le contenu de l'événement : chaque événement arrive donc dans n8n en quelques secondes. Aucun polling, aucun intervalle à régler, rien à planifier. Le nœud est en version 1.

Le trigger surveille un dépôt et démarre le workflow quand les événements cochés s'y produisent. À l'activation du workflow, n8n enregistre un webhook auprès de GitHub, soit une URL que GitHub appelle avec le contenu de l'événement : chaque événement arrive donc dans n8n en quelques secondes. Aucun polling, aucun intervalle à régler, rien à planifier. Le nœud est en version 1.

Paramètres clés

  • Repository Owner : l'utilisateur ou l'organisation propriétaire du dépôt, choisi dans la liste ou saisi à la main.
  • Repository Name : le dépôt lui-même. Le couple propriétaire plus nom décide de l'endroit où le webhook est créé.
  • Events : ce à quoi le workflow s'abonne, parmi les 42 disponibles. Le joker * les prend tous d'un coup, pratique pour inspecter un contenu d'événement, lourd une fois en production.
  • Insecure SSL, dans Options : indique si GitHub vérifie le certificat SSL de l'hôte n8n au moment de livrer les contenus. Ça ne concerne qu'une instance auto-hébergée.
Quand l'utiliser
dès que la réaction doit être immédiate plutôt que planifiée. Un commentaire à répondre, un déploiement à lancer, un canal à prévenir.
02Push and Pull Request eventspush est l'événement par défaut du trigger : il part sur un push vers une branche du dépôt, et les push de tags le déclenchent aussi. pull_request est le plus bavard des quatre. Il réagit quand une pull request est ouverte, éditée, fermée, rouverte, assignée, désassignée, labellisée, délabellisée, verrouillée, déverrouillée, synchronisée, passée en ready for review, et quand une revue est demandée ou une demande retirée. pull_request_review se déclenche quand une revue est soumise dans un état non pending, quand son corps est modifié et quand elle est rejetée. pull_request_review_comment couvre les commentaires laissés sur le diff unifié de l'onglet Files Changed, créés, modifiés ou supprimés.

push est l'événement par défaut du trigger : il part sur un push vers une branche du dépôt, et les push de tags le déclenchent aussi. pull_request est le plus bavard des quatre. Il réagit quand une pull request est ouverte, éditée, fermée, rouverte, assignée, désassignée, labellisée, délabellisée, verrouillée, déverrouillée, synchronisée, passée en ready for review, et quand une revue est demandée ou une demande retirée. pull_request_review se déclenche quand une revue est soumise dans un état non pending, quand son corps est modifié et quand elle est rejetée. pull_request_review_comment couvre les commentaires laissés sur le diff unifié de l'onglet Files Changed, créés, modifiés ou supprimés.

Paramètres clés

  • Events : coche les quatre séparément. Chacun arrive avec son propre contenu, donc la suite du workflow doit savoir quel événement elle a reçu avant d'agir.
Cas d'usage
lancer une revue automatique à la seconde où une pull request s'ouvre, puis reposter le verdict sur le fil, ou prévenir l'auteur quand sa revue est rejetée.
03Issues, Issue Comment, Label and Milestone eventsissues suit un ticket de bout en bout : ouvert, édité, supprimé, transféré, épinglé, désépinglé, fermé, rouvert, assigné, désassigné, labellisé, délabellisé, verrouillé, déverrouillé, rattaché à un jalon ou détaché. issue_comment part quand un commentaire est créé, modifié ou supprimé. label signale un label du dépôt créé, modifié ou supprimé, et milestone fait la même chose pour un jalon créé, fermé, ouvert, modifié ou supprimé. Ensemble, ces quatre événements tiennent à jour tout ce qui vit en dehors de GitHub.

issues suit un ticket de bout en bout : ouvert, édité, supprimé, transféré, épinglé, désépinglé, fermé, rouvert, assigné, désassigné, labellisé, délabellisé, verrouillé, déverrouillé, rattaché à un jalon ou détaché. issue_comment part quand un commentaire est créé, modifié ou supprimé. label signale un label du dépôt créé, modifié ou supprimé, et milestone fait la même chose pour un jalon créé, fermé, ouvert, modifié ou supprimé. Ensemble, ces quatre événements tiennent à jour tout ce qui vit en dehors de GitHub.

Paramètres clés

  • Events : s'abonner à issues seul produit déjà beaucoup de trafic, puisqu'une simple session de tri le déclenche à chaque label et à chaque assignation.
Cas d'usage
répliquer les nouveaux tickets dans l'outil que le support ouvre vraiment, puis fermer la copie quand le ticket se ferme avec le motif completed.
04Release, Check Run, Check Suite, Status and Deployment eventsC'est la famille qu'écoute une chaîne de livraison. release part quand une release est publiée, dépubliée, créée, éditée, supprimée ou passée en préversion. check_run se déclenche quand un check run est créé, redemandé, terminé ou porte une action demandée, et check_suite quand une suite est terminée, demandée ou redemandée. status signale un changement de statut sur un commit Git. deployment et deployment_status représentent un déploiement et son statut. page_build part sur un push vers une branche où GitHub Pages est activé, gh-pages pour les pages de projet, master pour les pages d'utilisateur et d'organisation.

C'est la famille qu'écoute une chaîne de livraison. release part quand une release est publiée, dépubliée, créée, éditée, supprimée ou passée en préversion. check_run se déclenche quand un check run est créé, redemandé, terminé ou porte une action demandée, et check_suite quand une suite est terminée, demandée ou redemandée. status signale un changement de statut sur un commit Git. deployment et deployment_status représentent un déploiement et son statut. page_build part sur un push vers une branche où GitHub Pages est activé, gh-pages pour les pages de projet, master pour les pages d'utilisateur et d'organisation.

Paramètres clés

  • Events : release et status vont bien ensemble, l'un dit ce qui est parti, l'autre dit si le commit derrière est au vert.
Cas d'usage
annoncer une release publiée avec ses notes, ou récupérer une check suite terminée pour faire avancer le ticket qui avait lancé le build.
05Repository, Member, Team, Star and Security eventsLes événements de gouvernance sont rarement automatisés, et c'est justement pour ça qu'ils valent le détour. repository part quand un dépôt est créé, archivé, désarchivé, renommé, édité, transféré, rendu public ou rendu privé, et les hooks d'organisation ajoutent le cas de la suppression. member signale un collaborateur qui accepte une invitation, qui est retiré, ou dont les permissions changent. star part quand une étoile est ajoutée ou retirée, watch quand quelqu'un met une étoile, fork quand un utilisateur forke le dépôt, public quand un dépôt privé passe en open source. Côté sécurité, repository_vulnerability_alert part quand une alerte est créée, écartée ou résolue, et security_advisory quand un bulletin est publié, mis à jour ou retiré.

Les événements de gouvernance sont rarement automatisés, et c'est justement pour ça qu'ils valent le détour. repository part quand un dépôt est créé, archivé, désarchivé, renommé, édité, transféré, rendu public ou rendu privé, et les hooks d'organisation ajoutent le cas de la suppression. member signale un collaborateur qui accepte une invitation, qui est retiré, ou dont les permissions changent. star part quand une étoile est ajoutée ou retirée, watch quand quelqu'un met une étoile, fork quand un utilisateur forke le dépôt, public quand un dépôt privé passe en open source. Côté sécurité, repository_vulnerability_alert part quand une alerte est créée, écartée ou résolue, et security_advisory quand un bulletin est publié, mis à jour ou retiré.

Paramètres clés

  • Events : quatre d'entre eux ne partent que sur des hooks d'organisation, membership, org_block, organization et team. Un webhook posé au niveau d'un dépôt ne les verra jamais.
Cas d'usage
garder une trace écrite de chaque changement de permission, et router les bulletins de sécurité vers la personne qui corrige.
Actions

Que sait faire le nœud GitHub ?

Le nœud GitHub expose 38 opérations sur 8 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
RessourceCreateGetGet ManyUpdateDeleteCreate CommentDisableDispatchDispatch and Wait for CompletionEditEnableGet IssuesGet LicenseGet MembersGet ProfileGet Pull RequestsGet RepositoriesGet UsageGet IssuesInviteListList Popular PathsList ReferrersLock
File✓✓✓✓✓
Issue✓✓✓✓✓
Organization✓✓
Release✓✓✓✓✓
Repository✓✓✓✓✓✓✓
Review✓✓✓✓
User✓✓✓
Workflow✓✓✓✓✓✓✓

File

5 opérations
01

Create a file

file.create

Ce que tu vois dans n8n

Notes & cas d'usage

Commite un nouveau fichier dans le dépôt. Le contenu vient soit d'un texte saisi, soit d'un champ binaire produit par un nœud précédent : un PDF généré suit donc exactement le même chemin qu'une page Markdown.

Paramètres clés

  • File Path : le chemin complet dans le dépôt, du genre docs/README.md, et pas seulement le nom du fichier.
  • Binary File : c'est l'aiguillage. Décoché, n8n prend File Content ; coché, il prend le fichier posé dans Input Binary Field.
  • Commit Message : la ligne qui apparaît dans l'historique du dépôt, autant qu'elle dise quel workflow a écrit.
Cas d'usage
déposer chaque nuit l'export des workflows n8n dans un dépôt de sauvegarde, un commit par exécution.
02

Delete a file

file.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Retire un fichier du dépôt et enregistre la suppression comme un commit, au même titre que n'importe quelle modification.

Paramètres clés

  • File Path : le chemin complet du fichier à supprimer ; quand il vient d'un nœud précédent, une expression comme {{ $json.filePath }} évite de l'écrire en dur.
  • Commit Message : requis ici aussi, et seule explication que gardera l'historique.
Cas d'usage
faire le ménage dans les fichiers générés qu'une release rend obsolètes, en dernière étape du workflow de publication.
03

Edit a file

file.edit

Ce que tu vois dans n8n

Notes & cas d'usage

Écrit un nouveau contenu par-dessus un fichier existant et commite le résultat. Deux sources possibles comme à la création, texte ou binaire, avec une différence qui compte : le fichier doit déjà être là.

Paramètres clés

  • File Path : désigne le fichier à modifier, chemin complet depuis la racine du dépôt, docs/README.md plutôt que README.md.
  • File Content : le nouveau texte, en général construit par le nœud juste avant.
  • Binary File et Input Binary Field : l'autre voie, quand la nouvelle version arrive en binaire.
  • Commit Message : obligatoire.
Cas d'usage
mettre à jour un changelog ou un fichier d'état à chaque publication.
04

Get a file

file.get

Ce que tu vois dans n8n

Notes & cas d'usage

Va chercher un fichier précis et le passe au nœud suivant. Par défaut tu récupères la réponse brute de l'API ; active As Binary Property et le fichier arrive en binaire, prêt à être joint à un e-mail ou renvoyé ailleurs.

Paramètres clés

  • File Path : le chemin complet du fichier à lire.
  • Put Output File in Field : le nom du champ binaire de sortie qui portera le fichier.
  • Reference, dans Additional Parameters : un nom de commit, de branche ou de tag. Laissé vide, GitHub lit la branche par défaut du dépôt, souvent master.
Cas d'usage
récupérer un fichier de configuration sur une version taguée pour la comparer à celle qui tourne en production.
05

List files

file.list

Ce que tu vois dans n8n

Notes & cas d'usage

Énumère le contenu d'un dossier, un item par entrée. C'est comme ça qu'un workflow boucle sur un répertoire dont il ne connaît pas le contenu à l'avance.

Paramètres clés

  • File Path : le dossier à lire, donné en chemin complet depuis la racine du dépôt ; le champ porte le même libellé que dans les autres opérations sur les fichiers.
Cas d'usage
passer sur un dossier de documentation chaque semaine et ouvrir un ticket pour chaque page que personne n'a touchée depuis un mois.

Issue

5 opérations
06

Create an issue

issue.create

Ce que tu vois dans n8n

Notes & cas d'usage

Ouvre un ticket dans le dépôt et le renvoie, avec le numéro que réclameront toutes les opérations suivantes sur ce ticket.

Paramètres clés

  • Title : le seul champ requis, et la ligne que les gens lisent dans la liste des tickets.
  • Body : optionnel, et en pratique l'endroit où atterrissent le message d'erreur, le contenu reçu ou le lien qui justifie le ticket.
  • Assignees : une collection de noms d'utilisateurs. La collection Labels ajoute un Label et un Assignee dès la création.
Cas d'usage
transformer un contrôle de supervision en échec en un ticket qui porte déjà le log et la bonne personne.
07

Create a comment on an issue

issue.createComment

Ce que tu vois dans n8n

Notes & cas d'usage

Publie un commentaire sous un ticket existant. Rien d'autre ne bouge : le ticket garde son état, ses labels et ses assignés.

Paramètres clés

  • Issue Number : un numéro, pas un titre. Récupère-le de l'étape qui a créé ou lu le ticket plutôt que de le taper à la main.
  • Body : le texte du commentaire, souvent un résultat que le workflow vient de calculer.
Cas d'usage
reporter les résultats des tests de nuit sous le ticket qui suit le bug, pour que la discussion et les preuves restent au même endroit.
08

Edit an issue

issue.edit

Ce que tu vois dans n8n

Notes & cas d'usage

Met à jour un ticket déjà ouvert. Tout ce qui est modifiable vit dans la collection Edit Fields, et tu n'ajoutes que les champs que tu veux vraiment toucher.

Paramètres clés

  • Issue Number : le ticket à modifier.
  • State : open ou closed, avec State Reason qui accepte completed, not_planned ou reopened.
  • Labels, Assignees, Title, Body : le reste de la collection, pour réorienter ou réécrire.
Cas d'usage
fermer d'un coup une série de tickets dormants avec le motif not_planned après une session de tri.
09

Get an issue

issue.get

Ce que tu vois dans n8n

Notes & cas d'usage

Consulte un ticket et ses données, sans effet sur le dépôt. C'est l'étape de lecture qu'on place devant une décision : regarder l'état, regarder les labels, puis choisir la branche du workflow.

Paramètres clés

  • Issue Number : le numéro du ticket à lire.
Cas d'usage
vérifier qu'un ticket n'a pas été fermé entre-temps avant qu'un workflow planifié n'y remette un commentaire.
10

Lock an issue

issue.lock

Ce que tu vois dans n8n

Notes & cas d'usage

Verrouille la conversation d'un ticket, ce qui empêche le fil de récolter de nouveaux commentaires.

Paramètres clés

  • Issue Number : le ticket à verrouiller.
  • Lock Reason : off-topic, too heated, resolved ou spam. Le motif accompagne le verrouillage, ce qui évite d'écrire un commentaire pour l'expliquer.
Cas d'usage
un dépôt open source qui verrouille en resolved chaque ticket fermé depuis plus d'un mois, pour garder la discussion sur les sujets en cours.

Organization

2 opérations
11

Get repositories for an organization

organization.getRepositories

Ce que tu vois dans n8n

Notes & cas d'usage

Un appel, et toute l'organisation ressort en liste : un item par dépôt, donc une boucle possible sur un compte que personne n'a envie d'inventorier à la main.

Paramètres clés

  • Return All : coché, n8n enchaîne les pages de l'API jusqu'au bout de l'organisation ; décoché, il s'arrête à Limit.
  • Limit : le nombre maximal de dépôts renvoyés tant que Return All reste décoché.
Cas d'usage
un inventaire mensuel qui écrit tous les dépôts de l'organisation dans un tableur, pour faire remonter ceux où plus personne ne commite.
12

Get members for an organization

organization.getMembers

Ce que tu vois dans n8n

Notes & cas d'usage

Renvoie les personnes qui appartiennent à une organisation, un item par membre. Même bascule de pagination que pour les dépôts, braquée sur une question très différente : qui a les accès.

Paramètres clés

  • Return All : laissé décoché, n8n renvoie jusqu'à Limit membres et s'arrête là ; coché, il parcourt tout l'effectif.
Cas d'usage
comparer chaque trimestre la liste GitHub avec celle des RH, et ouvrir un ticket pour chaque compte qui aurait dû être retiré depuis le départ de la personne.

Release

5 opérations
13

Create a release

release.create

Ce que tu vois dans n8n

Notes & cas d'usage

Crée une release sur un tag. Elle peut sortir publiée tout de suite, ou attendre en brouillon le temps que quelqu'un relise les notes.

Paramètres clés

  • Tag : le tag de la release, seul champ requis.
  • Name et Body, dans Additional Fields : le titre de la release et ses notes.
  • Draft garde la release non publiée, Prerelease la marque comme non prête pour la production.
  • Target Commitish : la branche ou le SHA de commit depuis lequel le tag est créé. Inutilisé si le tag existe déjà, et laissé vide il retombe sur la branche par défaut, souvent master.
Cas d'usage
publier une release dès que le changelog est fusionné, avec les notes lues dans ce fichier.
14

Delete a release

release.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Supprime une release, identifiée par son ID. Il n'y a rien d'autre à remplir, ce qui en fait aussi l'opération à vérifier deux fois avant d'activer le workflow.

Paramètres clés

  • Release ID : l'identifiant de la release, ni son tag ni son nom. Il vient d'une étape de listage comme Get Many.
Cas d'usage
passer une fois par semaine sur les brouillons de release qu'une chaîne de build a créés sans jamais les publier.
15

Get a release

release.get

Ce que tu vois dans n8n

Notes & cas d'usage

Va chercher une release et renvoie ses données, sans rien changer au passage. C'est l'étape qui donne au workflow le nom et les notes d'une release quand il n'a reçu qu'un identifiant.

Paramètres clés

  • Release ID : la release à lire, transmise par une étape Get Many ou par l'opération qui l'a créée quelques nœuds plus tôt.
Cas d'usage
récupérer les notes de la release en cours de déploiement pour les glisser dans le message envoyé aux clients.
16

Get many releases

release.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Ramène les releases d'un dépôt. Utile quand le workflow a besoin de l'historique et pas seulement de la dernière version.

Paramètres clés

  • Return All : coché, n8n parcourt tout l'historique des releases ; décoché, il s'arrête à Limit.
  • Limit : le nombre de releases renvoyées quand Return All est décoché.
Cas d'usage
reconstruire une page de changelog publique à partir du corps des releases à chaque nouvelle version, en écartant les préversions avant publication.
17

Update a release

release.update

Ce que tu vois dans n8n

Notes & cas d'usage

Modifie une release qui existe déjà, que ce soit ses notes, son nom, son tag ou son statut.

Paramètres clés

  • Release ID : la release à mettre à jour.
  • Draft : passé à false, la release devient publiée. C'est comme ça que se termine une publication en deux temps.
  • Body, Name, Tag Name, Prerelease et Target Commitish : le reste des Additional Fields.
Cas d'usage
ajouter les notes de migration à une release une fois le déploiement réussi, sans toucher au tag.

Repository

7 opérations
18

Get a repository

repository.get

Ce que tu vois dans n8n

Notes & cas d'usage

Aucun paramètre à remplir ici. L'opération rend les données que GitHub garde sur un dépôt, ce qui en fait une première étape peu coûteuse : un workflow qui s'apprête à écrire des fichiers ou à ouvrir des tickets lit d'abord le dépôt, et s'arrête tout de suite si la réponse ne correspond pas à ce qu'il attendait.

Cas d'usage
valider un nom de dépôt saisi dans un formulaire avant que la suite du workflow ne commence à y commiter.
19

Get issues of a repository

repository.getIssues

Ce que tu vois dans n8n

Notes & cas d'usage

Sort les tickets d'un dépôt avec les mêmes filtres que la liste GitHub.

Paramètres clés

  • State : open, closed ou all.
  • Labels : plusieurs labels d'un coup, séparés par une virgule.
  • Updated Since : ne garde que les tickets mis à jour à partir de cette date.
  • Assignee, Creator, Mentioned : restreignent par personne.
  • Sort et Direction : created, updated ou comments, en ordre croissant ou décroissant.
  • Return All : décoché, l'exécution s'arrête à Limit.
Cas d'usage
un récap du lundi matin sur tout ce qui porte le label bug et a bougé depuis vendredi.
20

Get the license of a repository

repository.getLicense

Ce que tu vois dans n8n

Notes & cas d'usage

Si GitHub a détecté une licence dans le dépôt, cette opération en renvoie le contenu. Elle ne prend aucun paramètre, donc elle se branche directement après une étape de listage et répond dépôt après dépôt. Rien de détecté veut dire rien à lire, et ce silence est déjà une information.

Cas d'usage
auditer une organisation pour repérer les dépôts publics qui partent sans licence, et ouvrir un ticket par dépôt avec le constat.
21

Get the profile of a repository

repository.getProfile

Ce que tu vois dans n8n

Notes & cas d'usage

Lit le profil communautaire d'un dépôt : métriques, score de santé, description, licence et le reste de ce que GitHub mesure à cet endroit. Aucun paramètre à régler, donc l'ajouter à un workflow ne coûte quasiment rien.

Cas d'usage
suivre le score de santé d'un dépôt public mois après mois, et lever une alerte quand il baisse au lieu de s'en apercevoir bien plus tard.
22

Get pull requests of a repository

repository.getPullRequests

Ce que tu vois dans n8n

Notes & cas d'usage

Un workflow de revue qui tourne à heure fixe plutôt que sur événement commence ici, avec les pull requests d'un dépôt ramenées sous forme d'items.

Paramètres clés

  • State : open, closed ou all.
  • Sort : created, updated, popularity par nombre de commentaires, ou long-running, qui ne garde que les pull requests ouvertes depuis plus d'un mois et actives sur le dernier mois.
  • Limit : plafonné à 100, le maximum accepté par l'API pour cette liste.
Cas d'usage
un récap hebdomadaire trié en long-running qui nomme les revues que personne n'a reprises.
23

List popular paths in a repository

repository.listPopularPaths

Ce que tu vois dans n8n

Notes & cas d'usage

Celle-ci donne les 10 chemins de contenu les plus consultés d'un dépôt sur les 14 derniers jours. Pas de filtre, pas de plage de dates : la fenêtre est figée, donc une vue plus longue n'existe que si le workflow stocke chaque exécution quelque part.

Cas d'usage
un instantané hebdomadaire des fichiers les plus vus, conservé en base, pour savoir quelle page de la documentation mérite la réécriture.
24

List the top referrers of a repository

repository.listReferrers

Ce que tu vois dans n8n

Notes & cas d'usage

Même fenêtre figée, autre question : les 10 premiers domaines référents d'un dépôt sur les 14 derniers jours, autrement dit d'où viennent les visiteurs. Pas de paramètre non plus, et la même conséquence, l'historique t'appartient.

Cas d'usage
repérer le jour où un dépôt sort sur un agrégateur et où le trafic change de source, puis le dire à l'équipe pendant que ça compte encore.

Review

4 opérations
25

Create a review

review.create

Ce que tu vois dans n8n

Notes & cas d'usage

Cette opération publie une revue sur une pull request ouverte, verdict compris, ce qu'un commentaire ne fait pas.

Paramètres clés

  • PR Number : le numéro de la pull request à relire, saisi ou repris d'un nœud précédent par une expression, {{ $json.champ }}.
  • Event : le verdict, approve, requestChanges, comment ou pending ; en pending, la revue reste à soumettre à la main.
  • Body : le texte de la revue, exigé par GitHub quand l'Event est Request Change ou Comment.
  • Commit ID, dans Additional Fields : le SHA du commit à relire si ce n'est pas le dernier.
Cas d'usage
une revue de dépendances qui repère un paquet non validé et demande des changements aussitôt, sans attendre qu'un humain ouvre la pull request pour le voir.
26

Get a review

review.get

Ce que tu vois dans n8n

Notes & cas d'usage

Une seule revue revient ici, celle dont l'identifiant est fourni, sur la pull request indiquée.

Paramètres clés

  • PR Number : la pull request qui porte la revue.
  • Review ID : l'identifiant de la revue à lire ; garde celui que renvoie l'opération Create, sinon tu n'auras pas de quoi la retrouver plus tard.
Cas d'usage
avant de taguer une version, un workflow relit la revue laissée sur le correctif et en recopie le texte dans la note de version.
27

Get many reviews

review.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Toutes les revues d'une même pull request ressortent, un item par revue.

Paramètres clés

  • PR Number : la pull request dont on déroule l'historique de revues.
  • Return All : activé, n8n enchaîne les pages de l'API GitHub jusqu'à la dernière revue ; désactivé, il s'arrête au nombre fixé par Limit.
  • Limit : le nombre maximal de revues rapportées tant que Return All reste décoché.
Cas d'usage
reconstituer l'historique de relecture d'une pull request sensible pour l'archiver dans un dossier de conformité.
28

Update a review

review.update

Ce que tu vois dans n8n

Notes & cas d'usage

Seul le texte d'une revue existante bouge : le nœud n'expose que le champ Body pour cette opération.

Paramètres clés

  • PR Number : la pull request concernée.
  • Review ID : la revue à réécrire, le même identifiant que pour la lire.
  • Body : le nouveau texte, qui remplace l'ancien.
Cas d'usage
une revue rédigée automatiquement dont on corrige la formulation après relecture humaine, sans polluer le fil de discussion avec un second message.

User

3 opérations
29

Get a user's repositories

user.getRepositories

Ce que tu vois dans n8n

Notes & cas d'usage

Le nœud sort la liste des dépôts de l'utilisateur, un item par dépôt. Aucun identifiant à renseigner : il n'y a que la pagination à régler.

Paramètres clés

  • Return All : activé, le nœud réclame la page suivante jusqu'au dernier dépôt ; désactivé, il s'arrête plus tôt.
  • Limit : combien de dépôts rapporter tant que Return All est décoché.
Cas d'usage
un nettoyage de fin d'année, où la liste des dépôts part dans un tableur et l'équipe coche ceux qu'on peut archiver.
30

Get a user's issues

user.getUserIssues

Ce que tu vois dans n8n

Notes & cas d'usage

Les issues assignées à l'utilisateur arrivent dans le workflow, et la collection Filters réduit le tas avant qu'il n'encombre les nœuds suivants.

Paramètres clés

  • State : open, closed ou all.
  • Labels : un ou plusieurs libellés séparés par des virgules.
  • Updated Since : une date et une heure ; seules les issues mises à jour à partir de ce moment passent.
  • Sort et Direction : tri par created, updated ou comments, en ordre croissant ou décroissant.
  • Mentioned : ne garde que les issues où un utilisateur donné a été mentionné.
Cas d'usage
un rappel du vendredi qui liste les issues ouvertes bougées dans la semaine et les envoie au responsable produit.
31

Invite a user

user.invite

Ce que tu vois dans n8n

Notes & cas d'usage

L'invitation part par email vers l'organisation nommée dans le nœud, sans passer par la page des membres.

Paramètres clés

  • Organization : l'organisation GitHub qui reçoit la personne invitée.
  • Email : son adresse, au format que le champ montre en exemple, name@email.com.
Cas d'usage
l'arrivée d'un prestataire : la fiche signée déclenche l'invitation le matin du premier jour, et l'accès est prêt avant le café.

Workflow

7 opérations
32

Disable a workflow

workflow.disable

Ce que tu vois dans n8n

Notes & cas d'usage

Un workflow du dépôt passe hors service et y reste jusqu'à ce que l'opération Enable le rallume. Attention au mot : il s'agit du workflow du dépôt GitHub, pas du workflow n8n qui l'entoure.

Paramètres clés

  • Workflow : celui qu'on éteint, choisi dans le champ du même nom.
Cas d'usage
un dépôt qu'on n'utilise plus vraiment, dont les jobs planifiés sont coupés pour arrêter les alertes inutiles.
33

Dispatch a workflow event

workflow.dispatch

Ce que tu vois dans n8n

Notes & cas d'usage

Un ordre de dispatch lance le job à la demande, et n8n rend la main tout de suite : l'exécution n'attend pas la fin du traitement.

Paramètres clés

  • Workflow : celui à déclencher.
  • Ref : la référence git utilisée, un nom de branche ou de tag, de quoi lancer le même workflow sur une branche de test ou sur un tag de version.
  • Inputs : un objet JSON qui porte les paramètres d'entrée attendus par le workflow.
Cas d'usage
une génération de documentation relancée à chaque publication d'un article, avec la langue passée dans Inputs.
34

Dispatch a workflow event and wait for completion

workflow.dispatchAndWait

Ce que tu vois dans n8n

Notes & cas d'usage

Le départ est le même qu'avec Dispatch, la suite non : l'exécution n8n se met en pause et attend un webhook, c'est-à-dire une URL appelée de l'extérieur, avant de passer au nœud suivant.

Paramètres clés

  • Workflow : celui à lancer.
  • Ref : le nom de la branche ou du tag sur lequel il tourne.
  • Inputs : un objet JSON lu par le job, pratique pour transmettre un numéro de version ou une cible.
Cas d'usage
une migration de base où l'étape suivante ne doit surtout pas démarrer tant que le job du dépôt n'a pas confirmé sa fin.
35

Enable a workflow

workflow.enable

Ce que tu vois dans n8n

Notes & cas d'usage

Remettre en route un workflow mis en pause tient en un appel : ses propres déclencheurs repartent aussitôt.

Paramètres clés

  • Workflow : celui à réactiver, sélectionné comme pour Disable.
Cas d'usage
la reprise après les vacances d'été, où les workflows coupés en juillet sont rallumés en une seule exécution, sans que personne ait à ouvrir les réglages du dépôt un par un.
36

Get a workflow

workflow.get

Ce que tu vois dans n8n

Notes & cas d'usage

Le nœud lit un workflow du dépôt et le renvoie en un seul item. C'est le moyen le plus rapide de vérifier qu'un identifiant pointe bien là où tu crois.

Paramètres clés

  • Workflow : celui à consulter.
Cas d'usage
un tableau de bord qui affiche, pour chaque dépôt suivi, le workflow de référence et signale ceux qui ont disparu depuis la dernière vérification.
37

Get the usage of a workflow

workflow.getUsage

Ce que tu vois dans n8n

Notes & cas d'usage

L'usage enregistré par GitHub pour un workflow sort ici. C'est le chiffre à surveiller quand un dépôt consomme plus vite que prévu.

Paramètres clés

  • Workflow : celui dont on demande l'usage.
Cas d'usage
un relevé hebdomadaire qui récupère l'usage des workflows les plus lourds et l'aligne avec les semaines précédentes, pour voir un écart au moment où il se produit.
38

List workflows

workflow.list

Ce que tu vois dans n8n

Notes & cas d'usage

Aucun paramètre à remplir : l'opération renvoie les workflows sous forme d'items, un par workflow, prêts à passer dans une boucle. C'est la porte d'entrée quand les identifiants ne sont pas connus d'avance.

Cas d'usage
une remise à plat où chaque workflow trouvé est comparé à la liste tenue par l'équipe, histoire de repérer ceux que personne n'a documentés et ceux qui tournent encore sans raison.
Besoin d'aide

Besoin d'aide pour automatiser GitHub avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

GitHub et n8n, les questions qui suivent

01L'intégration GitHub n8n est-elle gratuite ?
Oui du côté de n8n. Le nœud GitHub et le GitHub Trigger sont livrés avec n8n, donc rien à installer et aucun module à acheter, sur n8n Cloud comme sur une instance auto-hébergée en Community Edition sous licence Sustainable Use. Un workflow construit sur l'une tourne à l'identique sur l'autre. Ce que coûte GitHub pour ton compte est une autre question, et cette page ne la traite pas. La seule préparation, c'est le credential : un jeton d'accès personnel ou une OAuth app, créé une fois dans le menu Credentials puis réutilisé par tous les workflows qui touchent un dépôt.
02Quels credentials et quels droits demande le nœud GitHub ?
Deux méthodes fonctionnent. Le jeton d'accès API marche avec tous les nœuds GitHub : tu génères un personal access token dans Developer settings, sous Tokens (classic), le type que n8n recommande, puis tu remplis le credential avec l'URL du GitHub server, ton nom d'utilisateur tel qu'il apparaît sur ton profil et l'Access Token lui-même. Ajoute le scope repo, parce qu'un jeton sans scope n'atteint que les informations publiques. OAuth2 est la seconde voie, réservée au nœud GitHub et au GitHub Trigger : tu enregistres une OAuth app, tu colles l'OAuth Redirect URL de n8n dans l'Authorization callback URL, puis tu reportes le Client ID et le Client Secret dans n8n. Le GitHub Document Loader, lui, ne gère pas OAuth2.
03Quelles sont les limites du nœud GitHub dans n8n ?
Il couvre 38 opérations sur 8 ressources, ce qui laisse une partie de l'API GitHub en dehors du nœud. Ce qui manque passe par le nœud HTTP Request, qui atteint n'importe quel endpoint en réutilisant le même credential GitHub en authentification prédéfinie, donc sans second jeton à gérer. À l'intérieur du nœud, la pagination est le point de vigilance : une liste renvoie jusqu'à Limit items tant que Return All reste décoché, et la liste des pull requests plafonne ce Limit à 100. Les opérations de trafic travaillent sur une fenêtre fixe de 14 jours et renvoient 10 entrées, donc un historique plus long n'existe que si le workflow stocke chaque exécution. Les jetons fine-grained ont enfin leurs propres restrictions, et c'est pour ça que n8n recommande les jetons classiques.
04Le GitHub Trigger réagit-il en temps réel ?
Oui. Le GitHub Trigger fonctionne par webhook : l'activation du workflow enregistre une URL de webhook auprès de GitHub, et GitHub appelle cette URL avec le contenu de l'événement dès que quelque chose se passe. Les événements arrivent dans n8n en quelques secondes, sans polling et sans intervalle à configurer. Tu choisis ce à quoi tu t'abonnes parmi les 42 événements, dans le paramètre Events, et la valeur joker les prend tous d'un coup. Quatre événements ne partent que sur des hooks d'organisation, membership, org block, organization et team : un webhook posé sur un dépôt ne les verra jamais. L'option Insecure SSL décide si GitHub vérifie le certificat SSL de l'hôte n8n quand il livre les contenus.
05n8n ou Make pour automatiser GitHub ?
Ça dépend de l'endroit où l'automatisation doit vivre. Make est hébergé uniquement, sans option d'auto-hébergement, et se facture à l'opération : la note suit donc le volume, et les données passent toujours par leur plateforme. n8n tourne sur n8n Cloud ou sur un serveur que tu contrôles, ce qui change tout quand le contenu des dépôts et les jetons doivent rester dans ton infrastructure. Les deux offrent une logique visuelle, et pour un workflow GitHub qui lit des fichiers et commente des tickets, les deux font le travail. Tranche sur l'hébergement, la maîtrise des données et le modèle de coût plutôt que sur la liste des nœuds, parce que sur ce terrain-là les deux se tiennent.