Configuration des feuilles Google — compte de service et clé JSON
SheetForge lit les feuilles Google selon deux modes.
- ExportUrl ne nécessite aucun identifiant : partagez la feuille par lien, enregistrez la valeur
#gid=de chaque onglet, et importez. C'est en lecture seule. - SheetsApi s'authentifie comme un compte de service Google et débloque tout le reste : feuilles privées, écriture en retour (répercussion), et Push.
Cette page guide la configuration de SheetsApi de bout en bout : création du compte de service, téléchargement de sa clé JSON, partage de votre feuille de calcul avec lui, et configuration de SheetForge pour utiliser la clé. Aucune expérience préalable de Google Cloud n'est nécessaire. Chaque étape se déroule dans un navigateur web et ne coûte rien.
Le flux complet :
- Créez un projet Google Cloud.
- Activez l'API Google Sheets dans ce projet.
- Créez un compte de service.
- Téléchargez la clé JSON du compte.
- Partagez votre feuille de calcul avec l'adresse e-mail du compte.
- Configurez SheetForge pour utiliser la clé.
1. Créer un projet Google Cloud
- Ouvrez console.cloud.google.com et connectez-vous avec un compte Google — il n'est pas nécessaire que ce soit celui qui possède la feuille de calcul. Un compte personnel fonctionne toujours ; certaines organisations Google Workspace d'entreprise désactivent par politique le téléchargement des clés de compte de service, ce qui fait échouer l'étape 4 avec une erreur de politique d'organisation (voir « Si quelque chose échoue » ci-dessous). Lors d'une première visite, acceptez l'invite Terms of Service pour accéder à la console.
- Dans la barre du haut, cliquez sur le sélecteur de projet (la liste déroulante à côté du logo Google Cloud), puis sur New project.
- Saisissez un nom quelconque (par exemple
sheetforge-sheets) et cliquez sur Create. Laissez l'organisation et l'emplacement à leurs valeurs par défaut. - Lorsque la notification « project created » apparaît, sélectionnez le nouveau projet dans le sélecteur. Tout ce qui suit se déroule à l'intérieur de ce projet, alors assurez-vous qu'il reste sélectionné.
Un projet n'est qu'un conteneur pour les paramètres d'API. En créer un est gratuit, et l'utilisation de l'API Sheets décrite dans ce guide ne coûte rien.
2. Activer l'API Google Sheets
- Ouvrez le menu de gauche (☰) et allez dans APIs & Services ▸ Library.
- Recherchez Google Sheets API et ouvrez le résultat.
- Cliquez sur Enable. Si le bouton affiche Manage, l'API est déjà activée — rien à faire.
3. Créer un compte de service
Un compte de service est une identité machine avec sa propre adresse e-mail. SheetForge se connecte sous cette identité — votre mot de passe Google personnel n'entre jamais en jeu.
- Allez dans APIs & Services ▸ Credentials.
- Cliquez sur + Create credentials ▸ Service account.
- Saisissez un nom (par exemple
sheetforge-reader) ; l'ID du compte se remplit automatiquement. Cliquez sur Create and continue. - Les étapes « Grant this service account access to project » et « Grant users access » sont optionnelles — sautez les deux et cliquez sur Done. L'accès à votre feuille de calcul est accordé en partageant la feuille (étape 5), pas par des rôles de projet.
- Si la console suggère de configurer un écran de consentement OAuth, ignorez-le — les comptes de service n'en utilisent pas.
4. Télécharger la clé JSON
- De retour sur la page Credentials, cliquez sur le compte de service que vous venez de créer (sous « Service accounts »).
- Ouvrez l'onglet Keys.
- Cliquez sur Add key ▸ Create new key, choisissez JSON, et cliquez sur Create.
- Le navigateur télécharge un fichier nommé comme
sheetforge-sheets-1a2b3c.json. C'est l'unique copie — Google ne la conserve pas pour un nouveau téléchargement. Si vous la perdez, supprimez la clé dans l'onglet Keys et créez-en une nouvelle.
Traitez ce fichier comme un mot de passe :
- Déplacez-le quelque part en dehors de votre projet Unity et de votre dépôt, par exemple
C:/keys/sheetforge.json. - Ne le placez jamais sous
Assets/— tout ce qui s'y trouve est commité avec le projet, et une référence égarée (ou un dossierResources/StreamingAssets) peut l'emporter dans un build. - Si la clé venait à fuiter, supprimez-la dans l'onglet Keys (cela la révoque immédiatement) et créez-en une nouvelle.
5. Partager la feuille de calcul avec le compte de service
La clé seule n'accorde rien. Le compte de service ne peut lire que les feuilles explicitement partagées avec lui — exactement comme un collaborateur humain.
- Ouvrez le fichier JSON téléchargé dans n'importe quel éditeur de texte et copiez la valeur
client_email. Elle ressemble àsheetforge-reader@sheetforge-sheets.iam.gserviceaccount.com. - Ouvrez votre feuille de calcul dans Google Sheets et cliquez sur Share.
- Collez l'adresse et choisissez un rôle :
- Viewer suffit pour l'import.
- Editor est requis pour l'écriture en retour — la répercussion de création et le Push.
- Désactivez « Notify people » (l'adresse n'a pas de boîte de réception) et confirmez.
- Si Google avertit à propos d'un partage en dehors de votre organisation, confirmez — un compte de service n'appartient à aucune organisation.
Sauter cette étape est l'erreur de configuration la plus courante — chaque requête échoue alors avec une erreur de permission, aussi correcte que soit la clé.
6. Configurer SheetForge pour utiliser la clé
- Dans votre asset de paramètres d'import, réglez la source sur GoogleSheet et le mode d'accès sur SheetsApi.
- Remplissez
spreadsheetIdavec le long ID tiré de l'URL de la feuille :https://docs.google.com/spreadsheets/d/<this part>/edit. - Indiquez à SheetForge où se trouve le fichier de clé, de deux façons possibles :
- Recommandé — variable d'environnement. Définissez
SHEETFORGE_SHEETS_KEYavec le chemin absolu du fichier JSON. Chaque développeur définit la sienne, aucun chemin n'entre jamais dans le dépôt, et elle est prioritaire sur le champ de paramètres.- Sous Windows :
setx SHEETFORGE_SHEETS_KEY "C:\keys\sheetforge.json"dans un terminal, puis redémarrez Unity et Unity Hub (les processus déjà lancés conservent leur ancien environnement). - Sous macOS/Linux : exportez-la dans votre profil de shell et démarrez Unity depuis ce shell, ou utilisez
launchctl setenvsur macOS.
- Sous Windows :
- Ou — champ de paramètres. Placez le chemin dans
serviceAccountKeyPath, en pointant en dehors du dépôt.
- Recommandé — variable d'environnement. Définissez
- Appuyez sur ↓ Pull from source dans Tools ▸ SheetForge ▸ Data Studio. Un rapport réussi signifie que toute la chaîne — projet, API, compte, partage, clé — fonctionne.
Si quelque chose échoue
- Erreur de permission (
PERMISSION_DENIED/ 403) : la feuille n'est pas partagée avec l'adresseclient_email(étape 5) — l'ID pointe vers une feuille de calcul réelle que le compte de service ne peut pas voir. Requested entity was not found(404) :spreadsheetIdest incorrect — copiez exactement le segment entre/d/et/editdans l'URL de la feuille.- « Service account key creation is disabled » / erreur de politique d'organisation à l'étape 4 : votre organisation Google Workspace impose
iam.disableServiceAccountKeyCreation. Demandez à un administrateur d'autoriser la création de clés pour ce projet, ou créez le projet sous un compte Google personnel — la feuille de calcul peut être partagée avec le compte de service de ce projet, peu importe qui possède la feuille. - « Google Sheets API has not been used in project … or it is disabled » : l'API n'est pas activée dans le projet qui a émis la clé (étape 2) — activez-la là, pas dans un autre projet. Une API tout juste activée peut prendre quelques minutes à se propager.
- Fichier de clé introuvable : le chemin contient une faute de frappe, ou Unity a démarré avant que la variable d'environnement existe — définissez la variable, puis redémarrez Unity et Unity Hub.
- Clé compromise ou perdue : supprimez-la dans l'onglet Keys du compte de service, créez une nouvelle clé JSON, et remplacez le fichier. Rien d'autre ne change — l'adresse e-mail et le partage de la feuille restent valides.
Pages associées
- Sources, export et push — les deux modes Google côte à côte, la gid map, les garde-fous de sécurité du Push
- Prise en main — l'asset de paramètres et votre premier import
- FAQ et dépannage — les réponses liées à Google