The Google API Client Library for Java provides functionality common to all Google APIs, for example HTTP transport, error handling, authentication, JSON parsing, media download/upload, and batching. The library includes a powerful
OAuth 2.0 library
with a consistent interface; lightweight, efficient XML and JSON data models that support any data schema; and support for
protocol buffers
.
To call a Google API using Google's client libraries for Java, you need the generated Java library for the Google API you are accessing. These
generated libraries
include the core google-api-java-client library along with API-specific information such as the root URL. They also include classes that represent entities in the context of the API, and that are useful for making conversions between JSON objects and Java objects.