For backend cron jobs or scripts without user interaction:
while (!$media->getResumeUri()) $status = $media->nextChunk(); google drive api php
$fileMetadata = new Google_Service_Drive_DriveFile([ 'name' => 'report.pdf', 'parents' => ['root'] ]); $content = file_get_contents('/local/path/report.pdf'); $file = $service->files->create($fileMetadata, [ 'data' => $content, 'uploadType' => 'multipart', 'fields' => 'id' ]); For backend cron jobs or scripts without user
// Save refresh token for future use if (!isset($accessToken['refresh_token'])) // Handle missing refresh token (may require revoking previous tokens) getResumeUri()) $status = $media->
$client->setDefer(false);
if ($client->isAccessTokenExpired()) $refreshToken = $client->getRefreshToken(); $client->fetchAccessTokenWithRefreshToken($refreshToken); // Persist new token
$service = new Google_Service_Drive($client); $results = $service->files->listFiles([ 'pageSize' => 50, 'fields' => 'files(id, name, mimeType, size, createdTime)', 'q' => "trashed = false" ]); foreach ($results->getFiles() as $file) echo "$file->getName() ($file->getId())\n";