Connecter votre Agent IA à Google Sheets

Piotr Grudzień
Publié le 18 min de lecture
Connecter votre Agent IA à Google Sheets

Introduction

Votre Agent IA parle à chaque visiteur de votre site. Certains sont prêts à acheter, certains posent une question à laquelle il ne peut pas répondre, certains demandent une fonctionnalité que vous n’avez pas encore, et certains veulent une démo. Par défaut, tout cela disparaît lorsque le chat se ferme.

Ce guide vous montre comment connecter votre Agent IA à Google Sheets afin que chacun de ces moments devienne une ligne dans une feuille que votre équipe utilise déjà. Pas de Zapier, pas de webhooks, pas d’ingénieur. Il vous faut deux choses :

Le mécanisme repose sur les AI Actions : des requêtes HTTP personnalisées que votre Agent peut exécuter pendant une conversation. Quickchat AI dispose d’une connexion Google Sheets en un clic qui crée une feuille et une action d’enregistrement de départ pour vous. À partir de là, vous l’adaptez et ajoutez autant de rapports que vous voulez. À la fin, vous aurez quatre rapports fonctionnels, et vous aurez testé chacun d’eux vous-même.

Ceci est un guide long et précis. La référence canonique pour les AI Actions se trouve dans la documentation à l’adresse docs.quickchat.ai/ai-agent/actions. Pour d’autres exemples détaillés d’action personnalisée, consultez connecter votre Agent IA à HubSpot pour enregistrer des contacts, des deals et des tickets, envoyer des notifications Slack avec AI Actions, ou créer un bot Telegram IA pour gérer votre groupe.

Ce que vous allez créer

Quatre rapports, chacun écrivant dans son propre onglet d’une même feuille Google Sheets :

RapportOngletQuand l’Agent écrit une ligne
LeadsLeadsUn visiteur montre une intention d’achat et partage une adresse e-mail
Questions sans réponseUnansweredL’Agent ne peut pas répondre à une question factuelle
FeedbackFeedbackUn visiteur demande une fonctionnalité, signale un bug ou donne un avis positif
Demandes de démoDemosUn visiteur demande une démo ou un appel

Les captures d’écran ci-dessous proviennent d’un Agent de test créé pour une entreprise fictive, Tideline, une plateforme d’analyse des abonnements pour les entreprises SaaS. L’entreprise est inventée afin que l’exemple reste neutre, mais chaque conversation et chaque ligne affichée ici a été produite par un vrai Agent exécutant le vrai pipeline de réponse. Utilisez les informations de votre propre entreprise en suivant ce guide.

Fonctionnement de l’intégration Google Sheets

Toute la fonctionnalité repose sur une idée : une AI Action est une requête HTTP décrite, et une ligne Google Sheets est une requête de ce type.

Anatomie d’une AI Action : le nom, la description qui indique quand l’appeler, les paramètres que l’Agent remplit à partir du chat, et la requête qu’il envoie Une AI Action comporte quatre parties. La description est ce que le modèle lit pour décider s’il doit l’appeler ; les paramètres sont ce qu’il remplit à partir de la conversation.

Quelques informations supplémentaires facilitent la suite de l’article.

  • Écrire une ligne correspond à un appel API. Google Sheets dispose d’un endpoint append qui ajoute une ligne à un onglet. Chaque rapport est un POST vers cet endpoint avec les valeurs de la ligne dans le corps.
  • Les colonnes ne sont pas fixes. Elles correspondent à ce que votre action envoie. Vous décidez des colonnes en modifiant le corps de l’action et la ligne d’en-tête de la feuille. La même intégration peut donc enregistrer des leads, des rapports de bugs ou autre chose.
  • Accès selon le principe du moindre privilège. La connexion Google ne demande que le scope drive.file, qui accorde l’accès exclusivement aux fichiers créés par l’application. Elle ne peut pas voir le reste de votre Drive.
  • L’Agent ne voit jamais vos identifiants. La requête contient un en-tête Authorization dont la valeur est un placeholder, {{google_sheets_access_token}}. Quickchat AI remplit ce placeholder avec un vrai jeton actualisé automatiquement après que le modèle a fait sa partie. Le jeton n’entre jamais dans le prompt.
  • Deux variables intégrées sont disponibles pour toute action sans être définies comme paramètres : {{conversation_url}}, un lien profond vers la conversation dans votre Inbox, et {{conversation_channel}}, le canal utilisé par le visiteur (widget web, Slack, WhatsApp, etc.).

Étape 1 : créer votre Agent IA et lui fournir des connaissances

Le comportement d’un Agent Quickchat provient de deux endroits : son Identity (le prompt principal) et la connaissance que vous lui fournissez pour répondre. Actions & MCPs est l’endroit où vous étendez ce qu’il peut faire, comme écrire dans une feuille Google Sheets. Ce guide utilise Identity (cette étape et l’étape 4) et Actions & MCPs (étapes 2, 3 et 6), puis teste le tout dans AI Preview (étape 5).

Après vous être inscrit, ouvrez Identity dans la barre latérale gauche. AI Main Prompt est l’endroit où vous décrivez ce qu’est votre Agent et comment il doit se comporter. Donnez-lui une description courte et exacte de votre produit, puis mettez les faits qu’il doit pouvoir énoncer (plans, prix, intégrations existantes) dans ses connaissances afin qu’il puisse répondre directement aux questions.

La page Identity montrant le nom de l’Agent IA et le AI Main Prompt qui décrit le rôle de l’Agent Le nom de l’Agent et son prompt principal : une description courte et exacte de votre produit et du comportement attendu de l’Agent. Vous ajoutez le bloc de reporting à la fin de ce prompt à l’étape 4.

Ne vous inquiétez pas de devoir écrire tout ce prompt vous-même. Chaque prompt, description d’action et corps de requête dans ce guide est fourni sous forme de bloc à copier-coller. Vous les collerez donc au lieu de les rédiger. Vous reviendrez à cet écran à l’étape 4 pour ajouter les instructions de reporting.

Étape 2 : connecter Google Sheets

Ouvrez Actions & MCPs dans la barre latérale, cliquez sur Add Action, puis choisissez Google Sheets.

Le menu Add Action avec l’option Google Sheets Actions & MCPs, puis Add Action, puis Google Sheets.

La boîte de dialogue de connexion s’ouvre et, avant que vous n’accordiez un accès, précise ce que le clic unique va configurer : une nouvelle feuille Google Sheets dans votre Drive, ainsi qu’une action d’enregistrement prête à l’emploi, préconfigurée pour les leads. Le provisionnement actuel active l’action de départ. Désactivez-la donc pendant que vous l’examinez ou la réutilisez.

Cliquez sur Connect. Google vous demande quel compte utiliser, puis quelle autorisation accorder. Le seul scope demandé est drive.file, qui permet à l’intégration de toucher uniquement les fichiers qu’elle crée, jamais le reste de votre Drive.

Le sélecteur de compte Google, demandant avec quel compte continuer vers Quickchat AI L’écran de Google : choisissez le compte dont le Drive doit contenir la feuille. L’écran suivant accorde l’autorisation drive.file, qui permet à l’intégration de toucher uniquement les fichiers qu’elle crée.

Lorsque vous approuvez, vous revenez à la page Actions & MCPs. Quickchat AI a :

  1. Créé une feuille de calcul dans votre Google Drive, avec un onglet (Leads) et une ligne d’en-tête.
  2. Ajouté une AI Action unique et active appelée log_lead_to_google_sheet, déjà connectée à cette feuille.

Cette action de départ est une AI Action normale et entièrement modifiable. L’intégration la préconfigure pour la capture de leads. Conservez le nom log_lead_to_google_sheet afin que la vue de connexion puisse identifier l’action de départ ; modifiez ses paramètres, son corps et sa description selon vos besoins. Dans ce guide, vous allez la désactiver, l’examiner, puis la réactiver comme premier rapport avant d’en créer trois autres à l’étape 6.

Étape 3 : vérifier et activer l’action de lead

L’action log_lead_to_google_sheet créée automatiquement apparaît sous Custom Actions et est active à sa création. Désactivez-la, puis ouvrez-la pour vérifier la configuration avant de la réactiver. C’est le modèle que tous les autres rapports suivront, il vaut donc la peine de le comprendre entièrement.

La page Actions and MCPs listant les quatre actions de reporting Les quatre actions de reporting. Seule la première, log_lead_to_google_sheet, est créée pour vous ; vous ajoutez les trois autres à l’étape 6.

Le haut de l’action contient son nom et les paramètres que l’Agent collecte :

Le nom et les paramètres de l’action de lead Le nom de l’action et les paramètres que l’Agent remplit à partir de la conversation.

Faites défiler jusqu’à la section API Endpoint. Comme Quickchat AI a créé la feuille et cette action ensemble, l’URL est déjà remplie avec l’ID de votre feuille de calcul, la méthode est POST, et les en-têtes sont définis :

La section API Endpoint de l’action de lead : méthode POST, URL complète de l’endpoint avec le véritable ID de feuille, et en-têtes Authorization et Content-Type L’URL complète de l’endpoint contient déjà l’ID de votre feuille. Query Params reste vide : le réglage valueInputOption=RAW est inclus dans l’URL. L’en-tête Authorization contient le placeholder du jeton.

Le {SPREADSHEET_ID} que vous voyez dans la documentation API n’est pas un placeholder actif. Lors de la connexion, Quickchat AI a créé votre feuille et a écrit son ID réel directement dans l’URL de cette action. C’est pourquoi le champ affiche déjà l’adresse complète :

https://sheets.googleapis.com/v4/spreadsheets/<your sheet ID>/values/Leads:append?valueInputOption=RAW

Conservez valueInputOption=RAW : il insère les valeurs littéralement, de sorte qu’un message commençant par = ou + n’est pas interprété comme une formule de feuille de calcul. Vous copierez cette URL exacte dans les trois autres rapports à l’étape 6, en ne changeant que le nom de l’onglet. Vous n’aurez donc jamais à rechercher l’ID manuellement.

Les en-têtes sont les mêmes pour chaque rapport (vous pouvez les lire sur la capture d’écran ci-dessus) :

CléValeur
AuthorizationBearer {{google_sheets_access_token}}
Content-Typeapplication/json

Voici maintenant la partie qui rend les colonnes flexibles. Passez à l’onglet Body, toujours dans la section API Endpoint. Le corps de la requête est une seule ligne, et chaque cellule est un paramètre. L’ordre des cellules dans le corps correspond à l’ordre des colonnes dans la feuille :

{ "values": [[ "{{email}}", "{{what_they_asked}}", "{{conversation_url}}", "{{conversation_channel}}" ]] }

L’onglet Body de la section API Endpoint, montrant le corps de la requête en JSON avec un paramètre par cellule Le corps de la requête se trouve dans l’onglet Body. Chaque {{parameter}} est une cellule, et les cellules suivent le même ordre que les colonnes de la feuille.

Les colonnes ne sont donc pas codées en dur par l’intégration. Elles sont définies par ce corps et par la ligne d’en-tête de l’onglet. Modifiez le corps et l’en-tête, et vous modifiez ce que le rapport enregistre. Voici comment une vraie conversation de lead correspond à cette ligne :

Comment une conversation correspond à une ligne : l’e-mail et la question du visiteur deviennent les paramètres email et what_they_asked, et les deux variables intégrées remplissent les colonnes de lien et de canal Ce que le visiteur dit correspond aux paramètres, et les paramètres correspondent aux colonnes, dans l’ordre. Les deux variables intégrées sont remplies automatiquement.

Les paramètres sont les champs que l’Agent remplit à partir de la conversation. La description de chaque paramètre indique à l’Agent quoi y mettre :

ParamètreObligatoireDescription
emailOuiL’adresse e-mail professionnelle du lead. Obligatoire : demandez-la au visiteur avant l’enregistrement s’il ne l’a pas partagée.
what_they_askedOuiUn court résumé, dans les propres mots du visiteur, de la question qu’il a posée sur les prix ou les plans.

Enfin, la description de l’action. C’est le champ le plus important, car c’est ce que le modèle lit pour décider s’il doit appeler l’action. La version ci-dessous est ajustée pour que l’Agent attende d’avoir réellement une adresse e-mail avant d’écrire une ligne (plus de détails dans la section d’ajustement) :

Enregistrez un lead commercial qualifié afin que l’équipe puisse assurer le suivi. Le déclencheur de cette action est la fourniture par le visiteur de son adresse e-mail alors qu’il montre un intérêt d’achat (il a posé une question sur les prix, les plans, le coût, le calendrier ou le budget). Appelez cette action uniquement lors d’un tour où le visiteur vient de vous donner une vraie adresse e-mail ; mettez cette adresse exacte dans le paramètre email. Si un visiteur montre un intérêt d’achat mais n’a pas encore donné d’adresse e-mail, n’appelez PAS cette action : répondez-lui et demandez d’abord son adresse e-mail. N’appelez jamais cette action lors d’un tour où aucune adresse e-mail n’a été fournie, et jamais avec une adresse e-mail vide ou inventée.

Le thinking message (Noting your interest for our team...) est le court statut que le visiteur voit pendant l’exécution de l’action. Lorsque la configuration est correcte, activez l’action.

Étape 4 : ajouter les instructions de reporting à votre prompt

Les descriptions d’action décident quand chaque rapport se déclenche. Le prompt joue un rôle différent et complémentaire : il indique à l’Agent que le reporting fait partie de son travail, et il empêche les quatre rapports de se chevaucher.

Retournez dans Identity et collez ce bloc à la fin de votre AI Main Prompt. Il couvre les quatre rapports, vous ne le collez donc qu’une seule fois :

## Reporting à l’équipe
Vous disposez de plusieurs actions qui enregistrent des informations utiles dans la feuille Google Sheets de l’équipe. Elles s’exécutent silencieusement en arrière-plan. Elles font partie de votre travail et ne sont pas optionnelles. Lorsqu’une des situations ci-dessous s’applique, appelez l’action correspondante dans le même tour que votre réponse. Vous pouvez à la fois répondre au visiteur et appeler une action dans le même tour. Ne mentionnez jamais la feuille de calcul, l’enregistrement ou ces actions au visiteur. En cas de doute, enregistrez.
- Intention d’achat. Le visiteur pose une question sur les prix, les plans, le calendrier ou le budget. Répondez à sa question, puis capturez le lead. S’il n’a pas encore partagé d’adresse e-mail, demandez uniquement la meilleure adresse e-mail pour que l’équipe puisse assurer le suivi et n’enregistrez rien lors de ce tour. Appelez l’action de lead uniquement lors du tour où vous avez réellement son adresse e-mail (ou lorsqu’il a refusé d’en partager une). Enregistrez chaque lead une seule fois.
- Lacune de connaissance. Vous ne pouvez pas répondre entièrement à une question factuelle (par exemple sur la sécurité, les certifications, les politiques, le juridique ou une capacité spécifique), ou le visiteur demande un humain, ou le visiteur semble insatisfait. Enregistrez cela comme une question sans réponse. Les questions de prix sont traitées par l’action de lead et les demandes de fonctionnalités par l’action de feedback. Ne les enregistrez donc pas aussi comme questions sans réponse.
- Feedback. Le visiteur demande une fonctionnalité ou une intégration que vous ne proposez pas, signale un bug ou donne un avis très positif. Enregistrez cela comme feedback produit.
- Demande de démo. Le visiteur demande explicitement une démo, un appel ou à parler au service commercial. Collectez son adresse e-mail, ainsi que son nom et son entreprise s’ils sont fournis, puis enregistrez la demande de démo.

Le bloc de reporting collé à la fin du AI Main Prompt, sous l’identité de l’Agent Collez le bloc tout à la fin de votre prompt principal, après l’identité de l’Agent. Il couvre les quatre rapports, vous ne l’ajoutez donc qu’une seule fois.

Étape 5 : tester le rapport de leads

Vérifiez maintenant que cela fonctionne avant qu’un vrai visiteur ne le voie. AI Preview est le moyen interactif en direct de discuter avec votre Agent exactement comme le ferait un visiteur. (Plus tard, vous pourrez aussi utiliser Simulation pour rejouer de nombreux messages de test en une seule fois et noter les réponses ; consultez comment ajuster les rapports.) Comme les deux sont des canaux de test, la colonne Channel indiquera preview ou simulation plutôt qu’un vrai canal.

Ouvrez AI Preview dans la barre latérale et menez la conversation qu’aurait un vrai visiteur : posez une question sur les prix, puis partagez une adresse e-mail.

Une conversation sur les prix dans AI Preview où l’Agent répond à la question sur le plan Growth et où le visiteur partage une adresse e-mail L’Agent répond à la question sur le plan Growth à partir de ses connaissances. Une fois qu’il a l’adresse e-mail du visiteur, il enregistre le lead en arrière-plan.

Voir exactement ce que l’Agent a fait

Vous n’avez pas besoin de deviner si l’action s’est déclenchée. Ouvrez cette conversation dans votre Inbox et développez l’appel d’action affiché sous la réponse de l’Agent. Il liste quelle action a été exécutée, les valeurs exactes envoyées et le fait qu’elle a réussi (200) :

Le transcript de conversation dans l’Inbox montrant l’appel d’action enregistré avec ses paramètres et un statut 200 Dans la conversation, l’appel d’action de l’Agent est enregistré intégralement : le nom de l’action, les paramètres envoyés et le résultat.

Et la ligne écrite arrive dans l’onglet Leads :

Le lead capturé dans la feuille Quickchat Leads Le lead, écrit directement dans la feuille. Chaque rapport dispose de son propre onglet en bas.

Le Conversation link ouvre la conversation complète dans votre Inbox, afin que la personne qui assure le suivi ait le contexte. La colonne Channel indique d’où vient le visiteur.

Chaque action conserve aussi son propre call log sur la page Actions : nombre total d’appels, taux de réussite, latence moyenne, ainsi que les paramètres et la réponse de chaque appel individuel. C’est là que vous vérifiez, dans la durée, que l’Agent appelle la bonne action avec les bonnes valeurs :

Le call log de l’action de lead montrant le nombre total d’appels, le taux de réussite, la latence moyenne et un appel récent réussi Le call log par action : à quelle fréquence elle s’exécute, à quelle fréquence elle réussit, et ce que chaque appel a envoyé et reçu.

Voilà la boucle complète : une conversation, une décision de l’Agent, un appel d’action et une ligne exploitable. Les trois rapports restants suivent le même modèle.

Étape 6 : ajouter les trois autres rapports

Chaque rapport nécessite deux éléments : un onglet dans votre feuille, et une nouvelle AI Action qui y ajoute des lignes.

Ajouter les trois onglets

Ouvrez votre feuille (le lien Open sheet dans la boîte de dialogue Google Sheets) et ajoutez trois onglets (Unanswered, Feedback, Demos), chacun avec la ligne d’en-tête indiquée dans son rapport ci-dessous.

Créer chaque action

Ouvrez Actions & MCPs, ajoutez une action personnalisée HTTP Request, puis remplissez-la. La méthode (POST) et les en-têtes sont identiques à ceux de l’action de lead. Pour l’URL, copiez l’URL complète directement depuis votre action de lead et ne changez que le nom de l’onglet (Leads vers Unanswered, Feedback ou Demos). Comme cette URL contient déjà l’ID de votre feuille, il n’y a rien d’autre à connecter :

https://sheets.googleapis.com/v4/spreadsheets/<your sheet ID>/values/Unanswered:append?valueInputOption=RAW

Seuls le nom de l’onglet, les paramètres, le corps et la description changent d’un rapport à l’autre.

Rapport 2 : questions sans réponse

Le rapport le plus utile. L’Agent vous indique exactement où ses connaissances sont insuffisantes et quels prospects sont restés sans réponse, ce qui constitue votre feuille de route de contenu.

Ce rapport ne fonctionne que si l’Agent ne connaît réellement pas la réponse. La lacune doit donc être réelle. Lorsque vous configurez l’Agent de test, omettez volontairement les faits que vous voulez lui faire signaler. L’Agent Tideline connaît ses plans et ses intégrations, mais ne sait rien des certifications de sécurité. Une question SOC 2 est donc une vraie lacune, et non un fait qu’il aurait pu énoncer. Si vous chargez tous les faits dans ses connaissances, ce rapport n’a rien à détecter.

Onglet Unanswered, ligne d’en-tête :

QuestionPourquoi nous n’avons pas pu répondreE-mailLien de conversationCanal

Paramètres :

ParamètreObligatoireDescription
questionOuiLa question du visiteur, dans ses propres mots.
reasonOuiExpliquez brièvement pourquoi vous n’avez pas pu répondre entièrement : information absente de vos connaissances, besoin d’un humain, ou visiteur insatisfait.
emailNonL’adresse e-mail du visiteur s’il l’a partagée ; sinon, laissez vide.

Corps :

{ "values": [[ "{{question}}", "{{reason}}", "{{email}}", "{{conversation_url}}", "{{conversation_channel}}" ]] }

Description (thinking message : Flagging this for our team...) :

Appelez cette action chaque fois que vous ne pouvez pas répondre entièrement à une question factuelle à partir de vos connaissances, que le visiteur demande à parler à un humain, ou que le visiteur semble insatisfait. Si votre réponse indique que vous n’avez pas, ne pouvez pas trouver, ne pouvez pas confirmer ou n’êtes pas sûr de l’information demandée, vous DEVEZ appeler cette action dans le même tour. Enregistrez la lacune même si vous avez donné une réponse partielle. Ne l’appelez pas pour les questions auxquelles vous avez répondu entièrement, pour les prix (traités par l’action de lead) ou pour les demandes de fonctionnalités (traitées par l’action de feedback).

Testé avec une question de sécurité à laquelle l’Agent n’a pas de réponse :

L’Agent refusant de confirmer une question SOC 2 et proposant de la signaler L’Agent indique clairement qu’il ne peut pas confirmer et signale la question à l’équipe.

La ligne qu’il écrit dans l’onglet Unanswered :

La question SOC 2 sans réponse capturée dans l’onglet Unanswered La lacune, enregistrée avec la raison et un lien vers la conversation. La cellule Email est vide car ce visiteur n’a pas partagé d’adresse.

Rapport 3 : feedback

Chaque « prenez-vous en charge X ? » et « j’aimerais qu’il puisse faire Y » devient un backlog priorisé, avec les propres mots du client.

Onglet Feedback, ligne d’en-tête :

TypeRésuméPourquoi / cas d’usageE-mailLien de conversation

Paramètres :

ParamètreObligatoireDescription
typeOuiL’un des éléments suivants : demande de fonctionnalité, bug, éloge.
summaryOuiUn court résumé du feedback dans les propres mots du visiteur.
contextNonPourquoi il le souhaite ou comment il l’utiliserait, si c’est mentionné.
emailNonL’adresse e-mail du visiteur si elle est partagée ; sinon, laissez vide.

Corps :

{ "values": [[ "{{type}}", "{{summary}}", "{{context}}", "{{email}}", "{{conversation_url}}" ]] }

Description (thinking message : Passing this to our product team...) :

Appelez cette action lorsqu’un visiteur demande une fonctionnalité, une capacité ou une intégration (que vous la proposiez actuellement ou non), signale un bug ou un problème, ou donne un avis très positif sur le produit. Définissez type sur l’un des éléments suivants : demande de fonctionnalité, bug, éloge. Ne l’appelez pas pour les questions d’information neutres.

Testé avec une demande d’intégration que l’entreprise ne propose pas :

L’Agent expliquant qu’il n’a pas d’intégration native QuickBooks et enregistrant la demande L’Agent indique les intégrations existantes, refuse clairement, et enregistre la demande comme feedback.

La ligne qu’il écrit dans l’onglet Feedback :

La demande de fonctionnalité QuickBooks capturée dans l’onglet Feedback Chaque ligne est typée (demande de fonctionnalité, bug ou éloge), résumée dans les mots du visiteur, et liée à la conversation.

Rapport 4 : demandes de démo

Quand quelqu’un veut explicitement parler à votre équipe, capturez une ligne structurée et prête pour la vente.

Onglet Demos, ligne d’en-tête :

NomE-mailEntrepriseCas d’usageLien de conversation

Paramètres :

ParamètreObligatoireDescription
nameNonLe nom du visiteur s’il est partagé ; sinon, laissez vide.
emailOuiLa meilleure adresse e-mail pour que l’équipe puisse le contacter.
companyNonLe nom de son entreprise s’il est partagé.
use_caseNonCe qu’il veut accomplir ou discuter, si c’est mentionné.

Corps :

{ "values": [[ "{{name}}", "{{email}}", "{{company}}", "{{use_case}}", "{{conversation_url}}" ]] }

Description (thinking message : Setting up your demo request...) :

Appelez cette action uniquement lorsque le visiteur demande explicitement à réserver une démo, planifier un appel ou parler à un commercial. Collectez d’abord son adresse e-mail, ainsi que son nom et son entreprise s’ils sont fournis. Ne l’appelez pas simplement parce que quelqu’un a partagé une adresse e-mail ou posé une question sur les prix ; utilisez l’action de lead pour l’intérêt d’achat général.

Testé avec une demande explicite de démo :

L’Agent confirmant une demande de démo et notant les informations du visiteur L’Agent confirme la démo et note le nom, l’entreprise et le sujet.

La ligne qu’il écrit dans l’onglet Demos :

La demande de démo capturée dans l’onglet Demos avec nom, e-mail, entreprise et cas d’usage Une ligne structurée et prête pour la vente : qui, où la personne travaille et ce qu’elle veut voir.

Les quatre rapports écrivent dans une seule feuille de calcul, chacun dans son onglet, et se remplissent au fil des conversations.

Comment ajuster les rapports

Les rapports ci-dessus n’ont pas bien fonctionné au premier essai, et le processus de correction est la partie la plus utile à reproduire, car c’est ainsi que vous obtiendrez vos propres rapports corrects. La boucle est toujours la même :

  1. Jouez le visiteur. Ouvrez AI Preview et menez exactement la conversation qu’aurait un vrai visiteur.
  2. Lisez le résultat, pas seulement la réponse. Ouvrez l’onglet de la feuille et le call log de l’action (les deux sont montrés à l’étape 5) et examinez la ligne écrite ainsi que les paramètres que l’Agent a réellement envoyés.
  3. Repérez l’écart. Comparez ce qui a été enregistré avec ce qui aurait dû être enregistré.
  4. Changez une seule chose. Modifiez la description de l’action (elle contrôle quand l’action se déclenche), ou le bloc de prompt, mais un seul élément à la fois afin de savoir ce qui a changé le résultat.
  5. Relancez la même conversation et vérifiez que la ligne est désormais correcte.

Deux changements issus de cette boucle ont été les plus importants, et tous deux provenaient directement d’une mauvaise ligne :

Deux corrections trouvées par simulation : le lead enregistré trop tôt avec un e-mail vide, corrigé en rendant l’e-mail obligatoire et en déclenchant sur celui-ci ; et la lacune de connaissance qui n’enregistrait rien, corrigée par une formulation impérative Les deux changements importants, chacun trouvé en lançant une conversation et en lisant la ligne produite.

Correction 1 : le lead s’est déclenché trop tôt. La première description liait le déclencheur à la question : « appeler cette action lorsque le visiteur pose une question sur les prix, les plans ou le coût ». Lors d’une conversation sur les prix, l’Agent a répondu et enregistré le lead dans le même tour, avant que le visiteur ait donné une adresse e-mail. La ligne est arrivée sous la forme [ (empty), "Growth plan cost", link, simulation ] : un lead sans moyen d’assurer le suivi. La correction a consisté à déplacer le déclencheur de la question vers la coordonnée de contact. La description indique maintenant d’appeler l’action uniquement lors du tour où le visiteur a réellement fourni une adresse e-mail, et le paramètre email est marqué obligatoire. En relançant la même conversation, l’Agent a répondu à la question sur les prix, n’a rien enregistré pendant ce tour, puis a écrit la ligne seulement après que le visiteur a partagé une adresse.

Correction 2 : la lacune de connaissance est restée silencieuse. Le rapport de questions sans réponse a été le plus difficile à déclencher. La première description (« appeler cette action si vous ne pouvez pas répondre à une question ») n’a presque rien fait : interrogé sur la certification SOC 2 du produit, l’Agent a correctement indiqué qu’il ne pouvait pas confirmer et a orienté le visiteur vers l’équipe, mais il n’a rien enregistré. Pour le modèle, « je ne sais pas » ressemble déjà à une réponse complète. Il ne reste donc pas de signal qui l’incite à aussi enregistrer la lacune. La correction a été une formulation impérative : la description indique maintenant que si la réponse dit que l’Agent ne peut pas confirmer ou n’est pas sûr, il DOIT appeler l’action dans le même tour. Avec cela, la même question SOC 2 a produit à la fois une réponse honnête et une ligne dans l’onglet Unanswered. Ce rapport reste celui qui repose le plus sur le jugement parmi les quatre, car il dépend de la capacité de l’Agent à remarquer sa propre lacune plutôt que d’un signal explicite du visiteur ; il se déclenche de manière plus fiable lorsque le visiteur demande aussi à être recontacté.

Ce que le bloc de prompt fait, et ne fait pas. Les descriptions d’action décident quand chaque rapport se déclenche. Le bloc de prompt de l’étape 4 a trois rôles distincts : il indique à l’Agent que les rapports ne sont pas optionnels, il sépare les cas qui se chevauchent (une question sur les prix est un lead, pas une question sans réponse), et il définit la règle consistant à demander une adresse e-mail avant d’enregistrer un lead. Une réserve honnête issue des tests : le fait que l’Agent demande proactivement une adresse e-mail lorsqu’un visiteur montre de l’intérêt sans en donner une varie d’une exécution à l’autre. Ne vous y fiez donc pas. La garantie que vous n’obtiendrez jamais un lead avec e-mail vide est le paramètre email obligatoire plus la formulation du déclencheur, pas le prompt.

Tester à grande échelle avec Simulation

Une fois qu’un rapport fonctionne, Simulation (sous Testing dans la barre latérale) vous permet de vérifier qu’il ne régresse pas. Vous lui fournissez un jeu de données de messages de test, il les rejoue tous via votre Agent, et un evaluator (un LLM qui note chaque réponse selon une grille que vous rédigez, sur une échelle de 1 à 5) note les réponses pour vous. C’est l’outil adapté pour détecter des baisses dans la qualité de ce que l’Agent dit sur de nombreux cas à la fois.

Une exécution de simulation sur un jeu de données de quatre messages : chaque message de test, la réponse de l’Agent, et la note de l’evaluator de 1 à 5 avec sa justification Une exécution de simulation sur les quatre scénarios de rapport. Chaque ligne contient un message de test, la réponse de l’Agent, ainsi que la note et le raisonnement de l’evaluator. Ici, les quatre réussissent avec 5 sur 5.

Une limite importante : l’evaluator ne voit que le texte de la réponse, pas votre feuille de calcul. Il ne peut pas confirmer que la bonne ligne est arrivée dans le bon onglet. Pour cela, utilisez la feuille et le call log de l’action de l’étape 5, exactement comme le fait la boucle d’ajustement ci-dessus.

Note opérationnelle. Chaque conversation de test utilise les messages IA mensuels de votre Agent. Si l’Agent renvoie soudain un avis d’indisponibilité pendant les tests, vous avez atteint le plafond. Ce n’est pas un bug.

Mise en production

Une fois les quatre actions activées et le bloc de prompt en place, déployez votre Agent sur ses vrais canaux. Il n’y a rien d’autre à configurer : les mêmes actions s’exécutent pour le widget web, Slack, WhatsApp et les autres canaux, et la colonne Channel indique d’où vient chaque ligne. Votre équipe voit la feuille se remplir en temps réel, et chaque ligne renvoie directement à la conversation qui l’a produite.

Questions fréquentes

Faut-il du code pour connecter un agent IA à Google Sheets ?

Non. La connexion à Google Sheets se fait en un clic, et chaque description d’action, prompt et corps de requête dont vous avez besoin est fourni dans ce guide sous forme de bloc à copier-coller. Vous n’écrivez ni n’hébergez jamais de code.

Faut-il Zapier ou un webhook pour connecter mon Agent IA à Google Sheets ?

Non. Quickchat AI se connecte directement à Google Sheets via une AI Action, une requête HTTP native que l’Agent exécute pendant la conversation. Il n’y a ni Zapier, ni service de webhook, ni ingénieur intermédiaire. Un clic crée la feuille et la première action d’enregistrement pour vous.

Mes données Google Drive sont-elles en sécurité ?

Oui. L’intégration ne demande que le scope OAuth drive.file, qui accorde l’accès exclusivement aux fichiers créés par l’application elle-même, comme la feuille qu’elle crée pour vous. Elle ne peut ni lire ni modifier autre chose dans votre Drive, et le jeton d’accès n’est jamais exposé au modèle IA.

Puis-je enregistrer autre chose que des leads ?

Oui. L’intégration est un enregistreur polyvalent. L’action de départ est préconfigurée pour les leads, car c’est le cas le plus courant, mais les colonnes ne sont que le corps de l’action plus la ligne d’en-tête de la feuille. Vous pouvez donc les modifier pour enregistrer des questions sans réponse, des demandes de fonctionnalités, des réservations de démo ou autre chose, comme le montre ce guide.

Sur quels canaux l’enregistrement dans Google Sheets fonctionne-t-il ?

Sur tous. Les mêmes actions s’exécutent partout où votre Agent est déployé (widget web, Slack, WhatsApp, etc.), et la colonne Channel indique d’où vient chaque ligne.

Est-ce payant, et les tests utilisent-ils mes messages IA ?

Vous pouvez commencer gratuitement, et la connexion à Google Sheets elle-même n’ajoute aucun coût. Chaque conversation, y compris celles que vous lancez dans AI Preview et Simulation pendant les tests, compte dans les messages IA mensuels de votre plan. Des tests intensifs consomment donc le même quota que les chats en production.

Que se passe-t-il si je supprime l’action d’enregistrement de départ ?

Vous pouvez la récupérer. Ouvrez Add Action, choisissez à nouveau Google Sheets, puis utilisez Reconnect : l’intégration relance la configuration en un clic, recrée l’action log_lead_to_google_sheet et réutilise votre feuille existante (elle n’en crée jamais une deuxième). Lorsque vous êtes déjà connecté, la boîte de dialogue de connexion propose directement cette option de reconnexion.

La boîte de dialogue de connexion après la suppression de l’action d’enregistrement, proposant de se reconnecter et de rajouter l’action Si l’action de départ a disparu, la boîte de dialogue l’indique et propose un chemin en un clic pour la recréer. Votre feuille reste connectée.

Pour un exemple détaillé de communauté produit, suivez le tutoriel de feedback Discord vers Google Sheets. Il enregistre les soumissions explicites pour examen par l’équipe, distingue les limitations documentées des réponses manquantes, et teste le contenu des enregistrements ainsi que la réponse.

Résumé

Une AI Action est une requête HTTP décrite, et une ligne Google Sheets est une requête de ce type. Connectez Google une fois, transformez l’action de départ en rapport de leads, collez le bloc de reporting, puis ajoutez un onglet et une action pour chaque rapport supplémentaire voulu. Les colonnes vous appartiennent : elles viennent du corps de l’action, pas d’un modèle fixe. Les réglages et le prompt de cet article sont ceux utilisés pour produire les lignes affichées ici. Vous pouvez donc les copier, les adapter aux informations de votre propre produit, puis exécuter les mêmes tests pour confirmer que votre Agent fonctionne avant de le présenter à de vrais visiteurs.

Gardez ce guide en favori. La référence continuellement mise à jour pour les AI Actions se trouve dans la documentation à l’adresse docs.quickchat.ai/ai-agent/actions, et la référence API des AI Actions contient la liste complète des champs.