Originally posted to the Google Apps Developer blog

Posted by Edward Jones, Software Engineer, Google Apps Script and Wesley Chun, Developer Advocate, Google Apps

Have you ever wanted a server API that modifies cells in a Google Sheet, to execute a Google Apps Script app from outside of Google Apps, or a way to use Apps Script as an API platform? Today, we’re excited to announce you can do all that and more with the Google Apps Script Execution API.

The Execution API allows developers to execute scripts from any client (browser, server, mobile, or any device). You provide the authorization, and the Execution API will run your script. If you’re new to Apps Script, it’s simply JavaScript code hosted in the cloud that can access authorized Google Apps data using the same technology that powers add-ons. The Execution API extends the ability to execute Apps Script code and unlocks the power of Docs, Sheets, Forms, and other supported services for developers.

One of our launch partners, Pear Deck, used the new API to create an interactive presentation tool that connects students to teachers by converting slide decks into interactive experiences. Their app calls the Execution API to automatically generate a Google Doc customized for each student, so everyone gets a personalized set of notes from the presentation. Without the use of Apps Script, their app would be limited to using PDFs and other static file types. Check out the video below to see how it works.

Bruce McPherson, a Google Developer Expert (GDE) for Google Apps, says: “The Execution API is a great tool for enabling what I call ‘incremental transition’ from Microsoft Office (and VBA) to Apps (and Apps Script). A mature Office workflow may involve a number of processes currently orchestrated by VBA, with data in various formats and locations. It can be a challenge to move an entire workload in one step, especially an automated process with many moving parts. This new capability enables the migration of data and process in manageable chunks.” You can find some of Bruce’s sample migration code using the Execution API here.

The Google Apps Script Execution API is live and ready for you to use today. To get started, check out the developer documentation and quickstarts. We invite you to show us what you build with the Execution API!


Posted by, Laurence Moroney, Developer Advocate

Vulkan is the new generation, open standard API for efficient access to graphics and compute on modern GPUs. In this episode of Coffee with a Googler, Laurence meets with Shannon Woods, a Technical Program Manager in Google’s rendering teams to talk about plumbing code from your app down to the GPU!

Historically mobile apps have used Open GL ES to communicate with the GPU, but the hardware and API have evolved separately, impacting efficiency. Vulkan has been designed to organize the graphics space in much the same way as the underlying GPU, so it can be more efficient.

Android will support both Open GL ES and Vulkan, so developers can choose which API is right for them — and with Vulkan, precise control over the commands executed by the GPU allows for great optimization, as well as parallelization of code.

We also learn about the famous Utah Teapot, a standard reference object for 3D modellers, and how it is found in popular culture -- such as showing up in most animated movies. Have you spotted it?

Watch this episode for some great guidance from Shannon on what you need to do as a developer to prepare for Vulkan, and how using could be of benefit to your apps!


Posted by Taylor Savage, Product Manager, Polymer

Yesterday in Amsterdam we kicked off the first ever Polymer Summit, joined live by 800 developers. We focused on three key themes: Develop, Design and Deploy, giving concrete advice on how you can build your web app from start to finish. You can watch a replay of the keynote here.

It has been amazing to see how much the community has grown and how far the project has come: what started as an experiment in a new way of developing on the web platform has steadily grown into the range of tools, product lines, and community contributions we saw presented throughout the Summit. Since Polymer 1.0 launched in May we’ve seen more than 150,000 public facing pages created with Polymer.

In case you missed any of the sessions, we’ve consolidated all of the recordings below:




Be sure to visit our YouTube channel for the session recordings. For the latest news and upcoming Polymer events, subscribe to the Polymer blog and follow us on Twitter @Polymer.


Posted by Wesley Chun, Developer Advocate, Google Apps

Have you ever booked a dining reservation, plane ticket, hotel room, concert ticket, or seats to the game from your favorite app, only to have to exit that booking app to enter the details into your calendar? It doesn’t make for a friendly user experience. Why can’t today’s apps do that for you automatically?

In case you missed it the episode 97 of #GoogleDev100 the other week, I aim to inspire how app developers can streamline that process with the help of the Google Calendar API. A short Python script, anchored by the following snippet, is illustrated to show developers how easy it is to programmatically add calendar events:

CALENDAR ='calendar', 'v3', http=creds.authorize(Http()))
GMT_OFF = '-07:00' # PDT/MST/GMT-7
    'summary': 'Dinner with friends',
    'start': {'dateTime': '2015-09-18T19:00:00%s' % GMT_OFF},
    'end':   {'dateTime': '2015-09-18T22:00:00%s' % GMT_OFF},
    'attendees': [
        {'email': ''},
        {'email': ''},
}'primary', body=EVENT).execute()

For deeper dive into the script, check out the corresponding blogpost. With code like that, your app can automatically insert your relevant events into your users’ calendars, saving them the effort of manually doing it themselves. One of the surprising aspects is that a limited set of actions, such as RSVPing, is even available to non-Google Calendar users. By the way, inserting events is just the beginning. Developers can also delete or update events instantly in case that upcoming dinner gets pushed back a few weeks. Events can even be repeated with a recurrence rule. Attachments are also supported so you can provide your users a PDF of the concert tickets they just booked. Those are just some of the things the API is capable of.

Ready to get started? Much more information, including code samples in Java, PHP, .NET, Android, iOS, and more, can be found in the Google Calendar API documentation. If you’re new to the Launchpad Online developer series, we share technical content aimed at novice Google developers… the latest tools and features with a little bit of code to help you launch that app. Please give us your feedback below and tell us what topics you would like to see in future episodes!


Posted by Laurence Moroney, Developer Advocate.

App Indexing helps you get your mobile app found in Google Search. Once your app is indexed, mobile users who search for content related to your app can be guided directly to your app, helping you to increase your install base and improve user engagement.

In this episode of Coffee with a Googler, Laurence meets with Jennifer Lin from the App Indexing team, who demonstrates the possibilities!

Jennifer shares that Google has indexed over 50 billion deep links into apps, with searches returning these links to users, taking them directly into your app. She shares how the Daily Mail newspaper in the UK saw a 22% boost in search impressions, and app users spent around 20% more time reading and sharing articles when they came in via a deep link from Search. Additionally, Tabelog, a premier restaurant review app and site in Japan, saw an increase of 9.6% in page views within their app, and a 63% increase in Search impressions after adding their app to the index.

When searching with Google Search on your phone, if the app is already installed, and has content that matches what you’re looking for -- you can be directed straight into the app to get a very rich experience. Alternatively, if the app isn’t yet installed, but has matching content, you can be guided through an install experience for the app, without losing context, so that when the app launches, you’ll go straight to the content you were looking for! Jennifer demos both scenarios using real apps, showing how straightforward the user experience is.

You can learn more about App Indexing, including how to get started on the Google Developers App Indexing site. For more information about other Google Search for Developers APIs, check out


Posted by Taylor Savage, Product Manager, Polymer

The Polymer Summit is almost here! We’ll officially kick off live from Amsterdam at 9:00AM GMT+2 this coming Tuesday, September 15th. To get the most out of the event, make sure to check out the speaker list and talk schedule on our site.

Can’t join us in person? Don’t worry, we’ve got you covered! You can tune into the summit live on We will stream the keynote and all sessions over the course of the event. If you want us to send you a reminder to tune into the livestream, sign up here. We’ll also be publishing all of the talks as videos on the Chrome Developers YouTube Channel.

We’re looking forward to seeing you in person or remotely on Tuesday. Don’t forget to join the social conversations at #PolymerSummit!


Posted by Reto Meier, Team Lead, Scalable Developer Advocacy

For the past 100 days, Google Developers has delivered a series of daily videos to keep you informed about everything you need to develop, engage and earn.

We’ve covered everything from the Android Marshmallow launch: how you can get started developing with beacons:

...and continued our coverage of everything Polymer and Geo:

Thank you for following along and learning with us about all the ways you can use Google tools to make your apps awesome. Let us know what your favourite video was using #GoogleDev100. In the meantime, check out this short sizzle reel looking back at our most memorable moments -- we hope you’ve enjoyed watching them as much as we’ve enjoyed making them:


Posted by Laurence Moroney, Developer Advocate

Google Voice Actions let your users quickly complete tasks in your app using voice commands. It’s a great way to drive usage of your app, and now users’ voice action requests can lead directly from Search to your Android app. In this episode of Coffee With a Googler, Laurence meets with Sunil Vemuri, product manager of Google Voice Actions.

Sunil tells us about how the speech field has progressed, and how the quality of algorithms for detecting speech have drastically improved in a short space of time. In 2013, the average error rate for speech detection was 23 percent -- almost a quarter of all words weren’t recognized. By 2015, at Google I/O, we announced that the rate was down to 8 percent, and it continues to get better.

The episode will also share how developers can get started with building for voice actions using System Actions, where the voice action can be routed from Google Search directly to your app by declaring an intent to capture that action. If you need voice actions that aren’t in the system, you can also set Custom Actions. A developer can tell Google the phrases that they’d like to have triggered (e.g. ‘Ok Google, Turn on the Lights on MyApp’) and the Google app can then fire off the Intent that you specify. In addition, you can build Voice Interactions where your app can ask the user follow-up questions before performing an action. For example, when the user asks to play some music, the app could ask for the genre.

You can learn more about Voice Actions, how they work, and how to get started at the Google Developers site for Voice Actions.

If you have any questions for Laurence or Sunil, please leave them in the comments below.

If there are any guests, technologies, or anything Google that you’d like us to chat about over Coffee, please also drop us a line!


Posted by, Reto Meier

Starting today, the Android Developers, Chrome Developers, and Google Developers YouTube channels will host the videos that apply to each specific topic area. By subscribing to each channel, you will only be notified about content that matches your interests.

The Google Developers YouTube channel has been bringing you content across many platforms and product offerings to help inspire, inform, and delight you. Recently, we’ve been posting a variety of recurring shows that cover many broad topics across all of our developer offerings, such as Android Performance Patterns, Polycasts and Coffee With A Googler.

As we produce more and more videos, covering an ever increasing range of topics, we want to make it easier for you to find the information you need.

This means that for the Android Developers Channel, you will get content that is more focused to Android, such as Android Performance Patterns. Similarly, the Chrome Developers Channel will host more web focused content, such as Polycasts, HTTP203, Totally Tooling Tips, and New in Chrome. The Google Developers Channel will continue to broadcast broader Google Developer focused content like our DevBytes covering Google Play services releases and our Coffee With A Googler series.

We look forward to bringing you lots more video to inspire, inform, and delight -- to avoid missing any of it, you can subscribe to each of our YouTube channels using the following links, also be sure to turn notifications on in YouTube’s settings (more info here) so that you can get updates as we post new content:

Google Developers | Android Developers | Chrome Developers


Posted by Alex Danilo, Developer Advocate

When you develop applications for Google Cast, you’re building a true multi-screen experience to ‘wow’ your users and provide a unique perspective. Part of hitting that wow factor is making the app enjoyable and easy to use.

While designing the Google Cast user experience, we performed a huge amount of user testing to refine a model that works for your users in as many scenarios as possible.

The video below gives a quick explanation of the overall user experience for Google Cast enabled applications.

We’ve also produced some targeted videos to highlight important aspects of the core Google Cast design principles.

The placement of the Cast icon is one of the most important UX guidelines since it directly affects your users familiarity with the ability to Cast. Watch this explanation to help understand why we designed it that way:

Another important design consideration is how the connection between your application and the Google Cast device should work and that’s covered in this short video:

When your users are connected to a Google Cast device that’s playing sound, it’s vital that they can control the audio volume easily. Here’s another video that covers volume control in Cast enabled applications:

To get more detailed information about our UX design principles, we have great documentation and a convenient UX guidelines checklist.

By following the Google Cast UX guidelines in your app, you will give your users a great interactive experience that’ll wow them and have them coming back for more!

Join fellow developers in the Cast Developers Google+ community for more tips, tricks and pointers to all kinds of development resources.