Martin Hawksey's insight:
Not forgetting you can do some sophisticated data manipulation with built-in Sheet formula like QUERY, SORT and combining others using ARRAYFORMULA
Back in 2011 I showed how you can use Google Apps Script to write POST/GET data to a Google Sheet. Over the years a couple of things have changed in Apps Script so I thought it was worth a revisit. This version uses features like LockService, PropertiesService and ContentService to make it more robust and make it possible to do ajax powered form submissions. The post includes a couple of tips that appear to be catching people out including versioning and permissions scope.
" Using the debugger, you can set break points in the code at places of your choice. When code execution lands on a break point, it halts; while time remains frozen, you can check how your code is operating, examine variable values, read log messages etcetera."
" Being able to write to, and read from, [mySQL] databases directly from your Google Sheet can be a huge advantage. In the e-commerce example, for instance, you may want todownload order information for delivery completion, label printing or later sales analysis, or you may choose to upload new data from your spreadsheet to the on-line store including prices, product descriptions and so forth."
"If you are writing Apps Script webapps and accessing some of the Google JSON APIs services, you're going to need to deal with oAuth2. This library using the statetokenbuilder should help get it right first time."
"I decided to see if I could write a script that would scan the news sites I read each morning and deliver a customized news feed to my Gmail inbox, along with a summary of my day’s calendar ... The script itself is pretty simple: it scans a set of news feeds, creates links to the stories, scans the headlines for specific words, and calls them out separately from the rest of the news. It also reads my calendar for the day’s events and tells me if I have any upcoming events that I have not yet RSVP’d to. "
"In EzyOauth2 - taking some pain out of Apps Script API authentication, I provided a library to simplify oAuth2, then in EzyOauth2 patterns I showed simple patterns for creating apps. Now you will probably want to have multiple authentication packages for different packages and scopes. Unfortunately, everybody's oAuth2 implementation is a little different, but we can still use a standard pattern to abstract away those differences.
To illustrate, I'm going to add a new oAuth2 package - this time for the soundcloud service. "
"Someone recently asked for the ability to schedule send an email. It was for a link to a class feedback form and ideally they'd like to be able to send it near the end of the class.
We looked at Boomerang, which had issues with authenticating with the York domain, and broke the CSS of Gmail slightly. We tried mx Hero, a Chrome app but after a tip off from a colleague and reading the reviews and discovering it at times didn't send the email, or used http rather than https etc we thought it might be better to look into making our own solution.
"Starting today, we are deprecating the option for developers to publish to the script gallery. No new gallery submissions will be accepted or approved, but scripts already present in the gallery will remain accessible (via the old version of Sheets). "
If you are using the Maps.Directions API, and plotting many source/destination points, you may be hitting quota problems (too many calls in too short a time, maximum daily allowance). Here's how to automate the use of waypoints to make your quota go further - reducing the number of API calls required by as much as x 20.