Get Google Spreadsheets Data as JSON in your Website

G
Published in: Google Sheets

You can retrieve the content of any public Google Spreadsheet in your web app using JSON feeds. The sharing permissions of the Google Spreadsheet should be either “Public” or set to “Anyone with link can view” for the app to fetch cells from the Google Spreadsheet without authentication.

You will also need to publish the sheet (File -> Publish to the web -> Publish) for the data to be accessible from your website or REST powered web app.

The JSON and XML feeds for any Google Spreadsheet is available at:

JSON Format: https://spreadsheets.google.com/feeds/list/SPREADSHEET/od6/public/basic?alt=json

XML Format: https://spreadsheets.google.com/feeds/list/SPREADSHEET/od6/public/values

Here’s a sample jQuery based example that pulls data from a public spreadsheet in Google Drive as JSON and prints as HTML. This can be clubbed with IFTTT or Zapier for more useful integrations.

<div class="results"></div>

<script>
  // ID of the Google Spreadsheet
  var spreadsheetID = 'SPREADSHEET KEY';

  // Make sure it is public or set to Anyone with link can view
  var url =
    'https://spreadsheets.google.com/feeds/list/' +
    spreadsheetID +
    '/od6/public/values?alt=json';

  $.getJSON(url, function (data) {
    var entry = data.feed.entry;

    $(entry).each(function () {
      // Column names are name, age, etc.
      $('.results').prepend(
        '<h2>' + this.gsx$name.$t + '</h2><p>' + this.gsx$age.$t + '</p>'
      );
    });
  });
</script>
Published in: Google Sheets

Looking for something? Find here!

Meet the Author

Web Geek, Tech Columnist
A
Amit Agarwal

Amit Agarwal is a Google Developer Expert in GSuite and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India. Read more on Lifehacker and YourStory

Get in touch