AppsScriptPulse

Using Google Apps Script as a Webhook

Google Apps Script projects can be published as web apps …. This is helpful if you’re building a tool with a simple UI (using HTMLService), but they can also be used as webhooks to do work within a user account.

Google provides the option of service accounts, so why use webhooks?

For my project, it was because I needed to send calendar invites to other people. Service accounts are generally the way to handle those kinds of jobs, but it needed to have full account delegation, which means it can act on behalf of any user in the domain. That wasn’t an option in this case, so a webhook became the next best option.

Brian Bennett highlights the benefits of using ContentService and Web Apps as a way to let you interface other services.

Source: Using Google Apps Script as a Webhook

How to Validate Specific Users on a Web App in Google Apps Scripts – Yagisanatode

Learn how to validate specific users on a Web App, Google Workspace sidebar or dialogue box with Google Apps Scripts. In this tutorial, we will explore how to validate selected users to provide access to your web app. For our example, we validate users based on whether or not they have edit access to a Google Drive file ( a common occurrence). In the discussion, we will also look at alternative ways of validating emails.

Interesting solution for access control to a Apps Script web app by using a Google Doc share permissions as a proxy. The post contains all the code you need and a discussion of other approaches.

Source: How to Validate Specific Users on a Web App in Google Apps Scripts – Yagisanatode

Tracking Google Sheet Opens with Google Apps Script

The basic principle behind tracking Google Sheet opens is the same as the one behind email tracking with a transparent pixel. In a Google Sheet, we will use the IMAGE()function, which will call a deployed Google Apps Script web app URL with some parameters in the query string. The web app will be able to do whatever you need among the following: record to a spreadsheet, create a message via a messenger, or simply send an email.

Source: Tracking Google Sheet Opens with Google Apps Script

XPath Tester using Web Apps Created by Google Apps Script (working with existing Google Sheets functions in Apps Script)

In this post, I would like to introduce the xpath tester using Web Apps created by Google Apps Script.

This is an interesting little Apps Script solution from Kanshi Tanaike which uses the existing Google Sheets =IMPORTXML() in a Google Apps Script  Web App to test an XPath. As there is a delay in loading some Google Sheets function results this post includes a nice little coding pattern using a do...while loop to wait for results to render.

Source: XPath Tester using Web Apps Created by Google Apps Script

Make your own Office Desk Booking with Apps Script

In this new era post Covid, to come back to work we have to maintain a certain quota of people at the office. At Devoteam G Cloud we had this needs and to be able to manage people at office we build a web app with Apps Script to manage team and people presence on site.

A great example from Stéphane Giron using Google Apps Script to rapidly develop and deploy an office management solution. The post highlights the utility of PropertiesService to store data in the web app. This solution falls into the category of minimum viable product, but given the nature of Apps Script could be a great project to build on with integration with other Google services.

Source: Make your own Office Desk Booking with Apps Script

Create a simple Approval process via Email with Google Form and Google Apps Script (Web Apps Deployment)

At the end of this article, you will know how to create a workflow app, based on a Google Form that send an email to be approved or deny including logging of who is approving or denying with Apps Script.

Great post from Jérémy Dessalines who has put together this tutorial for a custom workflow using a Apps Script Web App. The post covers triggers, the publication process and how to generate a unique ID and includes some great tips at the end.

Source: Create a simple Approval process via Email with Google Form and Google Apps Script (Web Apps…

Redeploying Web Apps without changing the URL in the new Google Apps Script IDE

Redeploying Web Apps without Changing URL of Web Apps for new IDE

A ‘feature’ of the new Google Apps Script editor is managing your script project the deployments. A issue some developers are encountering when updating the published version of their web app is the published url changes. In this gist Kanshi Tanaike describes the problem and highlights how developers can update their published Web App without changing the URL.

Source: Redeploying Web Apps without Changing URL of Web Apps for new IDE

Google Apps Script: Store a Unique User Key from a User Accessing your WebApp – Yagisanatode

Google Apps Script: WebApp In this tutorial, we will cover how you can get a unique temporary access key from a user accessing your WebApp that lasts for 30 days. Temporary access keys allow you to track users as they use your WebApp over time while still providing anonymity to the user by providing only an access key to that user.

Source: Google Apps Script: Store a Unique User Key from a User Accessing your WebApp – Yagisanatode

Adding an unsubscribe link to the Google Workspace Solution Gallery ‘Mail merge using Gmail and Google Sheets’

Recently I came across a nice post from Ravgeet Dhillon, which looked at how to Add Unsubscribe link in emails using Google Apps Script. The solution uses a Google Sheet and a Google Apps Script web app to add an unsubscribe link to emails. As I noted when shared via AppsScriptPulse this is a useful addition if your mailing needs comply with PECR or similar electronic communications regulation compliance.

Having recently updated my ‘Create a mail merge using Gmail and Google Sheets’ in the Google Workspace Solution Gallery to handle inline images I thought it would be useful to show how this example can be extended to include a variation on Ravgeet’s post.

Source: Adding an unsubscribe link to the Google Workspace Solution Gallery ‘Mail merge using Gmail and Google Sheets’

Learn how to build an image library with Google Drive and a little Google Apps Script

With Google Drive, Apps Script, Bootstrap, and a little jQuery, you can develop an Image Library web application with search and download functionality!

Useful little tutorial if you are interested in learning how to interact with Google Drive files. The post is also a nice introduction into using the Bootstrap framework for building responsive web apps.

Source: Image Library

Add unsubscribe link in emails using Google Apps Script

Provide your subscribers an option to opt-out of mailing lists by adding unsubscribe link using Google Apps Script.

A useful post on creating a system to allow users to indicate they wish to opt-out of further mailings (useful for PECR or similar electronic communications regulation compliance). The post has the broad steps and code needed for this solution and you will need to fill in some of the blanks like how to record the unsubscribe_hash in the Google Sheet.

Source: Add Unsubscribe link in emails using Google Apps Script

Tracking Email Opens with Gmail, Sheets, and Apps Script

This walkthrough will let you build a tracker for email opens using Gmail, Google Sheet, and Google Apps Script.

Interesting solution that popped up in the Google Apps Script community for logging email opens using Google Apps Script. The post includes a detailed walkthrough for setting this up as well as some caveats about reliability.

Source: Tracking Email Opens with Gmail, Sheets, and Apps Script

Get your Zoom meeting settings via the API and storing in a Google Sheet using Google Apps Script

Get your Zoom meeting settings via the Zoom API and OAuth, using a Web App in Google Apps Script. Here we will access user settings in your Zoom account, specifically the meeting settings, and log the results in a Google Sheet. This provides both a way of confirming we have made a successful connection and will allow us to create subsequent Zoom meetings using these settings.

This will log the results in a Google Sheet to help you understand what is happening and the type of data that is returned.

Source: The Gift of Script: Get your Zoom meeting settings via the API

Connect to Zoom API with Apps Script and OAuth

How to connect to the Zoom API via OAuth. Using Google Apps Script and a Web App. An alternative to JSON Web Token. Includes a tutorial video.

Source: The Gift of Script: Connect to Zoom API with Apps Script and OAuth

Synchronous Class Dashboard with Apps Script – a personalized online interactive classroom

Andy Rundquist has created (and released as open source!) a synchronous class dashboard built entirely out of Apps Script.

As my school went mostly online last spring, I started collecting my thoughts about what I really wish I had for an online platform to work with my students. I quickly realized that my dream of all videos on and fully interactive students 1) wasn’t as good as I thought, and 2) didn’t happen because many students couldn’t or wouldn’t make use of video. I began to realize that video is the dominant feature in things like Zoom and Google Meets. It gobbles up nearly all of the screen space and is responsible for nearly all the bandwidth. So I started to consider what I might be able to do if I just stopped using video.

So I set out looking for ways to build in collaborative tools like whiteboards and understanding checks that would make better use of screen space. This is the result.

https://github.com/arundquist/synchronous-dashboard-with-jitsi

Andy’s full project is on GitHub is worth checking out.

When the Best Google Sheet is the One You Don’t Make

How to build a more perfect workflow for data updates and changes by coding in Apps Script between the Sheets

Thought provoking post by Max Brawer exploring the utility and fragility of using spreadsheets as part of a decision making processes and how Apps Script can be used to overcome some of these shortcomings.

Source: When the Best Google Sheet is the One You Don’t Make

Deploy easily with the new Google Apps Script IDE

A week ago Google announced the availability of an improved code editor for Google Apps Script. … In this article, I’ll focus on the changes related to Versions and Deployments in Apps Script.

Post from Romain Vialard unpicking deployments with the new Apps Script IDE. Romain highlights lots of very useful tips and things to be aware of when deploying Apps Script projects, in particular:

For existing scripts, deploying from the new IDE will create a new deployment with a different url for your web app

Source: Deploy easily with the new Google Apps Script IDE

Creating an embedded interactive Chain Story app with Google Apps Script and Google Sheets – Yagisanatode

In this tutorial, we are going to create an interactive story chain app that we can embed into a Google Site or your own site like WordPress.

Yagi uses a simple but very effective interactive story chain app to explore and explain some very powerful Apps Script functionality all developers should know about. This includes using the LockService which can be used to prevent concurrent access to sections of code. Yagi also highlights some recent discussions around the limitations of Web Apps and concurrent users. Click through to the source for all this and more.

Source: Creating an embedded interactive Chain Story app with Google Apps Script and Google Sheets – Yagisanatode

Getting started with the Google Vision API from G Suite | Google Cloud Blog

The Google Cloud Vision API is a powerful tool that helps developers build apps with visual detection features, including image labelling, face and landmark detection, and optical character recognition (OCR). Getting started building with these services is relatively simple with Apps Script, as it uses simple REST calls to interact with the API directly, eliminating the need to set up SDKs or to download client libraries.

In this post Christian Schalk, Google Cloud Developer Advocate, provides details for setting up a Google Apps Script project with the Google Vision API, using this service to perform optical character recognition on a user selected image.

Source: Getting started with the Google Vision API from G Suite | Google Cloud Blog

Google doc as rest api using Apps Script

After a fight with wordpress, I said to myself: Can I use google doc as content management? .. Join me in this attempt

A simple yet elegant approach to using Google Docs to manage structured content using Google Apps Script.

Source: Google doc as rest api using Apps Script

Moving Card Game using Google Sheets & Apps Script

Moving Card Game using Google Sheets & Apps Script

One popular method to get your students to learn is to categorise things or to put them in order. Here, we’re going to look at making a card sorting game, which could be used for both.

Source: Moving Card Game using Google Sheets & Apps Script

Fast, operational, and awesome prototypes with Google App Scripts and the Airtable API

As of writing Google App Scripts and functions in the code.gs documents use the V8 Runtime which generally supports ES6 syntax. This wasn’t true historically, and Google Scripts was limited ES5 syntax. This was a significant limitation. You’ll likely still find a lot of tutorials for Google App Scripts using ES5 and related workarounds, keep in mind there may be more modern ways to do the same thing now.

If your teams are using G Suite tools and Airtable, the building blocks to build secure and operational web application prototypes may be closer than you think. This article shows you how to get started and offer tips along the way.

Source: Fast, operational, and awesome prototypes with Google App Scripts and the Airtable API

Delegating Client-Side Requests with google.script.run in Google Apps Script – Jeff Everhart

After a while, writing code becomes less about knowing all of the specifics of a language, framework, or platform, but more about being able to match patterns. After seeing a sufficient number of different problems, you get better at saying, “Hey, this bit of problem X seems a lot like this part of problem Y, maybe we could use that.”

In this post, learn about the Delegation Pattern that describes an object whose role it is to accept requests, delegate those responses to other objects, then return the responses to the original caller.

Source: Delegating Client-Side Requests with google.script.run in Google Apps Script – Jeff Everhart

How to make a Ladder Card game with Apps Script

In our foreign language classes, one of the classic activities we do to help students learn new language, is to print phrases onto card, then cut the cards up. We then write the answers on the back of the cards. They then place the cards on a desk and then go through the cards one by one, trying to remember the correct answer.

Here we’re going to make a simple ladder card game using Apps Script and Google Sheets.

Source: How to make a Ladder Card game with Apps Script

Integrate Google sign-in using Firebase authentication on your Google Apps Script web app

make use of firebase’s pre-built ui to authenticate users on our google apps script web app

Sometimes with Google Apps Script web apps you need a way to authenticate the user whilst also publishing the web app to run under a specific account. Sourabh Choraria details how Firebase can be setup allowing you to authenticate users with their Google account.

Source: integrate google sign-in using firebase auth on your google apps script web app

YouTube Uploader – Let Others Upload Videos to your YouTube Channel – Digital Inspiration

Make your own YouTube uploader form and let anyone upload videos of any size to your YouTube channel. The uploader can send videos even anonymously without a Google account.

It is easy to upload videos to your own YouTube channel but there’s one limitation. Only the owner of the channel can upload videos to their YouTube account and they cannot delegate the task to someone else in the team.

Google Drive has the concept of shared folders. A folder can have multiple collaborators and anyone can upload files to that folder. Wouldn’t it be useful if such a feature were available for YouTube channels as well? You maintain a single YouTube account and multiple people can upload videos to your common account without the owner having to share their Google account credentials with anyone.

Source: YouTube Uploader – Let Others Upload Videos to your YouTube Channel – Digital Inspiration

Free Web-Based Paging System with Google Apps Script and Hangouts Chat

If you use G Suite for Education or Business and have five minutes to spare then you’ve got everything you need to make a web-based paging system for FREE.

In essence, it’s a doorbell. But one that can reach you wherever you are.

Source: Free Web-Based Paging System with Google Apps Script and Hangouts Chat

Create an Apps Script web app to collect phone numbers to text message customers updates 📟

In this article the author elaborates on how to create a basic interface using a standalone Apps Script (based on JavaScript and HTML) in order to collect phone numbers on your website, email signature, or wherever you can embed a URL of this web app and have the phone numbers input, delivered to your Google Sheet.

Source: Create an Apps Script web app to collect phone numbers to text message customers updates 📟

Subscribe to Apps Script Pulse...