diff --git a/src/Service/GoogleApiClientService.php b/src/Service/GoogleApiClientService.php
index d07beb0054663ce23291d78dba43a2e0c9e9e8fc..8b16eec83f1685256a2f74d8e7f2549861481976 100644
--- a/src/Service/GoogleApiClientService.php
+++ b/src/Service/GoogleApiClientService.php
@@ -92,14 +92,12 @@ class GoogleApiClientService {
     $client->setClientId($google_api_client->getClientId());
     if ($google_api_client->getAccessType()) {
       $client->setAccessType('offline');
+      $client->setApprovalPrompt('force');
     }
     $client->setClientSecret($google_api_client->getClientSecret());
     $client->setDeveloperKey($google_api_client->getDeveloperKey());
     $client->setRedirectUri(google_api_client_callback_url());
-    if ($google_api_client->getAccessType()) {
-      $client->setApprovalPrompt('force');
-    }
-    $client->setApplicationName("Google OAuth2");
+    $client->setApplicationName($google_api_client->getName());
     $scopes = $google_api_client->getScopes();
 
     // Let other modules change scopes.
@@ -107,10 +105,11 @@ class GoogleApiClientService {
     \Drupal::moduleHandler()->alter('google_api_client_account_scopes', $scopes, $google_api_client_id);
     $client->addScope($scopes);
     $this->googleClient = $client;
-    $this->googleClient->setAccessToken($google_api_client->getAccessToken());
-
-    $this->setAccessToken();
-    return $client;
+    if ($google_api_client->getAuthenticated()) {
+      $this->googleClient->setAccessToken($google_api_client->getAccessToken());
+      $this->setAccessToken();
+    }
+    return $this->googleClient;
   }
 
   /**