Building solutions using the G Suite developer platform

September 14, 2020


Link copied to clipboard

Posted by Charles Maxson, Developer Advocate, G Suite

Millions of users know G Suite as a collection of communication and productivity apps that enables teams to easily create, communicate, collaborate, and discover content to supercharge teamwork. Beneath the surface of this well-serving collection of apps is also an extensible platform that enables developers to build targeted custom experiences and integrations utilizing these apps, allowing G Suite’s vast user base to get even more value out of the platform.

At first glance, it may not be natural to think of the tools you use for day-to-day productivity and collaboration as a developer platform. But consider what makes up a developer platform; Languages, APIs, runtimes, frameworks, IDEs, ecosystem, etc; G Suite offers developers all of these things and more.

Let’s take a closer look at what makes up the G Suite developer platform and how you can use it.

G Suite as a Developer Platform

There are a lot of components that make up G Suite as a platform. As a developer, there is probably none more important than the data that your solution collects, processes and presents. As a platform, G Suite is both highly interoperable, secure, and also interestingly unique.

Being interoperable, G Suite lets you interact with your data--whether your data is in G Suite or elsewhere, no matter how you store it or how you want to analyze it. G Suite allows you to keep your data where it best suits your application, while offering you flexibility to access it easily. Some examples include rich integrations with sources like BigQuery or JDBC databases. Better yet, often little to no code is required to get you connected.

Where G Suite as a platform is unique regarding data is it can be used to store, or perhaps even more interesting, be used to produce data. For native storage, you may use Drive as a content repository, or store information in a Sheets spreadsheet, or collect it via Google Forms as a front end. Additionally, there are many scenarios where the content your users are engaging in (emails, chats, events, tasks, contacts, documents, identity, etc.) can be harnessed to create unique interactions with G Suite. Solutions that build off, or integrate with G Suite provide such unique business value, but regardless where your data resides, accessing it as a developer is a non-issue via the platform.

The core of the G Suite developer platform itself is composed of frameworks for developer features including G Suite Add-ons and Chatbots, as well as a comprehensive library of REST APIs. These allow you to interface with the full G Suite platform to create integrations, build extensions, add customizations, and access content or data.

G Suite Add-ons and Chatbots are frameworks specifically designed for G Suite that allow you to quickly and safely build experiences that enrich the way users interact within G Suite apps, while while the REST APIs give you essentially unlimited access to G Suite apps and data including Gmail, Classroom, Calendar, Drive, Docs, Sheets, Slides, Task, and more. What you build, and what you build with, including languages and dev environments is up to you!

The beauty of G Suite as a platform is how you can unlock complementary technologies like Google Cloud that expand the platform to be even more powerful. Think about a G Suite UI connecting to a Google Cloud Platform backend; the familiar interface of G Suite coupled with the phenomenal power and scale of GCP!

Building with GCP from G Suite, you have access to components like the AI platform. This enables scenarios like using Google Sheets as a front end to AI tools like the Vision, Natural Language and the Translation APIs. Imagine how you can change the way users interact with G Suite, your app and your data combined with the power of ML?

Another useful concept is how you can add natural conversational experiences to your app in G Suite with tools like DialogFlow. This way instead of writing complicated interfaces users have to learn, you could build a G Suite Chat bot that invokes Dialogflow to allow users to execute commands directly from within their team conversations in Chat. So for example, users could just ask a Chat bot to “Add a task to the project list” or “Assign this issue to Matt”. A recent example of this is DataQnA, a natural language interface for analyzing BigQuery data.

BigQuery is another GCP tool that works natively with G Suite to allow you to analyze and leverage larger, complicated data sets while producing unique custom reports that can be surfaced in a user friendly way. One of the ways to leverage BigQuery with G Suite is through Connected Sheets, which provides the power and scale of a BigQuery data warehouse in the familiar context of Sheets. With Connected Sheets, you can analyze billions of rows of live BigQuery data in Google Sheets without requiring SQL knowledge. You can apply familiar tools—like pivot tables, charts, and formulas—to easily derive insights from big data.

One relatively new addition to the Google Cloud family also worth mentioning here is AppSheet. AppSheet is a no-code tool that can be used to quickly build mobile and web apps. Being no-code, it may seem out of place in a discussion for a development platform, but AppSheet is a dynamic and agile tool that makes it great for building apps fast or envisioning prototypes, while also connecting to G Suite apps like Google Sheets, allowing you to access G Suite platform data with ease.

When you do need the power of writing custom code, one of the foundational components of the G Suite developer platform is Apps Script. For over a decade, Apps Script has been the server-less, JavaScript-based runtime that natively powers G Suite extensibility. Built directly into G Suite with its own IDE, Apps Script makes it super fast and easy to get started building solutions with nothing to install or configure, just open and start coding -- or you can even let the macro recorder write code for you! Apps Script masks a lot of complexities that developers face like handling user authentication, allowing you to focus on creating solutions quickly. Its native integration and relative simplicity also welcomes developers with diverse skill levels to build customized workflows, menus and UI, automations and more right inside G Suite.

While Apps Script is nimble and useful for many use cases, we know that many developers have preferences around tools, languages and development environments. G Suite is an open platform that encourages developers to choose options that makes them more productive. In continuing to build on that principle, we recently introduced Alternate Runtimes for G Suite Add-ons. This new capability allows you to create solutions using the G Suite Add-ons framework without being bound to Apps Script as a toolset, giving you the choice and freedom to leverage your existing preferences and investments in hosting infrastructure, development tools, source control, languages, and code libraries, etc.

Finally, what completes the vision of G Suite as a developer platform is that you have the confidence and convenience of an established platform that is broadly deployed and backed by tools like Google Identity Management and the G Suite Admin Console for administration and security. This enables you to build your solutions--whether its a customized solution for your internal users or an integration between your software platform and G Suite--and distribute them at a domain level or even globally via the G Suite Marketplace, which is an acquisition channel for developers and a discovery engine for end-users and enterprise admins alike.

Now that you can see how G Suite is a developer platform, imagine what you can build?

Visit the G Suite Developer homepage and get started on your journey today.