Ressources · Intégration n8n

Intégration Harvest n8nAutomatiser Harvest avec n8n.

Jusqu'où n8n peut-il piloter Harvest ? L'intégration Harvest n8n donne accès à 51 opérations réparties sur 10 ressources : clients, contacts, devis, dépenses, temps passés. Harvest n'a pas de nœud trigger, donc c'est un Schedule Trigger ou un autre outil qui ouvre le workflow.

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

Pourquoi automatiser

Qu'est-ce que l'intégration Harvest n8n permet d'automatiser ?

Le nœud Harvest est livré avec n8n et transforme l'API de Harvest en étapes prêtes à l'emploi : tu choisis une ressource, une opération, et tu remplis les champs demandés. Il couvre 51 opérations sur 10 ressources, soit les clients, les contacts, les projets, les tâches, les devis, les factures, les dépenses, les utilisateurs et les temps passés, sans écrire une seule requête à la main.

Premier scénario, la saisie des temps du vendredi soir. Un Schedule Trigger se déclenche en fin de semaine, Get Many sur les temps passés récupère ce qui a été saisi depuis lundi, et le workflow compare avec l'équipe pour repérer les journées vides. Le récapitulatif part dans Gmail et la ligne du chef de projet atterrit dans Google Sheets, là où la direction suit déjà le taux de saisie.

Deuxième scénario, l'ouverture d'un compte client. Le deal signé crée le client dans Harvest, puis le contact qui lui est rattaché, puis le projet sur lequel l'équipe va pointer. Chaque étape renvoie la fiche créée, donc l'identifiant du client se recopie directement dans le nœud suivant sous forme d'expression, c'est-à-dire une petite formule {{ $json.id }} qui va chercher la valeur dans l'item précédent. La tâche de démarrage se crée dans ClickUp dans la foulée.

Troisième scénario, la marge. Get Many sur les dépenses avec le filtre Is Billed à false liste tout ce qui a été engagé et jamais refacturé, projet par projet. Une fois par semaine, l'écart entre ce qu'un projet coûte et ce que le client paie arrête d'être une découverte de fin de trimestre.

Deux limites à connaître avant de construire. Harvest n'a pas de nœud trigger dans n8n : rien ne pousse d'événement vers un workflow, c'est donc un Schedule Trigger à intervalle fixe, un Webhook n8n appelé par un autre service, ou le trigger d'un autre outil qui doit lancer l'exécution. Ensuite, le nœud couvre 10 ressources, pas la totalité de l'API Harvest. Ce qui manque passe par le nœud HTTP Request, qui appelle n'importe quel endpoint de l'API en réutilisant le même credential via l'authentification prédéfinie.

Si c'est n8n qui est nouveau pour toi, l'Avis n8n dit ce que l'outil fait bien et où ça coince, et la Formation n8n déroule la construction d'un premier workflow.

Connexion

Comment connecter Harvest à n8n ?

  1. 01

    Créer le credential Harvest

    Dans n8n, ouvre le menu Credentials et ajoute un credential Harvest. Un credential, c'est l'accès stocké une fois pour toutes que n8n réutilise à ta place : tu le crées une fois et tous tes workflows le retrouvent dans la liste du nœud. Harvest accepte deux méthodes, un jeton d'accès à l'API ou OAuth2. Le jeton convient quand le workflow tourne sous un compte de service, OAuth2 quand la connexion doit suivre un utilisateur Harvest précis.

  2. 02

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

    Pour la méthode par jeton, crée un personal access token dans ton compte Harvest et colle-le dans le champ Access Token du credential. Harvest décrit le chemin exact dans sa documentation d'authentification. Le seul prérequis est d'avoir un compte Harvest. Une fois enregistré, le credential est chiffré côté n8n et fonctionne à l'identique sur n8n Cloud comme sur une instance auto-hébergée.

  3. 03

    Choisir le compte dans le nœud

    Pose le nœud Harvest sur le canevas, sélectionne le credential, puis renseigne Account Name or ID. Les 51 opérations le demandent, parce qu'un même identifiant Harvest peut donner accès à plusieurs comptes et que l'API a besoin de savoir lequel viser. Le champ charge la liste depuis ton credential : pas besoin de retenir l'identifiant, tu choisis le compte par son nom. Une expression fonctionne aussi quand le compte vient d'un nœud précédent.

Actions

Toutes les opérations du nœud Harvest

Le nœud Harvest expose 51 opérations sur 10 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 via DurationCreate via Start and End TimeDelete External ReferenceMeRestartStop
Client✓✓✓✓✓
Company✓
Contact✓✓✓✓✓
Estimate✓✓✓✓✓
Expense✓✓✓✓✓
Invoice✓✓✓✓✓
Project✓✓✓✓✓
Task✓✓✓✓✓
Time Entry✓✓✓✓✓✓✓✓✓
User✓✓✓✓✓✓

Client

5 opérations
01

Create a client

client.create

Ce que tu vois dans n8n

Notes & cas d'usage

La fiche client est créée dans Harvest et l'opération renvoie son identifiant, que la suite du workflow réutilise pour y rattacher des contacts, des projets ou des factures.

Paramètres clés

  • Account Name or ID : le compte Harvest qui héberge le client, choisi dans la liste chargée par le credential.
  • Name : le nom du client, seule information vraiment obligatoire.
  • Currency : fixe la devise du client, que les devis créés ensuite reprennent quand ils laissent le champ vide.
  • Address : l'adresse en texte, avec retours à la ligne autorisés pour le bloc imprimé sur les documents.
Cas d'usage
un contrat signé dans ton CRM crée le client ici, et l'identifiant renvoyé alimente le projet créé juste après.
02

Delete a client

client.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Supprimer, c'est retirer la fiche du compte : le nœud envoie l'ordre pour l'identifiant que tu lui passes, et le client disparaît.

Paramètres clés

  • Client ID : l'identifiant du client à supprimer, souvent {{ $json.id }} repris du nœud qui vient de le lister ou de le créer.
  • Account Name or ID : le compte concerné, un identifiant n'ayant de sens que dans un compte donné.
Cas d'usage
le nettoyage des clients de test créés pendant la mise au point d'un workflow. Pour un vrai client, l'archivage est plus prudent : Update a client avec Is Active à false garde l'historique au lieu de le faire disparaître.
03

Get data of a client

client.get

Ce que tu vois dans n8n

Notes & cas d'usage

Un identifiant en entrée, la fiche complète en sortie : nom, adresse, devise et statut actif, lisibles par les nœuds suivants.

Paramètres clés

  • Client ID : l'identifiant du client à récupérer, et pas son nom, que l'API n'accepte pas ici.
  • Account Name or ID : le compte Harvest interrogé.
Cas d'usage
une facture qui arrive dans un workflow ne porte qu'un identifiant de client ; cette étape le traduit en nom lisible et en devise avant que le message parte dans le canal de l'équipe.
04

Get data of all clients

client.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

C'est l'opération qui lit tout le carnet de clients, et Return All change complètement son comportement : activé, n8n enchaîne les pages de l'API et ramène tout ; désactivé, il s'arrête au nombre fixé par Limit.

Paramètres clés

  • Return All : coché pour un export complet, décoché quand un aperçu suffit.
  • Limit : le nombre maximal de clients renvoyés quand Return All reste décoché.
  • Is Active : true ne remonte que les clients actifs, false les archivés.
  • Updated Since : ne garde que les fiches modifiées après une date et une heure, ce qui transforme l'export complet en synchronisation incrémentale.
Cas d'usage
l'export nocturne des clients actifs vers un tableur que le commerce filtre lui-même.
05

Update a client

client.update

Ce que tu vois dans n8n

Notes & cas d'usage

Rien ne bouge en dehors de ce que tu places dans Update Fields : les champs laissés vides gardent leur valeur actuelle.

Paramètres clés

  • Client ID : l'identifiant du client à modifier, pivot de l'opération.
  • Is Active : false archive le client au lieu de le supprimer, true le réactive.
  • Name : le nom du client, pour un changement de marque ou de raison sociale.
  • Address : l'adresse postale, retours à la ligne compris.
Cas d'usage
un client sans commande depuis un an se retrouve archivé tout seul, une fois qu'une étape de liste l'a identifié.

Company

1 opération
06

Retrieve the company for the currently authenticated user

company.get

Ce que tu vois dans n8n

Notes & cas d'usage

Aucun identifiant à chercher. L'opération renvoie la société Harvest derrière le credential, ce qui en fait le moyen le plus rapide de vérifier que la connexion fonctionne et qu'elle vise le bon compte.

Paramètres clés

  • Account Name or ID : le seul champ à remplir, et celui qui décide de la société lue quand l'identifiant couvre plusieurs comptes.
Cas d'usage
un premier nœud placé en tête de workflow comme test de santé : si le credential a expiré, l'exécution échoue sur une simple lecture plutôt qu'au milieu d'une série de créations de factures.

Contact

5 opérations
07

Create a contact

contact.create

Ce que tu vois dans n8n

Notes & cas d'usage

Chez Harvest, un contact appartient toujours à un client : l'opération rattache donc la personne à une fiche société déjà existante.

Paramètres clés

  • First Name : obligatoire, même si le reste de l'identité arrive plus tard.
  • Client ID : l'identifiant du client auquel ce contact appartient, en général {{ $json.id }} repris du client créé juste avant.
  • Email : l'adresse du contact, le champ qui compte dès qu'un document doit lui être envoyé.
  • Title : la fonction de la personne, utile quand plusieurs interlocuteurs partagent un même client.
Cas d'usage
un formulaire rempli crée le client, puis le contact facturation qui lui est rattaché, en deux nœuds enchaînés.
08

Delete a contact

contact.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Quand une personne quitte l'entreprise du client, cette opération la retire du compte sans toucher à la fiche client elle-même.

Paramètres clés

  • Contact ID : l'identifiant du contact à supprimer, que fournit en général une étape de liste.
  • Account Name or ID : le compte où vit ce contact.
Cas d'usage
un départ signalé dans l'outil RH ou le CRM déclenche la recherche de la personne dans les contacts Harvest, puis sa suppression, pour que plus aucune relance ne parte vers quelqu'un qui n'est plus là.
09

Get data of a contact

contact.get

Ce que tu vois dans n8n

Notes & cas d'usage

Lire un seul contact coûte un appel et évite de charger toute la liste pour récupérer une adresse et une fonction.

Paramètres clés

  • Contact ID : l'identifiant du contact à récupérer.
  • Account Name or ID : le compte Harvest interrogé.
Cas d'usage
juste avant l'envoi d'une relance, cette étape récupère l'adresse à jour du contact facturation, pour que le message arrive chez la personne qui paie et pas sur une copie stockée il y a six mois dans un autre outil.
10

Get data of all contacts

contact.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

La liste revient page par page, et les deux filtres décident de la quantité que le workflow devra lire.

Paramètres clés

  • Return All : activé, toutes les pages sont récupérées ; désactivé, l'exécution s'arrête à Limit.
  • Limit : le plafond de contacts renvoyés quand Return All est décoché.
  • Updated Since : limite la réponse aux fiches modifiées après une date et une heure.
  • Is Active : garde les fiches actives, ou renvoie les inactives quand il est à false.
Cas d'usage
une synchronisation hebdomadaire qui ne lit que les contacts touchés depuis le dernier passage, puis met à jour la liste de diffusion.
11

Update a contact

contact.update

Ce que tu vois dans n8n

Notes & cas d'usage

Les coordonnées bougent plus vite que la personne elle-même, et Update Fields ne transporte que ce qui a changé.

Paramètres clés

  • Contact ID : désigne la fiche à modifier.
  • Client ID : déplace le contact vers un autre client, pour quelqu'un qui a changé d'entreprise.
  • Email : la nouvelle adresse, dans la forme name@email.com attendue par le champ.
  • Phone Office et Phone Mobile : deux numéros stockés séparément, modifier l'un laisse l'autre intact.
Cas d'usage
une promotion enregistrée dans le CRM se répercute dans Harvest en changeant Title et Phone Office dans un seul nœud.

Estimate

5 opérations
12

Create an estimate

estimate.create

Ce que tu vois dans n8n

Notes & cas d'usage

Le devis naît rattaché à un client, et Harvest le numérote tout seul tant que le workflow ne lui impose pas de numéro.

Paramètres clés

  • Client ID : l'identifiant du client auquel ce devis appartient, seul contenu obligatoire en plus du compte.
  • Subject : l'objet du devis, la ligne que le client lit en premier.
  • Number : laissé vide, le numéro est généré automatiquement ; rempli, il suit ta propre numérotation.
  • Tax : un pourcentage appliqué au sous-total, écrit 10.0 pour dix pour cent.
  • Issue Date : la date du jour par défaut si le workflow ne la précise pas.
Cas d'usage
une proposition validée dans le pipeline commercial devient un devis Harvest, objet et taxe déjà renseignés.
13

Delete an estimate

estimate.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Le ménage dans les brouillons est la raison la plus courante d'appeler celle-ci : le devis correspondant à l'identifiant quitte le compte.

Paramètres clés

  • Estimate ID : l'identifiant du devis à supprimer, issu d'une étape de liste ou de la création qui l'a produit.
  • Account Name or ID : le compte auquel appartient le devis.
Cas d'usage
un workflow qui crée des devis depuis un formulaire se donne une porte de sortie : si une étape suivante échoue, le devis créé quelques secondes plus tôt est supprimé, pour qu'aucun document à moitié rempli ne reste sous les yeux du client.
14

Get data of an estimate

estimate.get

Ce que tu vois dans n8n

Notes & cas d'usage

Avant d'envoyer quoi que ce soit au client, relire le devis donne son état, ses montants et son objet tels que Harvest les stocke.

Paramètres clés

  • Estimate ID : l'identifiant du devis à récupérer.
  • Account Name or ID : le compte Harvest qui le contient.
Cas d'usage
un workflow de relance vérifie le devis avant d'agir, pour qu'un document déjà accepté ne déclenche jamais le mail prévu pour une proposition encore en attente de réponse.
15

Get data of all estimates

estimate.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Le filtre State fait tout le travail ici : la requête ne vise que les devis dans la situation qui t'intéresse.

Paramètres clés

  • State : draft, sent, accepted ou declined, une valeur par requête.
  • From et To : bornent la période lue.
  • Client ID : restreint la réponse à un seul client.
  • Return All : activé pour parcourir toutes les pages, désactivé pour s'arrêter à Limit.
  • Page : le numéro de page dans la pagination, qui commence à 1, pour avancer manuellement dans une longue liste.
Cas d'usage
chaque lundi, lister les devis encore à l'état sent et publier le total dans le canal commercial.
16

Update an estimate

estimate.update

Ce que tu vois dans n8n

Notes & cas d'usage

Entre le premier chiffrage et la signature, les montants bougent ; l'opération ne réécrit que ce que le workflow lui fournit.

Paramètres clés

  • Invoice ID : c'est le libellé utilisé par le nœud pour l'identifiant du document à mettre à jour, la valeur à passer reste donc l'identifiant du devis renvoyé par la création ou la liste.
  • Discount : un pourcentage retranché du sous-total, 10.0 pour dix pour cent.
  • Notes : les notes complémentaires imprimées sur le devis.
  • Purchase Order : le numéro de bon de commande que le client veut voir apparaître.
Cas d'usage
une remise négociée s'applique au devis existant sans avoir à le reconstruire.

Expense

5 opérations
17

Create an expense

expense.create

Ce que tu vois dans n8n

Notes & cas d'usage

Quatre champs sont obligatoires, parce que Harvest impute toujours une dépense à un projet, à une catégorie et à une date.

Paramètres clés

  • Project ID : le projet sur lequel la dépense est imputée.
  • Expense Category ID : la catégorie de rattachement, un identifiant et non un libellé.
  • Spent Date : la date à laquelle la dépense a eu lieu, pas celle où le workflow tourne.
  • Total Cost : le montant total, ou Units quand le coût se calcule à partir d'une quantité.
  • Billable : true par défaut, une dépense interne doit donc le passer explicitement à false.
Cas d'usage
une note de frais validée crée la ligne correspondante dans Harvest, imputée au bon projet.
18

Delete an expense

expense.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Les doublons de reçus sont le cas typique : deux imports du même relevé, une ligne en trop, et cette opération la retire.

Paramètres clés

  • Expense ID : l'identifiant de la dépense à supprimer.
  • Account Name or ID : le compte dans lequel elle a été enregistrée.
Cas d'usage
un workflow de dédoublonnage liste les dépenses du mois, repère deux lignes au même montant, sur le même projet et à la même date, puis supprime la seconde avant qu'elle ne se retrouve sur une facture.
19

Get data of an expense

expense.get

Ce que tu vois dans n8n

Notes & cas d'usage

Relire une dépense renvoie son montant, son projet, sa catégorie et son caractère facturable, soit exactement ce qu'une étape de validation a besoin de savoir.

Paramètres clés

  • Expense ID : l'identifiant de la dépense à récupérer.
  • Account Name or ID : le compte Harvest à lire.
Cas d'usage
un circuit d'approbation reçoit un identifiant de dépense dans un message, va chercher la ligne, et ne la route vers un responsable que si le montant dépasse le seuil fixé en interne.
20

Get data of all expenses

expense.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Huit filtres, c'est la requête la plus large de la ressource, et les combiner est ce qui garde l'exécution courte.

Paramètres clés

  • Is Billed : false liste ce qui n'a pas encore été facturé, true ce qui l'a déjà été.
  • Project ID et Client ID : limitent la réponse à un projet ou à un client.
  • From et To : la période couverte.
  • User ID : la personne qui a saisi les dépenses.
  • Return All : activé pour collecter toutes les pages, désactivé pour plafonner avec Limit.
Cas d'usage
le rapport de marge mensuel, qui liste par projet les dépenses jamais refacturées.
21

Update an expense

expense.update

Ce que tu vois dans n8n

Notes & cas d'usage

La correction arrive presque toujours après coup, le jour où quelqu'un s'aperçoit que le projet n'était pas le bon.

Paramètres clés

  • Invoice ID : le libellé donné par le nœud à l'identifiant de la fiche à modifier, c'est donc l'identifiant de la dépense qui se place ici.
  • Project ID : réimpute la dépense sur un autre projet.
  • Expense Category ID : change la catégorie de rattachement.
  • Billable : bascule un coût entre facturable et interne.
  • Spent Date : rectifie une date saisie de travers.
Cas d'usage
les dépenses importées sur un projet par défaut sont réaffectées en série dès que le vrai projet est connu.

Invoice

5 opérations
22

Create an invoice

invoice.create

Ce que tu vois dans n8n

Notes & cas d'usage

L'opération crée une facture dans Harvest pour un client donné et renvoie la fiche créée, identifiant compris, que les nœuds suivants réutilisent.

Paramètres clés

  • Account Name or ID : le compte Harvest à facturer, choisi dans la liste ou passé par une expression, la syntaxe n8n qui va chercher un champ de l'élément entrant.
  • Client ID : le client auquel la facture est rattachée.
  • Number : laissé vide dans Additional Fields, Harvest attribue lui-même le numéro.
  • Payment Term : upon receipt, net 15, net 30, net 45 ou net 60.
Cas d'usage
pour un cabinet de conseil, sortir la facture d'abonnement de chaque client actif le 1er du mois sans ouvrir Harvest.
23

Delete an invoice

invoice.delete

Ce que tu vois dans n8n

Notes & cas d'usage

La suppression est définitive côté Harvest. Cette opération se place donc en bout de branche, derrière une condition qui vérifie que la facture est bien celle qu'on veut perdre.

Paramètres clés

  • Invoice ID : la facture à supprimer, le plus souvent {{ $json.id }} récupéré par un Get Many placé avant.
  • Account Name or ID : le compte qui héberge la facture, un identifiant d'un autre compte ne sera pas reconnu.
Cas d'usage
nettoyer les brouillons générés pendant une phase de test avant de lancer la vraie facturation.
24

Get data of an invoice

invoice.get

Ce que tu vois dans n8n

Notes & cas d'usage

Une facture, un appel. Le nœud lit une seule facture et transmet sa fiche complète au reste du workflow.

Paramètres clés

  • Invoice ID : la facture à lire, généralement stockée dans le CRM ou portée par l'élément qui a démarré l'exécution.
  • Account Name or ID : le compte Harvest interrogé.
Cas d'usage
avant d'envoyer une relance, relire la facture et couper la branche si elle est déjà passée en payée. Ça évite le mail de relance envoyé à un client qui a réglé la veille.
25

Get data of all invoices

invoice.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

C'est l'opération qui alimente tous les reportings de facturation : elle liste les factures et sort un élément par facture.

Paramètres clés

  • Return All : coché, n8n enchaîne les pages de l'API Harvest jusqu'à la dernière facture ; décoché, Limit fixe le nombre d'items renvoyés.
  • State : le filtre qui ne garde que les factures draft, open, paid ou closed.
  • From et To : bornent la période ; Updated Since limite l'exécution à ce qui a bougé depuis la dernière.
Cas d'usage
préparer chaque lundi la liste des factures ouvertes par client pour la personne qui gère le recouvrement.
26

Update an invoice

invoice.update

Ce que tu vois dans n8n

Notes & cas d'usage

Une facture déjà émise reste modifiable. Le nœud applique les changements et renvoie la version à jour.

Paramètres clés

  • Invoice ID : la facture concernée. Tout le reste passe par Update Fields, donc seuls les champs remplis sont touchés.
  • Due Date : repousse l'échéance ; non renseignée, Harvest conserve la date calculée depuis la date d'émission.
  • Subject et Notes : le texte que le client lit sur le document.
  • Tax et Tax2 : des pourcentages appliqués au sous-total, écrits 10.0 pour dix pour cent.
Cas d'usage
accorder un délai de paiement supplémentaire et tracer la raison dans les notes.

Project

5 opérations
27

Create a project

project.create

Ce que tu vois dans n8n

Notes & cas d'usage

Les temps saisis se rattachent à un projet. Créer le projet est donc la première étape de presque tous les workflows d'ouverture de mission.

Paramètres clés

  • Name et Client ID : le nom du projet et le client auquel il appartient.
  • Is Billable : indique si les heures pointées dessus peuvent finir sur une facture.
  • Bill By : none, People, Project ou Tasks, la méthode de facturation retenue par Harvest.
  • Budget By : l'email de l'utilisateur, ou la valeur none.
Cas d'usage
dès qu'une affaire passe en gagnée dans le CRM, ouvrir le projet Harvest correspondant pour que l'équipe pointe dès le premier jour.
28

Delete a project

project.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Supprimer un projet, c'est la version radicale de l'archivage. À réserver aux projets qui n'ont rien à faire dans Harvest.

Paramètres clés

  • Project ID : le projet à supprimer.
  • Account Name or ID : le compte qui le contient.
Cas d'usage
deux personnes ont créé le même projet le même jour, on déplace les temps puis on supprime le doublon. Si l'objectif est juste de sortir un projet terminé de la liste, l'opération Update et son champ Is Active font le travail sans perdre l'historique.
29

Get data of a project

project.get

Ce que tu vois dans n8n

Notes & cas d'usage

Lire un projet donne au workflow ses réglages, du client rattaché jusqu'aux champs de budget, avant toute autre action.

Paramètres clés

  • Project ID : le projet à lire, souvent {{ $json.projectId }} issu d'un temps traité plus haut.
  • Account Name or ID : le compte Harvest interrogé.
Cas d'usage
un récapitulatif mensuel lit chaque projet pour récupérer son nom et ses notes, puis écrit le résumé dans l'outil que le client consulte vraiment.
30

Get data of all projects

project.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Récupère la liste des projets d'un coup, chaque projet ressortant comme un élément distinct à parcourir en boucle.

Paramètres clés

  • Return All : coché, tous les projets remontent page après page ; décoché, Limit décide du volume.
  • Is Active : vrai pour les projets en cours, faux pour les archivés.
  • Client ID : restreint la liste à un seul client.
  • Updated Since : ne garde que les projets modifiés après la date fournie.
Cas d'usage
alimenter un tableau de bord qui repère les projets actifs sans aucune heure pointée cette semaine.
31

Update a project

project.update

Ce que tu vois dans n8n

Notes & cas d'usage

Un budget se renégocie, un taux horaire évolue. Cette opération applique ces changements à un projet existant.

Paramètres clés

  • Project ID : le projet à modifier ; les champs laissés vides dans Update Fields restent en l'état.
  • Budget et Budget Is Monthly : l'enveloppe en heures, et le fait qu'elle reparte à zéro chaque mois.
  • Hourly Rate : le taux utilisé quand le projet est facturé au taux horaire projet.
  • Is Active : à faux, le projet est archivé au lieu d'être supprimé.
Cas d'usage
passer d'un coup la nouvelle enveloppe annuelle sur tous les projets reconduits.

Task

5 opérations
32

Create a task

task.create

Ce que tu vois dans n8n

Notes & cas d'usage

Dans Harvest, une tâche est le libellé d'activité qu'on choisit en pointant son temps, du type conception ou support. Le nœud en ajoute une au compte.

Paramètres clés

  • Name : le seul champ requis en plus du compte, la configuration tient en deux lignes.
  • Default Hourly Rate : le taux appliqué quand la tâche est ajoutée à un projet, 0 tant qu'on ne le fixe pas.
  • Is Default : activé, la tâche est ajoutée automatiquement aux futurs projets.
  • Billable By Default : détermine si les heures pointées dessus sont facturables.
Cas d'usage
créer d'un coup les libellés d'une nouvelle offre depuis une source validée.
33

Delete a task

task.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Harvest retire la tâche du compte, donc aussi de la liste déroulante que les équipes voient au moment de pointer.

Paramètres clés

  • Task ID : la tâche à supprimer.
  • Account Name or ID : le compte concerné.
Cas d'usage
une tâche créée avec une faute de frappe part juste après la création de la bonne, pour que personne ne pointe sur le mauvais libellé. Quand la tâche a déjà de l'historique, mieux vaut l'archiver via Update.
34

Get data of a task

task.get

Ce que tu vois dans n8n

Notes & cas d'usage

Sert à vérifier ce que recouvre vraiment un identifiant de tâche avant qu'un autre nœud n'écrive quoi que ce soit.

Paramètres clés

  • Task ID : la tâche à lire.
  • Account Name or ID : le compte interrogé.
Cas d'usage
un formulaire de saisie envoie un identifiant de tâche ; le workflow lit la tâche, contrôle qu'elle est toujours active, et ne crée le temps qu'ensuite. Un aller-retour de support en moins quand quelqu'un colle un identifiant périmé.
35

Get data of all tasks

task.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

La liste des tâches reste courte dans la plupart des comptes, ce qui en fait une bonne source pour les listes déroulantes construites ailleurs.

Paramètres clés

  • Return All : coché, le nœud ramène la liste entière ; décoché, Limit l'arrête plus tôt.
  • Is Active : vrai pour les tâches encore proposées, faux pour les archivées.
  • Page : permet d'avancer page par page quand Return All reste décoché.
Cas d'usage
rafraîchir chaque nuit la table de référence utilisée par un formulaire interne.
36

Update a task

task.update

Ce que tu vois dans n8n

Notes & cas d'usage

Renommer une tâche ou changer son tarif laisse intacts tous les temps déjà pointés dessus, contrairement à une suppression.

Paramètres clés

  • Task ID : la tâche à modifier.
  • Name : le nouveau libellé, visible immédiatement par les personnes qui pointent.
  • Default Hourly Rate : le taux dont hériteront les prochains projets.
  • Is Active : à faux, la tâche est archivée sans perdre son historique.
Cas d'usage
appliquer la nouvelle grille tarifaire sur toutes les tâches, puis archiver celles que personne n'utilise plus depuis l'an dernier.

Time Entry

9 opérations
37

Create a time entry via duration

timeEntry.createByDuration

Ce que tu vois dans n8n

Notes & cas d'usage

Quand le workflow connaît déjà la durée d'une intervention, c'est cette opération qui l'inscrit dans Harvest.

Paramètres clés

  • Project ID et Task ID : ce sur quoi les heures sont imputées. Les deux sont requis, prévois donc une recherche juste avant ce nœud.
  • Spent Date : la date du temps passé, au format ISO 8601.
  • Hours : la durée suivie.
  • User ID : par défaut l'utilisateur authentifié, à renseigner quand le temps appartient à quelqu'un d'autre.
Cas d'usage
pointer la durée de chaque ticket de support clôturé sur le projet du client concerné.
38

Create a time entry via start and end time

timeEntry.createByStartEnd

Ce que tu vois dans n8n

Notes & cas d'usage

Même résultat, autre entrée : ici Harvest reçoit deux heures d'horloge et calcule lui-même la durée.

Paramètres clés

  • Started Time et Ended Time : des heures du type 8:00am et 3:00pm. Laissée vide, l'heure de début prend l'heure courante.
  • Spent Date : la date ISO 8601 à laquelle le temps est rattaché, qui peut différer du jour d'exécution du workflow.
  • Notes : le texte libre qui explique la ligne à celui qui la relira.
Cas d'usage
transformer un rendez-vous client terminé en temps facturable à partir du créneau qu'il occupait.
39

Delete a time entry

timeEntry.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Des heures pointées sur le mauvais projet coûtent plus cher qu'une absence de pointage. Le nœud retire la ligne de Harvest.

Paramètres clés

  • Time Entry ID : le temps à supprimer.
  • Account Name or ID : le compte où il a été saisi.
Cas d'usage
un contrôle nocturne liste les lignes créées deux fois par une automatisation relancée, garde la première de chaque paire et supprime les autres, pour que la facture bâtie sur ces heures reste juste.
40

Delete a time entry’s external reference

timeEntry.deleteExternal

Ce que tu vois dans n8n

Notes & cas d'usage

Plus étroit qu'il n'y paraît : la ligne de temps reste dans Harvest avec ses heures et ses notes, seul le lien vers la fiche externe d'origine saute.

Paramètres clés

  • Time Entry ID : le temps dont on retire la référence externe.
  • Account Name or ID : le compte qui contient la ligne.
Cas d'usage
un outil de ticketing est remplacé, les anciennes références ne pointent plus nulle part, et un workflow planifié les retire une par une sans toucher au temps suivi.
41

Get data of a time entry

timeEntry.get

Ce que tu vois dans n8n

Notes & cas d'usage

Lire une ligne seule donne au workflow le détail qui se cache derrière une case d'un tableau.

Paramètres clés

  • Time Entry ID : la ligne à lire.
  • Account Name or ID : le compte interrogé.
Cas d'usage
un responsable signale une ligne douteuse dans l'export hebdo ; le workflow va chercher ce temps et publie ses notes dans le fil de discussion, pour que tout le monde parle de la même donnée.
42

Get data of all time entries

timeEntry.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Tout ce dont la facturation et le reporting ont besoin sort d'ici. Les filtres décident de la quantité d'historique embarquée.

Paramètres clés

  • Return All : coché, n8n parcourt tout l'historique, ce qui peut être long sur un compte ancien ; décoché, Limit garde l'exécution courte.
  • From et To : la période de temps passé.
  • Is Billed : à faux, isole les heures pas encore facturées.
  • Is Running : à vrai, ne remonte que les chronos en cours.
  • User ID et Client ID : réduisent la liste à une personne ou à un client.
Cas d'usage
réunir les heures non facturées du mois écoulé, client par client, avant la campagne de facturation.
43

Restart a time entry

timeEntry.restartTime

Ce que tu vois dans n8n

Notes & cas d'usage

Harvest relance le chrono sur une ligne arrêtée plus tôt, au lieu d'en ouvrir une seconde pour le même travail.

Paramètres clés

  • Time Entry ID : la ligne arrêtée à relancer. Harvest refuse l'appel si elle tourne déjà, teste donc son état avant d'envoyer.
  • Account Name or ID : le compte où vit le chrono.
Cas d'usage
un ticket est rouvert, et le chrono qui le suivait repart au lieu de couper le travail en deux lignes séparées.
44

Stop a time entry

timeEntry.stopTime

Ce que tu vois dans n8n

Notes & cas d'usage

Le mouvement inverse, et celui qui sauve le plus d'heures en fin de mois : il ferme un chrono encore en train de tourner.

Paramètres clés

  • Time Entry ID : le chrono à arrêter. L'appel ne fonctionne que s'il tourne, associe-le à un Get Many filtré sur Is Running.
  • Account Name or ID : le compte Harvest concerné.
Cas d'usage
chaque soir, fermer les chronos oubliés avant qu'ils ne tournent toute la nuit et faussent le total facturable.
45

Update a time entry

timeEntry.update

Ce que tu vois dans n8n

Notes & cas d'usage

Les corrections passent par là plutôt que par une suppression suivie d'une nouvelle saisie : la ligne garde sa place dans la chronologie.

Paramètres clés

  • Time Entry ID : la ligne à corriger.
  • Hours : la durée rectifiée.
  • Started Time et Ended Time : les heures d'horloge, quand la ligne a été créée depuis un début et une fin.
  • Notes : l'endroit où consigner la raison de la correction.
Cas d'usage
arrondir la durée d'un ticket terminé au pas convenu avec le client et noter l'ajustement.

User

6 opérations
46

Create a user

user.create

Ce que tu vois dans n8n

Notes & cas d'usage

L'opération inscrit une personne dans le compte Harvest et renvoie la fiche créée avec son identifiant, que les nœuds suivants réutilisent tel quel.

Paramètres clés

  • Account Name or ID : le compte Harvest concerné, choisi dans la liste déroulante ou fourni par une expression n8n, c'est-à-dire une valeur reprise du nœud précédent, du type {{ $json.accountId }}.
  • First Name, Last Name et Email : les trois champs d'identité obligatoires, l'email affichant name@email.com comme format d'exemple.
  • Additional Fields : 13 options en plus, dont Is Admin, Default Hourly Rate et Weekly Capacity, comptée en secondes et calée par défaut sur 126000, soit 35 heures par semaine.
Cas d'usage
un cabinet d'architectes ouvre la fiche de l'indépendant dès la signature.
47

Delete a user

user.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Supprimer ici veut dire supprimer pour de bon. Cette opération se place donc en toute fin de parcours de sortie, une fois la dernière facture partie.

Paramètres clés

  • Account Name or ID : indique au nœud dans quel compte Harvest se trouve la personne, par la liste ou par expression.
  • User ID : l'identifiant de l'utilisateur à supprimer. Harvest attend ce numéro, pas une adresse email ni un nom affiché : récupère-le à l'étape précédente avec {{ $json.id }}.
Cas d'usage
une mission se termine, la facturation est soldée, le workflow ferme le siège au lieu de laisser une fiche dormante dans l'équipe.
48

Get data of a user

user.get

Ce que tu vois dans n8n

Notes & cas d'usage

Une fiche, un identifiant : le nœud va chercher l'utilisateur demandé et transmet son profil complet à la suite du workflow, sans passer par une recherche manuelle.

Paramètres clés

  • Account Name or ID : le compte Harvest interrogé, sélectionné dans le nœud ou résolu par expression.
  • User ID : l'identifiant de l'utilisateur à récupérer, le plus souvent {{ $json.id }} quand la valeur vient d'une étape de liste placée plus haut.
Cas d'usage
une saisie de temps arrive avec un simple numéro d'utilisateur, et cette étape le transforme en fiche lisible avant archivage ou relance.
49

Get data of all users

user.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Voilà l'étape qui donne la liste des personnes rattachées à un compte, un item par utilisateur, point de départ de tout traitement qui boucle sur l'équipe.

Paramètres clés

  • Account Name or ID : le compte dont l'effectif est listé.
  • Return All : coché, n8n enchaîne toutes les pages de l'API Harvest jusqu'au dernier utilisateur ; décoché, Limit fixe le nombre de fiches renvoyées.
  • Filters : 3 options, Is Active pour distinguer les personnes actives des archivées, Updated Since pour ne garder que les fiches modifiées après une date, Page pour viser une page précise.
Cas d'usage
l'export mensuel de l'effectif facturable, filtré sur les seuls comptes actifs.
50

Get data of authenticated user

user.me

Ce que tu vois dans n8n

Notes & cas d'usage

Le nœud relit le profil associé au credential lui-même, autrement dit la connexion enregistrée une fois dans n8n. C'est le test le plus rapide pour vérifier qu'un jeton d'accès ou une connexion OAuth2 atteint bien Harvest.

Paramètres clés

  • Account Name or ID : le seul champ à remplir, et il sert au passage à confirmer que la connexion voit bien ce compte.
Cas d'usage
poser ce nœud juste après avoir créé la connexion, l'exécuter, lire la sortie, et seulement ensuite construire le reste du workflow.
51

Update a user

user.update

Ce que tu vois dans n8n

Notes & cas d'usage

Modifier plutôt que recréer : cette opération ajuste ce que Harvest garde sur une personne déjà présente, sans produire une deuxième fiche pour le même collaborateur.

Paramètres clés

  • Account Name or ID : le compte qui héberge la fiche à corriger.
  • Time Entry ID : c'est le libellé que le nœud donne à l'identifiant obligatoire de cette opération, sa description indiquant « The ID of the time entry to update ».
  • Update Fields : 16 champs modifiables, dont Email, First Name, Last Name, Is Active, Is Project Manager et Cost Rate.
Cas d'usage
une personne prend la responsabilité d'un projet, et une exécution bascule Is Project Manager et Can Create Invoices d'un coup.
Besoin d'aide

Besoin d'aide pour automatiser Harvest avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Harvest et n8n, les questions qui suivent

01L'intégration Harvest n8n est-elle gratuite ?
Oui du côté de n8n. Le nœud Harvest est livré avec n8n : rien à installer, rien à payer en plus pour l'utiliser, que le workflow tourne sur n8n Cloud ou sur une instance que tu héberges toi-même en Docker ou en npm, sous la Community Edition et sa licence Sustainable Use. Le workflow se comporte de la même façon dans les deux cas. Ce que coûte l'abonnement Harvest lui-même est une autre question, réglée par ton offre Harvest et pas par n8n, et le nœud n'y change rien.
02Quels credentials faut-il pour connecter Harvest à n8n ?
Un compte Harvest, puis l'une des deux méthodes d'authentification. La plus simple est le jeton d'accès à l'API : tu crées un personal access token dans Harvest et tu le colles dans le credential. L'autre est OAuth2, qui demande de déclarer une application côté Harvest avant de terminer le parcours web dans n8n. Dans les deux cas le credential se crée une fois dans le menu Credentials et se réutilise dans tous les workflows, le nœud le proposant dans une liste déroulante. À cela s'ajoute Account Name or ID, demandé par les 51 opérations, parce qu'un même identifiant peut couvrir plusieurs comptes Harvest.
03Quelles sont les limites du nœud Harvest dans n8n ?
Il y en a deux qui comptent. Le nœud expose 51 opérations sur 10 ressources, ce qui laisse le reste de l'API Harvest hors de sa portée : tout ce qu'il ne couvre pas passe par le nœud HTTP Request, qui appelle n'importe quel endpoint de l'API en réutilisant le même credential via l'authentification prédéfinie. La seconde tient à la pagination. Les opérations de liste ne ramènent qu'une page tant que Return All reste désactivé, et l'exécution s'arrête alors au nombre fixé par Limit, ce qui tronque discrètement un export qui avait l'air complet.
04Harvest déclenche-t-il un workflow n8n en temps réel ?
Non, parce que Harvest n'a pas de nœud trigger dans n8n. Rien n'est poussé depuis Harvest vers un workflow, l'exécution doit donc être ouverte autrement. Le Schedule Trigger à intervalle fixe est la réponse habituelle : il se déclenche, une opération Get Many lit ce qui a changé, et le filtre Updated Since limite le résultat aux fiches modifiées depuis le passage précédent. Les autres options sont un Webhook n8n, c'est-à-dire une adresse qu'un service tiers appelle quand quelque chose se produit chez lui, ou le trigger d'un autre outil qui réagit déjà à l'événement qui t'intéresse.
05n8n ou Make pour automatiser Harvest ?
Ça dépend de trois critères, et aucun des deux outils ne gagne sur les trois. L'hébergement d'abord : n8n s'installe sur ton serveur ou s'utilise sur n8n Cloud, Make n'existe qu'en version hébergée, ce qui tranche vite pour une équipe qui doit garder les données Harvest chez elle. Le modèle de coût ensuite : Make facture à l'opération, une logique qui se ressent sur les workflows qui parcourent de longues listes de temps passés ou de dépenses. La logique visuelle enfin, et là c'est surtout une affaire d'habitude. Teste le même workflow sur les deux avant de choisir.