1 févr. 2018

Transformer une Google spreadsheet en API

Publier une Google spreadsheet pour le Web permet de la rendre, non seulement accessible en lecture-seule à tout le monde, mais également requêtable via HTTP. Il est alors possible de l'utiliser comme base de données.

Publier pour le Web

Pour publier une Google spreadsheet pour le Web :


Il est alors possible d'obtenir l'ID publique de la spreadsheet dans l'URL : 


Accéder à la spreadsheet au format JSON

Une fois la spreadsheet publiée sur le Web, elle devient accessible également via des URLs spécifiques, qui permettent d'en obtenir les données au format JSON. Il est possible d'avoir par exemple :
  • Les informations à propos de la spreadsheet (nom, liste et id des sheets s'il y en a plusieurs) : https://spreadsheets.google.com/feeds/worksheets/SPREADSHEET_ID/public/basic?alt=json

  • Le contenu d'une sheet en particulier, une fois l'id récupéré via la requête précédente (default pour la première sheet) : https://spreadsheets.google.com/feeds/list/SPREADSHEET_ID/SHEET_ID/public/values?alt=json

Le JSON renvoyé par Google étant assez verbeux, il est possible d'utiliser une librairie pour récupérer une version plus concise du contenu d'une sheet.