Google APIs Client Library for Java

Setup Instructions
Component Modules
Google App Engine
Media Download
Media Upload
OAuth 2.0
Timeouts and Errors

Timeout and Errors

Setting timeouts

In the following example, which uses the Google Analytics API, the setConnectTimeout and setReadTimeout methods are used to set the connect and read timeouts to three minutes (in milliseconds) for all requests:

private HttpRequestInitializer setHttpTimeout(final HttpRequestInitializer requestInitializer) {
  return new HttpRequestInitializer() {
    public void initialize(HttpRequest httpRequest) throws IOException {
    httpRequest.setConnectTimeout(3 * 60000);  // 3 minutes connect timeout
    httpRequest.setReadTimeout(3 * 60000);  // 3 minutes read timeout

GoogleCredential credential = ....

final Analytics analytics = Analytics.builder(new NetHttpTransport(), jsonFactory, setHttpTimeout(credential)).build();

Handling HTTP error responses from Google APIs

When an error status code is detected in an HTTP response to a Google API that uses the JSON format, the generated libraries throw a GoogleJsonResponseException.

The following example shows one way that you can handle these exceptions:

Drive.Files.List listFiles = drive.files.list();
try {
  FileList response = listFiles.execute();
} catch (GoogleJsonResponseException e) {