Build a REST JSON API With Google Apps Script

B
Published in: Google Apps Script

This example shows how to build a simple JSON REST API with Google Apps Script. You can make a jQuery AJAX request to the Google Script and the server returns a JSON response. The server side code can interact with Gmail, Google Sheets, and all other Google Services.

The Google Script must be published as a public web app with anonymous access.

function doGet(e) {
  var result = {};
  try {
    if (e.parameter.origin === "digitalinspiration.com") {
      result = {
        "Email Aliases": GmailApp.getAliases().join(),
        "Drive Storage": DriveApp.getStorageUsed(),
        "Script Owner": Session.getActiveUser().getEmail()
      };
    }
  } catch (f) {
    result.error = f.toString();
  }
  return ContentService
  .createTextOutput(e.parameters.callback + '(' + JSON.stringify(result) + ')')
  .setMimeType(ContentService.MimeType.JAVASCRIPT);
}

The client slide JavaScript includes the jQuery library for making an HTTP GET request to the Google script. The webappUrl is the URL of the published Google Script web app and it begins with script.google.com

$.ajax({
  url: webappUrl,
  type : "GET",
  data : {
    origin : 'digitalinspiration.com',
    input : JSON.stringify({
      color: "orange",
      country: "india"
    })
  },
  dataType: 'jsonp',
  success : function (data, status, xhr) {
    console.log("success");
    console.log(data);
  },
  complete : function (xhr, status) {
    console.log("complete");
  }
});
Published in: Google Apps Script

Looking for something? Find here!

Meet the Author

Web Geek, Google Developer Expert
A
Amit Agarwal

Amit Agarwal is a Google Developer Expert in Google Workspace and Google Apps Script. He holds an engineering degree in Computer Science (I.I.T.) and is the first professional blogger in India. He is the developer of Mail Merge for Gmail and Document Studio. Read more on Lifehacker and YourStory

Get in touch