
Niveau : débutant
Durée : 1h30 à 2H
Les Agents IA sont partout.
Alors, tu t’y intéresses et tu découvres qu’ils peuvent réaliser des tâches à ta place.
Et, tu aimerais en avoir un.
Ça tombe bien ! 🥳
Parce que, je vais te présenter comment créer facilement ton premier Agent IA : Ce sera un assistant pour gérer ton agenda Google !

Tu auras besoin de :
- n8n (plateforme d’automatisation, permettant de créer des agents IA)
- une clé API OpenAI et 6$, pour provisionner des crédits (sauf si tu en as déjà)
- un compte Google, avec Google Calendar
- des bases en anglais
- must-have : quelques compétences en automatisation (si tu as déjà utilisé Zapier ou Make, c’est parfait)
À la fin de ce tutoriel, tu auras un agent IA qui peut interagir avec ton agenda.
L’agent IA aura deux fonctionnalités principales :
- La création d’événements
- La récupération d’événements : pour résumer et analyser tes semaines
Pour discuter l’assistant Google Calendar, n8n intègre nativement une interface de chat, que tu peux « embarquer » partout sans coder.
Prêt(e) ?
Tout au long du tutoriel, tu peux :
- cliquer sur les images pour les agrandir
- cliquer sur le bouton « naviguer dans le tutoriel » (à gauche) pour avancer ou revenir en arrière facilement
Étape 0 : Préparer le tutoriel
Création de compte n8n
n8n est une plateforme d’automatisation de workflow. En 2024, Langchain (un framework pour créer des apps avec des LLM), y a été intégré : Il est devenu possible de créer des Agents IA robustes, sans avoir besoin de coder.
Les principaux avantages de n8n :
- une communauté très active (+ de 50K stars sur github)
- source-available et donc, la possibilité de l’auto-héberger
- très orienté IA depuis 2024
Si tu n’as pas encore d’instance n8n auto-hébergée ou de compte n8n cloud, tu peux en créer un facilement.
Ce tutoriel se base la version cloud, que je te conseille pour essayer. Tu as deux semaines d’essai offertes à l’inscription.
Pour créer un compte n8n cloud clique ici puis clique sur "Get started for free"

Une fois que tu as cliqué sur « Get started for free », tu seras redirigé vers un formulaire. Remplis-le, puis clique sur « Try for free ».
- Full Name : Prénom et nom
- Company email : Email professionnelle
- Password : Un mot de passe, choisis-en un unique et robuste
- Account Name : Ce sera l’URL avec laquelle tu pourras accéder à ton instance n8n

Une fois le formulaire rempli, ton patiente quelques minutes, le temps que l’instance se déploie.
Tu pourras ensuite cliquer sur « Start automating » pour accéder à ton premier workflow !
Laissons n8n de côté pour le moment.
Comme mentionné plus tôt, pour créer cet Agent IA, tu auras besoin d’une clé API OpenAI.
Obtenir sa clé API OpenAI
La clé API OpenAI te permet d’accéder aux modèles de langue d’OpenAI, pour créer des applications IA.
Il y a de fortes chances que tu en aies déjà une.
Si non, je te montre comment faire.
Pour créer un compte OpenAI clique ici puis clique sur "Sign Up" en haut à droite.
Tu as déjà un compte ChatGPT ? Clique sur "Log in" et connecte-toi avec ton compte ChatGPT.
Une fois inscrit/connecté, un formulaire te sera proposé.
Tu devras renseigner des informations comme ton nom et le nom de ton entreprise.
Puis, c’est à l’étape 3, « Make your first API Call », que tu pourras générer une clé API.
Remplis le formulaire comme tu le souhaites, par exemple :

Clique sur « Generate API Key », et voilà ! Ta première clé API OpenAI apparaît !
⚠️ Mets-là de côté en sécurité et ne la partage pas.
Enfin, il te sera proposé d’ajouter des crédits.
Eh oui, chaque appel API OpenAI est payant.
Choisis 5$, ça sera largement suffisant. Les tests dans ce tutoriel ne devraient te coûter que quelques centimes.
Et voilà ! Tu as ta clé API OpenAI. Nous allons pouvoir passer à la suite : Le paramétrage des credentials sur n8n.
💡Vigilance :
Tu devrais configurer une limite de facturation sur OpenAI.
Par exemple, 10$.
Va dans Settings (⚙️) en haut à droite.
Puis dans "Limits" à gauche, dans la section "Organization".
Scroll un peu, et dans "Set Budget Alert" mets, par exemple 8$ pour recevoir un mail lorsque le budget est atteint.
Et dans "Enable Budget Limit", mets 10$. Tu ne devrais plus être facturé au-delà car l'API ne fonctionnera plus !
(Évidemment, si à l'avenir tu crées une applications IA qui est essentielle au fonctionnement de ton entreprise, tu surveilles de prêt cette limite, pour éviter que ton app tombe en panne.)
Aussi, si ton mode de facturation est en "Pay as you go", sans auto-recharge : Normalement lorsque ta balance de crédits atteint 0, les appels API sont stoppés et tu ne seras plus facturé.
Réfère-toi à la documentation OpenAI sur le sujet et à leurs conditions d'utilisation pour éviter d'avoir des surprises de facturation.
Étape 1 : Set-up ses credentials sur n8n
Pour fonctionner, l’agent IA a besoin d’accéder à différents services :
- OpenAI
- Google Calendar
Mais comment n8n peut-il accéder à ses services ? Avec des credentials !
Pour OpenAI, c’est la clé API créée à l’étape précédente.
Pour Google Calendar, c’est une autorisation oAuth 2 : Pour autoriser n8n à accéder aux informations et à intéragir avec ton agenda Google.
Paramétrer sa clé API OpenAI sur n8n
Dans le panneau de gauche sur n8n, clique sur Overview.
Tu es mené vers une page qui liste tes workflows. Il devrait n’y en avoir aucun ou un seul.
Sur cette page, clique sur « Credentials » :

C’est ce que tu devrais voir (avec un autre prénom, sauf si tu t’appelles également Nicolas 😀).
Clique sur « Add first credentials » puis sélectionne OpenAI dans la liste déroulante qui apparaît, et clique sur « Continue« .

Dans le formulaire de paramétrage qui apparaît, renseigne ta clé API OpenAI créée lors de l’étape précédente.

Clique sur « Save » et voilà ! Un message de succès apparaît.
Sinon, c’est que tu as mal copié la clé API.
💡Astuce:
Tu peux renommer tes credentials sur n8n, pour mieux t'y retrouver.
C'est très utile si tu ajoutes plusieurs clés API/connexions pour le même service.
Pour renommer tes credentials, dans le formulaire de paramétrage du credential, en haut à gauche, clique sur le nom par défaut (dans la capture d'écran ci-dessus, ce serait "OpenAI Account")
Paramétrer la connexion à Google Calendar sur n8n
n8n cloud
Retour sur la section credentials (Overview -> Credentials), pour en ajouter un nouveau.
Clique sur « Create », en haut à droite.
Recherche « Google Calendar » et sélectionne Google Calendar oAuth2 API.
Clique sur « Continue ».
Le formulaire de paramétrage s’affiche et te propose de « Sign in with Google ».

Clique dessus et tu peux maintenant sélectionner le compte Google avec le Calendar auquel tu veux que l’Agent IA ait accès.

⚠️ Prudence :
n8n est un service populaire et relativement sécurisé.
Mais cela n'empêche pas la vigilance.
Ainsi, si tu as déjà mis dans ton agenda des informations sensibles auxquelles tu ne souhaites pas qu'une application tierce ait accès :
- Ne le fais plus ou évite de le faire au maximum
- Utilise un autre agenda "bidon" pour tester cet agent IA
- Tu pourras aussi envisager d'utiliser n8n en self-hosted pour un meilleur contrôle sur tes données
Pour te renseigner sur la sécurité de n8n, clique ici.
Il t’est proposé 2 niveaux d’autorisation :
- « Afficher et modifier les événements de tous vos calendriers »
- « Afficher, modifier, partager et supprimer définitivement tous les calendriers auxquels vous pouvez accéder à l’aide de Google Agenda. »
Les deux niveaux d’autorisation sont nécessaires pour rendre cet agent IA fonctionel.
ℹ️ Attention, un niveau d’autorisation permettant de « supprimer un calendrier est donné ».
Le paramétrage de l’agent IA n’utilisera pas cette fonction, mais nous avons besoin des autres fonctions de ce niveau d’autorisation.

Tu peux valider. Et voilà ! Tes credentials sont prêts ! Tu peux passer à la création du workflow !
n8n self-hosted
Pour n8n self-hosted, c’est un tout petit peu plus technique, tu peux te référer à la documentation n8n pour configurer des credentials oAuth2 Google.
Je ferai aussi bientôt un tutoriel utilisant une version self-hosted de n8n, alors si tu veux être tenu au courant, tu peux t’abonner à la liste de diffusion dataki :
Étape 2 : Création du workflow de l’assistant Google Calendar sur n8n
Ça y est, les choses deviennent plus concrètes !
L’Agent IA est sur le point d’être créé ! 😱
Sur n8n, dans Overview et Workflows, tu peux créer un workflow en cliquant sur « Create » à droite puis « Workflow ».
Tu peux aussi choisir le projet dans lequel tu souhaites que ce workflow soit créé.

Une fois que tu as cliqué pour créer le workflow, tu seras mené sur une interface de création de workflow.
Pour l’instant, elle est un peu vide, mais c’est normal !
Nous allons y ajouter des « nodes » (je t’explique ça juste après) et les connecter pour créer cet assistant de Google Calendar.

💡Astuce:
Pour mieux t'y retrouver dans tes workflows, il est vivement conseillé de les renommer.
Sur l'image ci-dessus, ça se passe en haut à gauche, au niveau de "My workflow 2".
En cliquant, un autre nom peut être choisi.
Par exemple, "🤖📅 AI Agent - Google Calendar Assistant"
Paramétrage du premier node – Le trigger
Deux mots anglais, « node » et « trigger », que tu découvres peut-être avec le titre de cette partie.
Je t’explique :
Node : Un node (« noeud ») dans n8n est, une étape d’un workflow qui exécute une tâche spécifique, comme manipuler des données ou interagir avec un service (via un appel API).
Trigger : Un trigger (« déclencheur ») dans n8n est un type de node qui démarre un workflow lorsqu’un événement spécifique se produit :
La réception d’un email, une modification de données, l’envoi d’un message dans un chat (😏) ou une heure programmée.
Le trigger privilégié pour ce workflow est le « Chat trigger« .
Pour l’ajouter, c’est simple :
- Clique sur le bouton « ➕ – Add first step »
- Un panneau (appelé le « node panel ») s’ouvre à droite et affiche plusieurs options dont « On chat message« . C’est celle que tu dois choisir.

- Une fois sélectionné, tu peux configurer les paramètres du node. Pour l’instant, laisse la configuration par défaut. Comme ci-dessous :

💡Astuce:
Tout comme pour les workflows et les credentials, tu peux renommer chacun des nodes.
Ce sera plus clair pour toi et pour ceux à qui tu partageras le workflow.
Ici, tu peux par exemple renommer le node "Trigger - When chat message received" (privilégier l'anglais) en cliquant sur "When chat message received"
Ton workflow, avec un trigger configuré, doit maintenant ressembler à ceci :

Testons-le !
Je peux déjà t’annoncer qu’il y aura une erreur, car il n’y a aucun node connecté à ce trigger pour traiter les données reçues.
Mais c’est intéressant pour que tu comprennes comment le trigger « When chat message received » fonctionne.
Pour tester clique sur le bouton « 🗨️ Chat » qui se situe en bas, au centre.
Un chat apparaît ! Tu peux envoyer un premier message original, par exemple, « Bonjour ».

L’erreur ci-dessous apparaît, c’est normal.

Clique sur « 🗨️ Hide chat » (au dessus du chat) et double clique sur le node du trigger.
Tu verras un « item » qui contient les données créées lorsque tu as interagi avec le chat.

- sessionId : L’id de session. C’est la session d’interaction avec le chat. Ça permettra à l’agent IA d’avoir du contexte, basé sur la session !
- action : L’interaction réalisée dans chat. Ici, « sendMessage », l’envoie d’un message. Ça peut permettre aux workflows de prendre des « chemins différents » selon l’action réalisée.
- chatInput : L’entrée envoyée dans le chat. Dans le cas ci-dessus, « Bonjour » ! C’est cette entrée (les messages que tu envoies) que l’on transmettra à l’agent IA !
Configuration du node d’Agent IA
Les informations reçues par le trigger doivent être transmises à un agent IA.
L’avantage de n8n c’est que des nodes natifs te permettent de configurer un Agent IA rapidement et facilement !
Node AI Agent et « System prompt »
Clique sur le ➕ à droite du node de chat. « Trigger – When chat message received »
Le node panel s’ouvre. Clique sur « 🤖 Advanced AI ».

Puis clique sur « 🤖 AI Agent ». Le paramétrage de l’AI Agent apparaît.

Laisse le champ « Prompt Source (User message) » avec la configuration par défaut. Le node « AI Agent » recevra les messages des utilisateurs du chat tel-quel. Avec le test que l’on a fait, il aurait donc reçu « Bonjour ».
Nous devons maintenant ajouter le « Prompt System » : Les instructions de l’AI Agent.
Tu peux le configurer directement sur n8n.
Dans la section « Options » clique sur « Add options » puis « System message« .

Un champ texte apparaît avec un prompt initial « You are a helpful assistant ». Bien sûr, nous allons le modifier.
❗Avant, clique sur « Expression » à droite de « System Message », car nous allons utiliser une variable dans le prompt. Et si la configuration reste sur « Fixed » elle ne sera pas prise en compte.
Voici le prompt que j’utilise et que je te propose. Il est en anglais Si tes compétences en prompt engineering te suggèrent de l’améliorer, tu peux le modifier !
✨ Prompt utilisé :
You are a Google Calendar assistant.
Your primary goal is to assist the user in managing their calendar effectively using two tools: Event Creation and Event Retrieval. Always base your responses on the current date:
{{ DateTime.local().toFormat('cccc d LLLL yyyy') }}.
General Guidelines:
If the user's initial message is vague (e.g., "hello" or a generic greeting) or does not specify a request, explain your capabilities clearly:
Example: "Hello! I can help you manage your Google Calendar. You can ask me to create an event or retrieve event data. What would you like me to do?"
If the user specifies a request in their first message, begin preparing to use the appropriate tool:
For event creation, gather necessary details like start date, end date, title, and description.
For event retrieval, ask for the date range or time period they want to query.
Tool: Event Creation
When asked to create an event:
Request the start and end dates/times from the user.
Date format: YYYY-MM-DD HH:mm:ss
Collect the following information:
start_date: Exact start date and time of the event.
end_date: Exact end date and time of the event.
event_title: Event title in uppercase. Suggest one if not provided.
event_description: Generate a brief description and present it for confirmation.
Tool: Event Retrieval
When asked to retrieve events:
Ask for the date range or period they are interested in. Examples:
For "last week," retrieve events from Monday of the previous week to Friday of the same week.
For "today," use the current date.
Format the date range:
start_date: Start date and time in YYYY-MM-DD HH:mm:ss.
end_date: End date and time in YYYY-MM-DD HH:mm:ss.
Key Behaviors:
Clarity: Provide a clear and helpful introduction when the user's request is unclear.
Validation: Confirm details with the user before finalizing actions.
Adaptation: Handle varying levels of detail in requests (e.g., "Add a meeting for next Monday morning" or "Retrieve my events for this weekend").
Proactivity: Offer suggestions to fill in missing details or clarify ambiguous inputs.
Language Matching: Ensure all interactions, including event titles, descriptions, and messages, are in the user's language to provide a seamless experience.
💡Astuce:
En mode "Expression", le champ texte "System Message" affiche en bas à droite, un icône (ressemblant à ↖️).
Si tu cliques dessus, l'interface de saisie de texte est agrandie et te permet de "jouer" plus facilement avec les variables.

Une « built-in variable » dans le prompt 🤔
Dans le prompt, j’utilise une variable intégrée (« built-in variable ») :
{{ DateTime.local()}}
: Grâce à cette variable, l’agent connaît la date de l’interaction. Elle est dynamique et donc change en fonction du moment où le message est envoyé !
Eh oui, quand tu vas interagir avec l’assistant Google Calendar, il devra avoir une date repère pour gérer les demandes telles que « peux-tu ajouter cet événement pour demain ? » ou « combien de temps ai-je passé en réunion la semaine dernière ?«
Il y a aussi un une fonction de formatage qui suit cette variable :
toFormat('cccc d LLLL yyyy')
: Ce qui pour le 21 septembre 2024 donnerait « Saturday 21 September 2024 » : avoir le nom exact du jour permet à l’IA de « comprendre » les demandes telles que « lundi prochain« , « le premier vendredi de février« , etc.
Tu as l’explication de la présence de {{ DateTime.local().toFormat(‘cccc d LLLL yyyy’) }} dans le prompt.
Les « sub-nodes » : Chat Model, Memory et Tool
À cette étape ton workflow a deux nodes :

Le node AI Agent est configuré comme ci-dessous :

Le Prompt System est configuré ! Sauf qu’il manque des éléments au node « AI Agent » pour fonctionner.
Il s’agit des sub-nodes, encadrés ci-dessous :

Ces nodes (sub-nodes) sont essentiels au bon fonctionnement de l’AI Agent.
- Chat Model : Son cerveau, mais sans mémoire
- Memory : Sa mémoire (et d’ailleurs c’est optionnel)
- Tool : Les outils qu’il a le droit d’utiliser
Chat Model
Clique sur ➕ en dessous de « Chat Model« . Le node panel « Language Models » s’ouvre.

Clique sur « OpenAI Chat Model ».
Le paramétrage du node s’ouvre.
En « credential to connect with », tu as normalement, par défaut, le credential OpenAI créé précédemment.
En Model choisis « gpt-4o-mini ». C’est le modèle avec le meilleur rapport coût-performance disponible chez OpenAI.

Tu peux fermer le paramétrage du sub-node « OpenAi Chat Model » et essayer d’envoyer un message dans le chat :

Et voilà ! L’AI Agent peut maintenant comprendre ce que tu dis !
Tu peux voir que l’interface de chat a changé depuis le premier essai, lorsqu’il était tombé en erreur :
- L’agent te donne désormais une réponse ! C’est grâce à sa connexion au modèle de langue gpt-4o-mini.
- À droite des interactions dans le chat, tu as accès aux logs : les différentes étapes du node AI Agent, avant de te donner une réponse dans le chat.
Memory
Ton AI agent fonctionnera mieux avec en contexte, l’historique des intéractions lors d’une session.
Nous devons lui ajouter un sub-node Memory pour inclure ce contexte.
Clique sur le « ➕« en dessous de Memory du node AI Agent.
Le node panel « Memory » s’ouvre.
Sélectionne « Window Buffer Memory (easiest) ». C’est la configuration de mémoire la plus simple de n8n.

Pour la configuration, c’est simple : Tu peux garder les paramètres par défaut ! 😀
Pas besoin de configurer des credentials supplémentaires !

- La variable {{ $json.sessionId }} du champ « Session Key From Previous Node » est l’ID de session auquel le node doit se référer. Il est pris automatiquement selon les output (les données en sorties) de nodes précédents.
Rappelle-toi, nous avons vu que lorsqu’un message est envoyé dans le chat, le trigger « When chat message received » se déclenche et génère cette variable.
- Il y aura un contexte de 5 interactions, d’où le chiffre 5 dans le champ « Context Window Length »
Maintenant, c’est le contexte des 5 dernières intéractions qui est envoyé au modèle de langue (gpt-4o-mini), plutôt qu’uniquement le dernier message de l’utilisateur. .
Avec cette config, l’AI Agent sera bien plus pertinent dans ses réponses et ses appels Google Calendar.
Pour vérifier que la Memory fonctionne, tu peux envoyer un premier message dans le chat, puis « Quel était mon premier message ? » et s’il te répond avec ton premier message, c’est OK ! 👌
L'historique des conversations ne sera pas sauvegardé.
Si tu veux conserver un historique, tu peux utiliser le sub-node Postgres Chat Memory, si tu as une base de données Postgres à disposition.
Tool
Ça y est, l’assistant IA va avoir accès à ton Google Calendar ! Nous allons utiliser les sub-nodes « Tool » Google Calendar.
Clique sur le « ➕ » en dessous de « Tool » du node « AI Agent ».
Le node panel « Tools » s’ouvre.
Sélectionne « Google Calendar Tool » :

La configuration du node s’ouvre.
Renomme le sub-node par exemple, « Google Calendar – Create events ». Comme nous allons utiliser 2 tools du même service, le renommage est primordial.

Tes credentials Google Calendar ont été créés lors de l’Étape 0. Ils sont normalement sélectionnés nativement.
Si tes credentials ne sont pas connectés, tu peux le faire facilement en modifiant/créant un nouveau credential puis « Sign-in with Google »
Pour le reste, tu peux configurer le sub-node comme ceci et je t’explique juste après :

- Tool description : « Set manually » pour utiliser une description plus précise que celle par défaut.
- Description : « Use this Google Calendar tool when you are asked to create an event. » (« Utilise cet outil de Google Calendar lorsqu’il t’est demandé de créer un événement. »). Pour que l’agent IA comprenne quand il doit appeler ce tool
- Ressource : « Event » car l’opération effectuée par l’assistant portera sur les événements
- Operation : « Create » puisque l’assistant IA doit utiliser ce tool lorsque la demande concerne la création d’événements dans l’agenda
- Calendar : « From list » : Sélectionne le Calendar auquel tu veux que l’agent IA ait accès. C’est sur ce Calendar qu’il créera les événements
- ✨Start : L’horaire à laquelle démarre l’événement
- ✨End : L’horaire à laquelle finit l’événement.
✨Les variables {{ $fromAI(‘start_date’) }} et {{ $fromAI(‘end_date’) }} sont utilisées car c’est l’IA qui remplira dynamiquement ces champs selon la demande !
Par exemple, si tu lui dis « demain de 14H à 16H » il traduira par la bonne date et au bon format afin d’ajouter l’événement dans Google Calendar - ✨Description : Clique sur « Add field » dans la section « Additional fields » puis sélectionne « Description« .
La variable « {{ $fromAI(‘event_description’) }} » est utilisée car c’est l’IA qui remplira dynamiquement ce champ !
Une description d’événement sera créée et proposée, en fonction de la demande de l’utilisateur - ✨Summary : C’est le titre de l’événement. Clique sur « Add field » dans la section « Additional fields » puis sélectionne « Summary« .
La variable « {{ $fromAI(‘event_title’) }} » est utilisée car c’est l’IA qui remplira dynamiquement ce champ !
Un titre d’événement sera créé et proposé, en fonction de la demande de l’utlilisateur
Et voilà ! La configuration du premier tool est finalisée ! 😀
Passons au deuxième !
Clique à nouveau sur le « ➕ » en dessous de « Tool » du node « AI Agent » et sélectionne « Google Calendar Tool »
Cette fois-ci, renomme le tool par « Google Calendar – Get events » car il sera utilisé pour récupérer les événements sur ton agenda.
Voici la config :

- Description : « Use this tool when you’re asked to retrieve events data. » (« Utilise cet outil lorsqu’il t’est demandé de récupérer des données relatives aux événements« )
- Limit : 50, récupère des événements dans une limite de 50. Ça permet d’utiliser moins de tokens (unité de mesure des modèles de langue OpenAI. + de token = + cher en crédits API). Tu pourras utiliser « Return All » si tes demandes à l’assistant concernent plus de 50 événements.
- ✨After : Dans la section « Options » clique sur « Add Option » puis sélectionne « After »
La variable {{ $fromAI(‘start_date’) }} est utilisée car c’est l’IA qui remplira dynamiquement ce champ.
Par exemple, si tu demandes « combien de temps ai-je passer en réunion la semaine dernière ?« , l’assistant déduira la date de « début » à partir de laquelle il doit récupérer des événements. - ✨Before : Dans la section « Options » clique sur « Add Option » puis « Before »
La variable {{ $fromAI(‘end_date’) }} est utilisée car c’est l’IA qui remplira dynamiquement ce champ.
Par exemple, si tu demandes « combien de temps ai-je passer en réunion la semaine dernière ?« , l’assistant déduira la date de « fin » après laquelle il ne doit plus
récupérer d’événements.
Et voilà ! Les deux tools Google Calendar sont configurés ! Tu vas pouvoir tester ton assistant IA ! 👏
Étape 3 – Tester son assistant Google Calendar ! 🤩
C’est l’heure d’essayer ! Tu peux demander à l’assistant IA d’interagir avec ton agenda !
Pour commencer, tu peux lui demander de créer un événement.
Ensuite, tu pourras lui demander de récupérer des événements passés.
Assistant IA : Test de création d’événements dans Google Calendar
Sur n8n, ouvre à nouveau le chat.

Tu peux commencer avec un premier message :
« Bonjour, je souhaiterai créer un événement dans mon agenda. »
Il devrait te donner une réponse qui ressemble à celle ci-dessous :

Ne fais pas attention au format de date demandé. L’assistant IA va formater la date à ta place.
Tu peux répondre par exemple :
« Je participe à un Atelier Assistant IA de dataki, demain de 14H à 16H »
Tu obtiendras une réponse semblable à celle-ci :

L’assistant a :
- Donné un titre en majuscule, comme indiqué dans le Prompt System
- Formaté correctement la date de début de et de fin d’événement
- Créé une description
À ce moment là, l’événement n’est pas encore créé.
Car le Prompt System charge l’assistant de demander à son utilisateur une validation, avant de créer l’événement.
Tu peux répondre :
Oui c’est parfait 😀
Patiente quelques secondes et… l’événement a été créé dans ton agenda ! Tu peux même le voir dans les logs, à droite du chat !

Et tu peux le voir dans ton agenda :

Tu peux supprimer l’événement comme il s’agit d’un test.
🕰 Google Calendar a une TimeZone configurée.
Et ton workflow n8n également.
Si elles ne correspondent pas, l'événement sera créé en décalé.
Par exemple, 15H-17H, au lieu de 14H-16H.
Modifier la TimeZone sur Google Agenda : ⚙️ Settings > General > Timezone
Modifier la TimeZone du workflow n8n : "..." (en haut à droite) > Settings > TimeZone
Assistant IA : Test de récupération d’événements dans Google Calendar
Tu peux réinitialiser la session de chat ou la poursuivre, peu importe !
Demande par exemple :
« Combien de temps ai-je passé en réunion la semaine dernière ? »
(Si tu n’as aucun événement de réunion la semaine dernière, crée en des bidons, ou pose une autre question 😆)
Voici le type d’échange que tu devrais avoir :

L’assistant IA récupère correctement les événements et compte le nombre d’heures selon les événements récupérés.
Et promis, si un jour nous avons une réunion ensemble, elle portera un nom plus sympa que « Réunion blabla » 😀
Étape 4 – Un œil sur les coûts OpenAI
Au début de ce tutoriel, tu as probablement créé un compte OpenAI et provisionné 5$.
Les interactions avec l’assistant IA font appel au service OpenAI et sont donc facturées.
Je te conseil d’avoir toujours un oeil sur les coûts OpenAI, même si tu as configuré des budget limits.
Rends toi sur https://platform.openai.com/ > Settings > Usage
Tu verras tes coûts :

En toute logique, les essais de l’assistant IA t’ont coûté quelques centimes.
Et l’activité (nombre de tokens utilisés par modèles) :

Étape 5 – Utiliser une interface chat dédiée pour utiliser l’assistant
Pour l’instant, tes interactions avec l’assistant IA se font directement depuis le workflow sur n8n.
C’est peu pratique pour l’utiliser ou le partager !
Configuration de l’interface de chat
Mais n8n a une fonctionnalité géniale ! Elle te permet de générer une interface de chat !
Avec une URL pour que tes collègues puissent y accéder ! 🥳
Retour sur le workflow n8n, clique sur le node « Trigger – When chat message received ».
Et créé cette config. Je t’explique juste après :

- Make chat publicly available : Activé. Et Mode « Hosted Chat ». Ça permet d’avoir une URL publique pour accéder au chat.
- Authentication : « Basic Auth », tu pourras configurer un login et un mot de passe pour accéder au chat. Il y a une URL publique, mais tu ne veux pas que tout le monde y ait accès ! 😉
- Credentials for basic auth : Clique sur « Create new credential » et crée un nom d’utilisateur et un mot de passe, le plus sécurisé possible.
- Initial message(s) : Les messages initiaux lorsque l’utilisateur se connecte au chat.
Par exemple « Hi there! 👋
I’m your Google Calendar Assistant.
How can I help you today ? » (« Bonjour à tous ! 👋 Je suis votre assistant Google Agenda. Comment puis-je vous aider aujourd’hui ?« )
Test de l’interface de chat partageable
Maintenant, nous devons tester l’interface de chat publique (protégée par mot de passe) que nous venons de créer.
Pour cela, rends-toi sur ton workflow n8n, puis en haut à droite, active-le.

Maintenant, clique sur le trigger « Trigger – When chat message received » puis, clique sur « Chat URL » pour copier l’URL.

Colle cette URL dans un nouvel onglet de ton navigateur.
Tu seras invité à t’authentifier avec le nom d’utilisateur et mot de passe que tu as créé précédemment.

Et voilà ! Tu as accès à ton assistant avec une URL ! 🥳
Plus simple à utiliser que via le workflow n8n.

💡Astuce:
Tu peux modifier le titre "Hi there! 👋" et le sous-titre "Start a chat. We're here to help you 24/7." en modifiant le node "Trigger - When chat message received".
Clique sur le node, puis dans "Options", "Add options" et sélectionne "Title", puis "Subtitle".
Tu peux lui demander de créer un événement, ou de récupérer des événements pour vérifier que tout fonctionne.

Si ton chat fonctionne, félécitations ! Tu viens de créer ton premier assistant IA Google Calendar, avec n8n ! 👏
Nous allons passer à la dernière partie, te proposant des pistes pour améliorer cet assistant.
⚠️ Pense à désactiver ton workflow n8n, si tu ne penses pas utiliser l'assistant pour le moment.
Sur le workflow n8n, clique sur le toggle "Active" en haut à droite pour le désactiver.
Étape 6 – Améliorer l’assistant IA Google Calendar ✨
Bon, il est sympa cet assistant IA.
Il répond à tes questions en récupérant des listes d’événements, et peut aussi en créer.
Mais maintenant que tu as pris en main n8n, je te suggère de l’améliorer.
Prise en compte des invités
L’assistant IA créé lors de ce tutoriel, crée des événements pour toi uniquement, sans invités.
Tu pourrais modifier le sub-node « Google Calendar – Create events » pour que l’Assistant IA puisse ajouter des invités aux événements que tu crées.
Ainsi, l’assistant pourrait répondre à des demandes comme « Crée un événement Point projet Assistant IA et invite Nathalie et Jean-Bertrand«
Tu devras adapter le Prompt System, modifier le sub-node de création d’événements, mais aussi fournir une liste de correspondance prénom-nom/email google à l’agent IA.
Optimisation pour le travail en équipe 💪
L’assistant créé dans ce tutoriel est centré sur ton agenda.
Google Calendar te permet d’avoir accès facilement aux agenda des membres de ton équipe.
En co-créant avec ton équipe les fonctionnalités de l’agent Google Calendar, ton équipe et toi pourriez poser des questions sur la globalité des agendas des collègues et temps passés.
Par exemple, pour générer un pré-résumé réunion hebdomadaire, notamment dans une entreprise de service.
Et plein d’autres choses, en fonction des process déjà en place dans ton équipe ! 😀
⚠️ Garder de l'humain :
Si ton équipe fonctionne déjà avec les agenda "ouverts" pour que chacun puisse savoir qui est sur quoi et leurs disponibilités, alors, la proposition ci-dessus peut s'incorporer à vos process.
Si ce n'est pas le cas, attention à la perception. Les agents IA sont là pour améliorer les process déjà en place.
Ajout d’autres services
Gmail, Notion, Asana, Jira…
Ces services te parlent ?
Tu peux rendre ton assistant Google Calendar encore plus puissant en lui donnant accès à ces services.
Sur n8n, Notion, Gmail et Jira sont déjà intégrés en « Tools », que tu peux utiliser en « sub-node« .
Pour d’autres services, comme Asana, ça demande plus d’expérience sur l’outil mais c’est possible !
Tu peux créer un agent qui appelle un workflow sur-mesure, avec une connexion au service dont tu as besoin !
Ou bien, utiliser le sub-node « HTTP Request Tool » pour faire l’appel API au service de ton choix.
Accès via Whatsapp, Slack, Microsoft Teams…
Tu as créé un assistant IA auquel tu peux accéder via une URL publique, en te connectant avec nom d’utilisateur et mot de passe.
Et peut-être que cette solution d’accès à l’assistant ne te convient pas.
Tu peux modifier ton workflow pour intéragir avec l’assistant IA via ton service de messagerie préféré. Whatsapp, Slack, Microsoft Teams…
Pour le partage avec ton équipe, ce sera aussi plus simple !
Ça demande plus d’expérience sur l’outil. Tu devras jouer avec les Webhook, et les différentes configs sur ton service de messagerie directement.
Documente ton workflow sur n8n
Prends l’habitude de commenter tes workflows n8n, directement sur le workflow.
- Ajoute des « sticky notes » : Sur l’interface de workflow, Clique droit > Add sticky note.
- Écris le fonctionnement du node sur la sticky note : Utilise la notation markdown, pour gérer les titres, gras, italique…
- Place la sticky note: Tu peux déplacer la sticky note derrière le node que tu as documenté !
Tu pourras partager ton workflow et permettre à tout le monde de le comprendre.

Conclusion
Et voilà ! Ce tutoriel est fini.
Merci d’être arrivé jusqu’ici et d’avoir essayé cet assistant de gestion d’agenda Google.
Je partage régulièrement des tutoriels, tests, actualités sur les trouvailles que je fais en IA, data et automatisation. Souvent en no-code 😀
Tu peux si tu le souhaites m’ajouter sur LinkedIn.