Google APIs take up a sizeable chunk of land in the API universe. In this article, we've picked the most powerful, innovative and interesting plugins from Big G.
APIs are an invaluable tool for developers, as they let your sites and web apps stand on the shoulders of giants. They enable you to focus on unique application logic, instead of having to hack together plumbing from scratch. Here’s our guide to some of our favourite Google APis, and how to use them in your projects.
01. Cloud Machine Learning Engine API
Speaking non-technically, machine learning is a process taking input fields and then mapping them to a number of outputs. A classic application is turbine data, which is used to determine failure probabilities.
While machine-learning algorithms can be posted on any computer able to run Python, the amount of resources you need rises significantly the larger the involved data sets get. As can be inferred from the other Google APIs highlighted in this feature, Google has experience handling all kinds of machine-learning-related jobs.
As a result, floating the job to Big G’s servers is a convenient way to solve the problem. In addition to removing the CPU burden from your machines, offloading the machine-learning payloads also improves the learning speed – due to the large amount of iterations it can run, the company has been able to greatly accelerate the normally tedious machine-learning process.
However, developers looking to get started with machine learning must be made painfully aware that the Cloud Machine Learning Engine API is not a silver bullet. If you do not understand the basics of machine learning, your models will not work well.
02. Google Maps
There are a whole range of incredibly popular Google APIs that can be used to add Google Maps functionality to your sites, including mapping capabilities, street view, navigation and more. The APIs range from simple (basic page embeds you can use to display a map on a web page) to complex (JSON web services that enable you to, for example, receive a set of directions for navigation between locations). The selection is split by platform and function.
03. Cloud Natural Language API
When analysing customer service costs, the friendly customer service person sitting in front of a workstation tends to be the most significant – meaning it’s in your interest to maximise their time. If programs could analyse text, bots could shave off precious seconds from every interaction between unhappy customers and expensive support employees.
Google’s Cloud Natural Language API is dedicated to doing exactly that. Plug in a query in the user’s own words into the product and it returns a field of information related to all kinds of related metadata it has found. In the AutoML edition, you are furthermore allowed to create custom models that are more tailored than the API’s standard predefined categories, enabling you to focus on more niche expertise or areas of knowledge.
04. Google Cloud Vision API
Whether you’re looking at bringing in image screening or want to offer users functionality based on their images, being able to understand user-generated and user-uploaded images can be invaluable. Sadly, creating neural networks by hand is an incredibly tedious job that takes lots of time and an insane amount of training images.
Google’s Cloud Vision API lets your programs tap into Big G’s machine learning systems. Upload an image or two and feast your eyes on the vast amounts of image data the company has at its disposal. Not only can the Cloud Vision API determine if an image contains explicit or infringing content, it can easily identify the content of images and even highlight specific features – useful if you need to pick out facial features in a busy image. A special mode returns cropping advice – this is helpful if uploaded images are to be cut down to a specific format required by your user interface.
05. Google Cloud Video Intelligence API
Google is always looking for new ways to generate extra revenue: an interesting avenue involves letting the Vision API loose on videos. This is the raison d’etre for the Cloud Video Intelligence API – provide it with video data and prepare yourself for a torrent of metadata, cropping advice and various other bits of auto-generated information.
06. Cloud Speech-to-Text and Text-to-Speech APIs
While text might be king in many applications, there are plenty of situations where you may want to include voice output or input – whether that’s catering to those with accessibility issues or enabling people to use your sites and apps hands free. As the development of vocoders is cost-expensive, offloading this task sounds attractive.
Google has you covered with two sets of APIs: the Cloud Speech-to-Text API takes speech and turns it into string text, while the Cloud Text-to-Speech API takes the text and generates a spoken WAV file.
From a technical point of view, these Google APIs tend to work and see use in a variety of systems like Android. However, it’s worth keeping in mind that companies such as Nuance offer speech detection engines that significantly surpass the accuracy of Google’s in some cases.
07. Cloud Translation API
Multi-language applications are here to stay. A neat way to distinguish your product involves handling translation in-line: if your Gab viewer automatically translates English into Russian and German, not only will people living in the latter two countries jump for joy but you will expand your potential market.
Sadly, getting machine translation right remains among the most complex problems in IT. Google’s Cloud Translation API should be well-known to all those of you who use its Translate app – in its simplest form, you send a string and get a translated one in response.
While this works okay with general purpose texts, some applications require a little more attention. Google lets you provide a set of keywords to tune the algorithm – this is helpful for texts related to scientific domains, such as electrical engineering.
08. Hangouts Chat API
Google has had a bumpy start into social networking. The Hangouts chat service seems to be the most valuable IP Google has salvaged from its defunct social play Google+ and seems quite likely to become its next big thing – especially as it can be extended to contain customer service bots. Take a look at the Hangouts Chat API.
The bot behaves just like the IRC servers of yore – it hangs around waiting for a user to invoke it by mentioning its name. The moment this happens, your code receives a callback with the incoming information and a bit of metadata about the user.
This data can then be used for a variety of ways – a good example was the #srcedit bot, which used to hang out in the channel on freenode and provided ways to interact with information found in SVN.