Guides

Comment connecter Google Sheets à votre application

Pour connecter Google Sheets à votre application, activez l'API Google Sheets dans un projet Google Cloud, créez un compte de service, partagez le tableur avec l'adresse e-mail du compte de service, et stockez sa clé comme secret côté serveur. Votre serveur lit ensuite les lignes avec spreadsheets.values.get et ajoute des lignes avec spreadsheets.values.append. Si les utilisateurs doivent connecter leurs propres feuilles, utilisez OAuth ; si la feuille est entièrement publique, une simple clé API suffit pour la lecture.

Ce guide présente la méthode adaptée, les appels nécessaires, les quotas et les pièges, ainsi que des prompts pour un constructeur d'applications IA. Les détails Google proviennent de la documentation pour développeurs de Google à la date de septembre 2026.

Pourquoi connecter une feuille

Raisons courantes :

  • Conserver le fonctionnement de l'équipe. Le personnel continue de modifier une liste de prix ou un planning dans Sheets ; l'application les affiche.
  • Collecter des données là où les gens regardent déjà. Les nouvelles inscriptions, commandes ou réponses de formulaire arrivent sous forme de lignes.
  • Reporting. Exporter les données de l'application vers une feuille pour les personnes qui travaillent dans les tableurs.
  • Une étape intermédiaire. Partir de la feuille, puis migrer vers une vraie base de données. Voir comment transformer un tableur en application.

Choisir comment votre application s'identifie auprès de Google

Le guide des identifiants de Google décrit trois types :

IdentifiantCe à quoi il donne accèsIdéal pour
Clé APIUniquement les données publiquement disponibles, comme les fichiers partagés avec « Toute personne disposant du lien »Lire une feuille publique
Compte de serviceLes données appartenant à votre application, ou les fichiers précis partagés avec l'adresse du compte de serviceVotre application qui lit et écrit vos feuilles
ID client OAuthLes fichiers personnels d'un utilisateur, après son consentementPermettre à chaque utilisateur de connecter ses feuilles

Pour la plupart des applications, un compte de service est le bon choix : un jeu d'identifiants, qui vous appartient, avec accès uniquement aux feuilles que vous partagez explicitement avec lui.

Pas à pas avec un compte de service

  1. Créez ou choisissez un projet Google Cloud et activez l'API Google Sheets.
  2. Créez un compte de service et une clé pour celui-ci. La clé est un fichier JSON ; traitez-la comme un mot de passe.
  3. Partagez le tableur avec l'adresse e-mail du compte de service, en tant que lecteur pour une lecture seule ou éditeur pour écrire. Le guide de Google indique que cela se fait par l'écran de partage habituel.
  4. Stockez la clé comme secret sur votre serveur, par exemple GOOGLE_SERVICE_ACCOUNT_JSON, ainsi que l'identifiant du tableur (la longue chaîne dans l'URL de la feuille) sous SHEET_ID.
  5. Appelez l'API depuis le serveur avec la bibliothèque cliente de Google pour votre langage.
  6. Mettez les lectures en cache si beaucoup de visiteurs voient les mêmes données, pour ne pas atteindre le quota.

Les appels que vous utiliserez

Tirés du guide de Google sur la lecture et l'écriture de valeurs :

MéthodeCe qu'elle fait
spreadsheets.values.getLit une plage, comme Leads!A1:E
spreadsheets.values.batchGetLit plusieurs plages en une seule requête
spreadsheets.values.updateÉcrit dans une plage précise
spreadsheets.values.appendAjoute des lignes après les données existantes d'un tableau

Les plages utilisent la notation A1. Google précise qu'une plage sans nom de feuille, comme A1:B2, s'applique à la première feuille ; nommez donc explicitement l'onglet pour éviter les surprises lorsque quelqu'un réorganise les onglets.

RAW ou USER_ENTERED

Les écritures nécessitent un valueInputOption :

  • RAW stocke exactement ce que vous envoyez, sous forme de texte. =1+2 est stocké comme le texte =1+2.
  • USER_ENTERED traite la saisie comme si elle était tapée dans Sheets : les dates deviennent des dates et =1+2 devient une formule.

Si vous écrivez du texte saisi par les utilisateurs de votre application, utilisez RAW. Avec USER_ENTERED, quelqu'un pourrait soumettre une formule qui s'exécute lorsqu'un collègue ouvre la feuille.

Quotas et erreurs

À la date de septembre 2026, la page des limites de l'API Sheets de Google indique :

LimiteRequêtes de lectureRequêtes d'écriture
Par minute et par projet300300
Par minute, par utilisateur et par projet6060

Il n'existe pas de limite quotidienne tant que vous restez dans les quotas par minute. Dépasser ceux-ci renvoie 429 : Too many requests, et Google recommande un backoff exponentiel tronqué : attendre de plus en plus longtemps après chaque échec, avec un délai aléatoire, jusqu'à un maximum. Une requête unique qui dépasse 180 secondes expire.

En pratique : n'appelez pas l'API à chaque affichage de page. Mettez en cache les données de la feuille pendant une minute ou plus, regroupez les lectures avec batchGet, et regroupez les écritures lorsque c'est possible.

Options et compromis

ApprocheAvantagesInconvénients
Feuille comme source de données en directLe personnel modifie dans un outil familier ; aucun écran d'administration à construireQuotas, pas de droits par ligne, facile à casser en renommant une colonne
Synchroniser la feuille dans une baseLectures rapides et fiables ; l'application continue de fonctionner si Sheets est en panneIl faut une tâche de synchronisation et une règle pour savoir quelle version l'emporte
Base d'abord, export vers la feuilleL'application possède les données ; la feuille est un rapportLes modifications faites dans la feuille ne remontent pas
Outil d'automatisation intermédiaireAucun code pour les flux simplesUn abonnement de plus ; plus difficile à déboguer

Pour tout ce qui concerne de nombreux utilisateurs ou des données sensibles, une base de données est la meilleure source de vérité. Voir ce qu'est une base de données.

Prompts à donner à votre constructeur IA

Lire une feuille :

Affiche l'onglet « Menu » de notre Google Sheet sur la page menu. Utilise l'API Google Sheets depuis le serveur avec un compte de service dont la clé JSON est dans le secret GOOGLE_SERVICE_ACCOUNT_JSON, et l'identifiant du tableur dans SHEET_ID. Lis la plage Menu!A2:D (nom, description, prix, catégorie). Mets le résultat en cache pendant 5 minutes. Si l'API échoue, affiche la dernière version en cache. N'envoie jamais la clé au navigateur.

Écrire des lignes :

Quand quelqu'un envoie le formulaire de contact, enregistre-le dans notre base de données et ajoute aussi une ligne à l'onglet « Leads » (date, nom, e-mail, message) avec spreadsheets.values.append et valueInputOption RAW. Si Google renvoie 429, réessaie avec un backoff exponentiel ; si l'échec persiste, garde le prospect dans la base et réessaie plus tard.

Erreurs courantes

  • Oublier de partager la feuille avec l'adresse e-mail du compte de service. L'API renvoie alors une erreur de permission, même si la clé est correcte.
  • Clé dans le frontend ou dans le dépôt de code. La clé JSON donne accès à toutes les feuilles partagées avec elle. Voir comment protéger vos clés API.
  • Utiliser USER_ENTERED pour la saisie des utilisateurs, ce qui permet l'injection de formules.
  • Appeler l'API à chaque requête et atteindre le quota par minute au premier pic de trafic.
  • Dépendre de la position des colonnes. Quelqu'un insère une colonne et l'application lit les mauvaises données. Lisez la ligne d'en-tête et associez par nom, ou verrouillez l'en-tête.
  • Partager la feuille plus largement que nécessaire. « Toute personne disposant du lien » la rend publique.
  • Utiliser une feuille comme base multi-utilisateurs. Les écritures simultanées et les permissions manquantes entraînent des pertes ou des fuites de données.

Liste de contrôle

  • API Sheets activée ; compte de service créé
  • Feuille partagée avec l'adresse du compte de service, au rôle minimal nécessaire
  • Clé et identifiant de la feuille stockés comme secrets côté serveur
  • Tous les appels effectués depuis le serveur
  • Noms d'onglets utilisés dans les plages
  • RAW utilisé pour le texte fourni par les utilisateurs
  • Lectures mises en cache ; erreurs 429 gérées avec backoff
  • L'application fonctionne en mode dégradé si Sheets est indisponible
  • Vous avez décidé quelle partie est la source de vérité

Google Sheets dans Mythex

Mythex propose deux façons différentes de travailler avec Sheets. Les connecteurs relient votre compte Google à Mythex pour que l'agent puisse l'utiliser pendant que vous construisez, par exemple pour lire une feuille et construire un tableau de bord à partir de celle-ci ; la documentation indique que les identifiants restent chez le service de connexion de Mythex et n'arrivent jamais dans votre code (voir Connecteurs, et approuvez chaque autorisation demandée par Google). Pour que l'application publiée lise ou écrive seule dans une feuille, la solution fiable est celle de ce guide : une clé de compte de service stockée comme secret du projet, et des appels à l'API Sheets depuis votre serveur, comme dans Intégrer n'importe quelle API. Si vous dépassez les capacités du tableur, demandez à l'agent de déplacer les données dans la base du projet et de construire un tableau de bord par-dessus.

Questions

Comment mon application peut-elle lire une feuille Google privée ?

La méthode habituelle consiste à utiliser un compte de service Google Cloud : activer l'API Sheets, créer le compte de service et sa clé, puis partager le tableur avec l'adresse e-mail du compte de service en tant que lecteur ou éditeur. Votre serveur utilise la clé, stockée comme secret, pour appeler l'API Sheets.

Puis-je utiliser une clé API Google pour accéder à un tableur ?

Uniquement pour des données publiques. Le guide des identifiants de Google indique que les clés API servent à un accès anonyme à des données disponibles publiquement, comme des fichiers partagés avec quiconque possède le lien. Les feuilles privées nécessitent un compte de service ou OAuth.

Quelles sont les limites de l'API Google Sheets ?

À la date de septembre 2026, Google indique 300 requêtes de lecture et 300 d'écriture par minute et par projet, et 60 de chaque par minute, par utilisateur et par projet, sans limite quotidienne. Dépasser ces seuils renvoie une erreur 429 ; Google recommande un backoff exponentiel tronqué.

Faut-il utiliser Google Sheets comme base de données de mon application ?

Cela fonctionne pour de petites applications à faible trafic où les personnes modifient aussi les données dans la feuille. Pour de nombreux utilisateurs, des écritures fréquentes, des relations entre enregistrements ou des droits par utilisateur, une vraie base de données est plus fiable, et vous pouvez toujours exporter vers une feuille.

Mythex · Pricing · Créez tout avec l'IA · Modèles de sites et d'applications · Mythex comparé · Glossaire de la création d'applications avec l'IA · Outils gratuits pour créer des applications avec l'IA · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)