I\'m trying to use Google API (PHP) to perform a daily sync between a system calendar and the user\'s Google Calendars. I want a system user to be able to set up access to t
Well, during your authorization with Google, you will receive a token that will expire in 3600 seconds or one hour and it is normal to be expired. So you need to use refresh token to get a new working token.
Here are the steps that you need:
$token = $client->getAccessToken();
$authObj = json_decode($token);
if(isset($authObj->refresh_token)) {
save_refresh_token($authObj->refresh_token);
}
It is important to save this refresh_token, then you can update it with
$client->refreshToken($your_saved_refresh_token);
And then set your new access token to the session:
$_SESSION['access_token'] = $client->getAccessToken();
For more information, check this SO question.