You are on page 1of 79

Integrating with Google Apps

Google Apps for Work


ISV Integrations Team

Confidential + Proprietary

2.5M
paying organizations
Confidential + Proprietary

"Google Apps is critical to helping us innovate faster


to collapse geography and take the best of our global
ideas and apply them locally."

Confidential + Proprietary

Ultimately, our collaboration is about helping clients to embrace


their journey to the cloud, and transform their organizations to
thrive and maintain relevance in a rapidly changing world.
Tom Archer, PwCs Google Strategic Alliance Leader

Confidential + Proprietary

ISV Partnerships Team - Our Mission

Build magical ISV integrations that delight both


partner and Google users

Increase reach and adoption of integrations


through joint go-to-market and distribution
Confidential + Proprietary

Recent Integrations

April

May

September

October

November

January

February

Confidential + Proprietary

Technology Partner Program Benefits Overview


Developer
Online Dev resources
GAM listing

Partner

Premier Partner

Proprietary + Confidential

Premier Partner
(w/ Recommended App)

All Developer Benefits

All Partner Benefits

Partner Badge

Premier Partner Badge

Trusted tester

Roadmap briefings

Recommended
endorsement

Integration build assistance

Online sales support

Adwords whitelisting

Field sales support

Partner dev domain


Break fix support
Partner directory listing

All Prem. Partner Benefits

Press Release support


Invites to partner events
Invited to showcase
highlights

Not currently available but planned for in the future

Reseller/sales briefings

Confidential + Proprietary

Google Apps ISV Ecosystem by the numbers

200M+

App seat installs

750+

3rd party apps

50+

Tech partners

Proprietary + Confidential

List your app on the Google


Apps Marketplace
750+ apps
200M+ installs

Proprietary + Confidential

Leads generated from Google Apps


Marketplace are 220% more valuable than
those generated with Pay Per Click.

Mark Mader
President & CEO
Smartsheet (2015 Google Apps Tech Partner Award Winner - Best Marketplace App)

How Google helps ISVs succeed

Connect

Engage

Monetize

Robust APIs that let


ISVs move and keep
all end-user data in
sync and take actions

Client side
extensibility
frameworks that make
integrations engaging
for end-users

Google Apps
Marketplace (GAM)
puts apps in front of
2M enterprise
customers

Confidential + Proprietary

Integration Assistance: Integration Points

COMMUNICATE

STORE

COLLABORATE

MANAGE

Gmail API
Calendar API
Contacts API
Hangouts API

REST API
Drive SDK
File Picker API
Drive Apps

Sheets API
Google Apps Script
Add-ons

Auth Users / Domain


Marketplace (GAM)

Confidential + Proprietary

ISV Partnerships Team: Process


1.

2.

3.

Discovery

Ideation

Business / Tech
Product and
Determine
Assessment
Business
responsibilities
Development

Launch and
Maintain

Partner
Responsibility

-Product and GTM Background


information

-Prepare deliverables

-Partner creates PRD


-Discuss GTM

-Development
-Prepare for Launch

-Launch Activities
-Ongoing Reviews

Google
Responsibility

-Art of the possible


Canonical integrations

-Review of all materials


presented by Partner

-Assessment document
-Discuss GTM

-Launch materials
-Support Partners
Development

-Launch Activities
-Ongoing Reviews

Assets

-Google Deck
-MVP Integration Deck

-Use cases for


integration
-Visual Mock-Ups

-PRD / Eng spec


-Assessment document
-GTM Deck
-Google Tech Partner
Agreement

-GTM Plan

-Launch Assets

Criteria to go
to next stage

-Identify Team
-Commitment to move
forward

-Mockup / user stories


-Commit to creating a
PRD / Eng spec within
agreed timeframe

-Completion and signoff of PRD

-Completed contracts Product development


-GTM Plan
-Launch Assets

-N/A

Notes: PRD = Product Requirements Document


GTM = Go-to-Market

4.

5.

Confidential + Proprietary

Next Steps

Brainstorm incremental Google Apps use cases

Identify what use cases makes sense to start drafting a PRD

Start implementing these use cases with Googles consultation

Confidential + Proprietary

Recommended Integrations

Confidential + Proprietary

Integration guidance

Google Drive Integration Themes


Integration Themes

Description

1. Provide new entry points to


your application

Allow users to access your application and content from Google Drive
Create New
Create and store a shortcut for your content
Search
Open a file with "your app"

2. Use as data repository

Google Drive as a data repository for your application content


Import from Google Drive
Upload / Attach a file from Google Drive Web & Mobile
Federated Search
Preview

3. Store your applications output

Store & make your applications output accessible in Google Drive


Save (export) to Google Drive directly

in Google Drive

Confidential + Proprietary

1. Provide new entry points

Confidential + Proprietary

1. Provide new entry points

Create "New"
Build a Drive application to integrate
with Drive UI
When the user selects your app from the
New drop down menu, Drive redirects
the user to your pre-defined url

Confidential + Proprietary

1. Provide new entry points

Create "New"
Example:
User is redirected to Create New
Document flow in Lucidchart

Confidential + Proprietary

1. Provide new entry points

Create and store a shortcut for your content


Build a Drive application to
create a shortcut to a file.
When the user double
clicks, Drive redirects the
user to that file in your app.
Example: Lucidchart

Confidential + Proprietary

1. Provide new entry points

Search in Google Drive


Add custom thumbnails and indexable
text to increase the discoverability of
files associated with shortcuts

Confidential + Proprietary

1. Provide new entry points

Open with "your app"


Build a Drive application to
integrate with Drive UI
Users can open files with
your app using the Open
with contextual menu.

Confidential + Proprietary

2. Use as data repository

Confidential + Proprietary

2. Use as data repository

Import from Google Drive


Import files from Google
Drive by downloading them.
Example: Consume Google
Sheets files as a raw data
source by downloading
them as .csv files

Confidential + Proprietary

2. Use as data repository

Import from Google Drive


Use Drive File Picker API
to display users Drive file
repository

Confidential + Proprietary

2. Use as data repository

Upload / Attach a file from Google Drive on Web


Enable users to attach
documents from their
Google Drive accounts.
Example: Asana

Confidential + Proprietary

2. Use as data repository

Upload / Attach a file from Google Drive on Web


Use Drive File Picker API
to display users Drive file
repository

Confidential + Proprietary

2. Use as data repository

Upload / Attach a file from Google Drive on Mobile


Enable users to attach
documents from their
Google Drive accounts in
your mobile app.

Confidential + Proprietary

2. Use as data repository

Federated Search
Provide federated search if
connecting to multiple
repositories.
Use custom file properties
to allow your app to store
additional metadata on a
file, such as tags, IDs from
other data stores, viewing
preferences etc.

Confidential + Proprietary

2. Use as data repository

Preview
Use thumbnail images of files
stored in Google Drive to
create a preview experience.
Example: Google+

Confidential + Proprietary

3. Store your applications output in Google


Drive

Confidential + Proprietary

3. Accessibility

Save (export) to Google Drive


Enable users to save
(export) your apps content
to Google Drive.
Example: gantter

Confidential + Proprietary

3. Accessibility

Save (export) to Google Drive


Enable users to save
(export) your apps content
to Google Drive.
Example: gantter

Confidential + Proprietary

3. Accessibility

Save (export) to Google Drive


Enable users to save
(export) your apps content
to Google Drive.
Example: Lucidchart

Confidential + Proprietary

3. Accessibility

Save (export) to Google Drive


Enable users to save
(export) your apps content
to Google Drive.
Example: Lucidchart

Confidential + Proprietary

3. Accessibility

Save (export) to Google Drive


Enable users to save
(export) your apps content
to Google Drive.
Example: Lucidchart

Confidential + Proprietary

Recommended Integrations

Confidential + Proprietary

Integration Guidance

Create Google Docs file formats


Create Docs in context:
Enable users to create
Google Docs file formats
directly within mobile and
web application UI using
Google Drive REST APIs

Confidential + Proprietary

Integration Guidance

Export Data to Google Docs / Sheets Programmatically &


Provide Real Time Collaboration Experience

Confidential + Proprietary

Integration Guidance

Utilize Google Sheets for Advanced Reporting & Visualization

Confidential + Proprietary

Integration Guidance

Google Docs / Sheets / Forms Add-ons: Connected Experience


Build add-ons using
Google Apps Script
Example: Lucidchart

Confidential + Proprietary

Google Sheets
Recommended Integrations

Confidential + Proprietary

Export to Google Sheets

Export to

Google Sheets

Export raw data or create rich sheet on


behalf of users (e.g., reporting)

Optional: Keep resulting data in


Sheets in sync with data in your tool
Confidential + Proprietary

Use Google Sheets as live input data source

Users pick spreadsheet as


data source in partner product

As users continue to update data in Sheets, partner


product monitors changes, pulls changes in real time
Confidential + Proprietary

Empower users to user Sheets to collaborate / bulk edit

Collaborate with

Google Sheets

Export current data or empty template to


Sheets for users to collaborate or bulk edit

Users modify in Sheets, and partner


ingests changes back into their product
Confidential + Proprietary

Recommended Integrations

Confidential + Proprietary

Integration Guidance

Google Calendar Recommended Integrations


1
2

Pull events from Google Calendar


Push events and invitations to Google Calendar

Schedule video calls using Google Hangouts


4

Additional integration examples

Confidential + Proprietary

Pull Events from Google Calendar

Confidential + Proprietary

Integration Guidance

Pull events from Google Calendar


Mike, a user would like
to push his Google
Calendar to a Partner
application.

Confidential + Proprietary

Integration Guidance

Pull events from Google Calendar


Step 1:
Mike clicks on the
Overlay button in the
partner application,
Smartsheet.

Confidential + Proprietary

Integration Guidance

Pull events from Google Calendar


Step 2:
Mike proceeds through
Smartsheets Calendar pull
UI flow

Confidential + Proprietary

Integration Guidance

Pull events from Google Calendar


Step 3:
Mike selects the
Google Calendar to pull
events from

Confidential + Proprietary

Integration Guidance

Pull events from Google Calendar


Success
Mikes events are
published in Smartsheets
calendar view

Confidential + Proprietary

Push Events and Invitations to


Google Calendar

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Step 1:
Mike would like to Push
his Smartsheet tasks to
Google Calendar.

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Step 2:
Mike goes through the
Smartsheets publish to
a Google Calendar UI
flow.

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Step 2:
Mike goes through the
Smartsheets publish to
a Google Calendar UI
flow.

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Step 2:
Mike goes through the
Smartsheet publish to
a Google Calendar UI
flow.

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Success
Mike can see his all
Smartsheet tasks in his
Google Calendar.

Confidential + Proprietary

Integration Guidance

Push Events and Invitations to Google Calendar


Success
Mike can also see his all
Smartsheet tasks in his
Google Calendar mobile app.

Confidential + Proprietary

Schedule video calls using


Google Hangouts

Confidential + Proprietary

Integration Guidance

Schedule video calls using Google Hangouts


When creating a calendar
event, a developer can
automatically include a
Google Hangout.
The video call field will
automatically be
populated. The developer
should also put a link into
the invitation body so
non-Google customers
can access the hangout
(not shown).

Confidential + Proprietary

Integration Guidance

Schedule video calls using Google Hangouts


Users will be able to join the Hangout on all devices

Confidential + Proprietary

Additional Integration Examples

Confidential + Proprietary

Integration Guidance

SalesforceIQ Calendar Integration - Insert Availability


Mike, a Salesforce IQ
user, is trying to
schedule a meeting
with his customer,
Bob.

Here he inserts the


availability from his
calendar to send it to
Bob.
Confidential + Proprietary

Integration Guidance

SalesforceIQ Calendar Integration - Insert Availability


Once Bob clicks on a
time in Mikes email,
Salesforce IQ creates
a meeting invitation
using Calendar APIs.

This can be done


with or without a
Google Hangout
attached.
Confidential + Proprietary

Google Slides
Recommended Integrations

Confidential + Proprietary

Export / Save as Google Slides

Export to

Google Slides

Export data from your business tool

Refresh data

Fetch stale data directly from Slides

Confidential + Proprietary

Auto generated custom slides

Setup a generic presentation


template (one time)

Allow user to generate custom


presentations populated with data
from system with one click
Confidential + Proprietary

GMail
Recommended Integrations

Confidential + Proprietary

Retrieve Email Threads/Messages


Use Gmail API to retrieve emails from
users Gmail account
Users can access their emails directly
from your product UI

Confidential + Proprietary

Launched

Salesforce Integrations with GMail, Calendar, Drive

Create opportunities
in Salesforce from
GMail using
Salesforce IQ
Effortlessly find time
and schedule
meetings using
Salesforce IQ
Use / Search for
Drive files from
within Salesforce
Sales Cloud

1
3

Confidential + Proprietary

Launched

Proprietary + Confidential

Salesforce IQ Integrations on Mobile

Add CRM
capabilities to
mobile Gmail
users
Track email
opens, delay
sending, propose
auto-responses
Visualize
customer
locations using
Maps APIs

Gmail API

Gmail API

Maps API
Confidential + Proprietary

Thank you!

Confidential + Proprietary

Appendix

Confidential + Proprietary

Common Google Drive Integrations

API Documentation for Google Drive Integration Themes


Integration Themes

Link to API Documentation

1. Provide new entry points

Allow users to access your application and content from Google Drive
Integrating with the Drive UI
Create New
Create and store shortcut for your content
Search
Open a file with "your app"

2. Use as data repository

Google Drive as a data repository for your application content


Import from Google Drive
Upload / Attach a file from Google Drive Web (Drive API - Files: List
method for manual integration)
Upload / Attach a file from Google Drive Android
Upload / Attach a file from Google Drive iOS
Federated Search (also utilize Drive API - Custom file properties)
Drive API - Search for files

3. Accessibility

Store & make your applications output accessible in Google Drive


Save (export) to Google Drive
Confidential + Proprietary

Best Practices

Additional Resources
1

Drive API - Best Practices

Drive API - Marketing and Publicity Guidelines for Google Drive Apps

Drive API - Branding: Use the Drive Badge and Brand

Confidential + Proprietary

Best Practices

Additional Resources
1

Google Apps Script

Confidential + Proprietary

Google Apps Marketplace

What is the Google Apps Marketplace?


The Google Apps Marketplace allows domain admins
and end users to find applications that extend their
Google Experience.
We highly recommend all partners list in the GAM for
the following reasons:
1.
2.
3.

One click install for an entire domain


Lead generation for your product
Marketing opportunities.

In order for you to be approved for a GAM listing, you


must support OAuth 2.0 based SSO.
You have already seen this process in action in the
Web based OAuth code example.

Confidential + Proprietary

You might also like