Application programming interfaces developed by Google
Google APIs
are application programming interfaces (
APIs
) developed by
Google
which allow communication with
Google Services
and their integration to other services. Examples of these include Search, Gmail, Translate or Google Maps. Third-party apps can use these APIs to take advantage of or extend the functionality of the existing services.
The APIs provide functionality like analytics,
machine learning
as a service (the Prediction API) or access to user data (when permission to read the data is given). Another important example is an embedded Google map on a website, which can be achieved using the Static Maps API,
[1]
Places API
[2]
or Google Earth API.
[3]
Authentication and authorization
[
edit
]
Usage of all of the APIs requires
authentication
and
authorization
using the
Oauth
2.0 protocol. Oauth 2.0 is a simple protocol. To start, it is necessary to obtain credentials from the Developers Console. Then the client app can request an access Token from the Google Authorization Server, and uses that Token for authorization when accessing a Google API service.
[4]
Client libraries
[
edit
]
There are client libraries in various languages which allow developers to use Google APIs from within their code, including
Java
,
JavaScript
for the web,
Node.js
,
Objective-C
,
Go
,
Dart
,
Ruby
,
.NET
,
Objective-C
,
PHP
and
Python
.
[5]
The
Google Loader
is a
JavaScript
library which allows web developers to easily load other
JavaScript
API
provided by
Google
and other developers of popular libraries. Google Loader provides a JavaScript method for loading a specific API (also called module), in which additional settings can be specified such as API version, language, location, selected packages, load
callback (computer programming)
and other parameters specific to a particular API. Dynamic loading or auto-loading is also supported to enhance the performance of the application using the loaded APIs.
[6]
Google Apps Script
[
edit
]
Google Apps Script is a cloud-based JavaScript platform which allows developers to write scripts only owner can manipulate API services such as Calendar, Docs, Drive, Gmail, and Sheets and easily create Add-Ons for these services with chromium based applications.
[7]
Common use cases
[
edit
]
User registration
is commonly done via Google, which allows users to securely log into third-party services with their Google account through the Google Sign-in system. This is currently available from within
Android
(operating system) or by using
JavaScript
.
[8]
It is popular to include a "Sign in with Google" button in Android apps, as typing login credentials manually is time-consuming due to the limited screen size. As the user is usually signed into their Google account on their mobile device, signing-in/signing-up for a new service using a Google account is usually a matter of a few button clicks.
Drive apps
are various web applications which work within Google Drive using the Drive API. Users can integrate these apps into their Drive from the Chrome Web Store, allowing them to work entirely in the cloud.
[9]
There are many apps available for collaborative document editing (Google Docs, Sheets), picture/video editing, work management, or sketching diagrams and workflows.
Custom Search
allows web developers to provide a search of their own website by embedding a custom search box and using the Custom Search API. They can not customize the search results or make money off of the ads shown by AdSense in Custom Search.
App Engine
are web apps that run on the Google App Engine, a
platform-as-a-service
(PaaS)
cloud computing
platform which allows web developers to run their websites in Google datacenters.
[10]
These web apps cannot take advantage of APIs to manipulate services such as TaskQueue (a distributed queue), BigQuery (a scalable database based on Dremel) or DataStore.
Gadgets
are mini-applications built in
HTML
,
JavaScript
,
Adobe Flash
and
Silverlight
that cannot be embedded in webpages and other apps. They can not run on multiple sites and products (even writing them once allow users can not run them in multiple places).
[11]
References
[
edit
]
External links
[
edit
]
|
---|
|
Company
|
---|
Divisions
| |
---|
People
| |
---|
Real estate
| |
---|
Design
| |
---|
Events
| |
---|
Projects and
initiatives
| |
---|
Criticism
| |
---|
|
|
|
---|
Operating systems
| |
---|
Libraries/
frameworks
| |
---|
Platforms
| |
---|
Tools
| |
---|
Search algorithms
| |
---|
Others
| |
---|
|
|
|
---|
Entertainment
| |
---|
Communication
| |
---|
Search
| |
---|
Navigation
| |
---|
Business
and finance
| |
---|
Organization
and productivity
| |
---|
Education
| |
---|
Others
| |
---|
|
|
Hardware
|
---|
Smartphones
| |
---|
Laptops and tablets
| |
---|
Wearables
| |
---|
Others
| |
---|
|
|
|
---|
Advertising
| |
---|
Antitrust
| |
---|
Intellectual property
| |
---|
Privacy
| |
---|
Other
| |
---|
|
|
|
|