Caractéristiques
- Prise en charge de plusieurs méthodes d’authentification — OAuth 2.0 (accès individuel utilisateur), Service Account (communication serveur à serveur), clé API (données publiques)
- API fluide — Manipulation intuitive des données par chaînage de méthodes
- Intégration Laravel Collection — Conversion des données Google Sheets en Laravel Collection. Traitement facile en tableau
- Extensibilité — Ajout de méthodes personnalisées à la Facade via le système de macros
- Intégration Google Drive — Gestion et listage des feuilles de calcul
Cas d’utilisation typiques
- Tableau de bord utilisateur — Afficher et manipuler les données de Google Sheets
- Import/export de données — Transfert massif de données entre l’application Laravel et Google Sheets
- Génération automatique de rapports — Générer et mettre à jour des rapports par programme
- Applications multi-utilisateurs — Chaque utilisateur gère ses propres Google Sheets
Philosophie de conception
L’objectif principal de ce package est la lecture depuis Google Sheets. Plutôt que de spécifier des conditions détaillées avant la lecture, la conception consiste à d’abord récupérer toutes les données sous forme de Laravel Collection, puis à les traiter côté Laravel.Configuration système requise
- PHP >= 8.3
- Laravel >= 12.0
Installation
Activer les API Google
Dans la Google Cloud Console, activez les API suivantes :
- Google Sheets API
- Google Drive API
Choisir et configurer la méthode d'authentification
Choisissez parmi les 3 méthodes :
- Service Account — pour la communication serveur à serveur et les tâches automatisées
- OAuth 2.0 — pour l’accès individuel utilisateur
- Clé API — pour les données publiques uniquement
Choix de la méthode d’authentification
| Méthode | Usage | Interaction utilisateur | Portée d’accès | Difficulté |
|---|---|---|---|---|
| Service Account | Serveur à serveur, automatisation | Aucune | Feuilles de calcul partagées | Moyenne |
| OAuth 2.0 | Applications orientées utilisateur | Consentement requis | Feuilles individuelles de l’utilisateur | Élevée |
| Clé API | Données publiques uniquement | Aucune | Feuilles publiques uniquement | Faible |
Utilisation de base
Considérons l’exemple de structure de feuille de calcul suivant.| id | name | |
|---|---|---|
| 1 | name1 | mail1 |
| 2 | name2 | mail2 |
https://docs.google.com/spreadsheets/d/{spreadsheetID}/...
Récupérez le spreadsheetId depuis l’URL.
Service Account
Lors de l’utilisation de l’authentification par Service Account, la configuration du token n’est pas nécessaire.OAuth
Lors de l’utilisation de l’authentification OAuth, vous devez configurer le token d’accès de l’utilisateur.Récupérer les valeurs de la feuille avec l’en-tête comme clé (recommandé)
Nous recommandons cette méthode car la transformation en collection est simple et le traitement ultérieur reste flexible.Utilisation de la notation A1
À propos de la notation A1
La notation A1 est la méthode standard pour désigner une cellule ou une plage dans Google Sheets (ex : « A1 », « A1:B2 »).- « A1 » désigne la cellule à la colonne A, ligne 1.
- « A1:B2 » désigne la plage (rectangle) allant de la cellule A1 à B2.
- « A:B » désigne toutes les lignes des colonnes A et B.
Étapes suivantes
- Authentification Service Account — la méthode la plus courante
- Authentification OAuth 2.0 — accès individuel utilisateur
- laravel-google-sheets
- Projet de démo — exemple compatible de Laravel 5.5 à 13
- Package associé : Google Search Console API for Laravel