Having issue with define scopes while trying to write by google spreadsheet API v4 in php
Please someone help me:
I found these scopes needed to write in google spreadsheet at https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update
Authorization
Requires one of the following OAuth scopes:
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.file
https://www.googleapis.com/auth/spreadsheets
$client->setScopes(array( 'https://www.googleapis.com/auth/drive', 'https://www.googleapis.com/auth/drive.file', 'https://www.googleapis.com/auth/spreadsheet' ));
I can read and get data from the spreadsheet. But when I try to write something it says "Request had insufficient authentication scopes".
Here is the full error:
Fatal error: Uncaught exception 'Google_Service_Exception' with message '{ "error": { "code": 403, "message": "Request had insufficient authentication scopes.", "errors": [ { "message": "Request had insufficient authentication scopes.", "domain": "global", "reason": "forbidden" } ], "status": "PERMISSION_DENIED" } } ' in /home/muthop5/public_html/sheet/vendor/google/apiclient/src/Google/Http/REST.php:118 Stack trace: #0 /home/muthop5/public_html/sheet/vendor/google/apiclient/src/Google/Http/REST.php(94): Google_Http_REST::decodeHttpResponse(Object(GuzzleHttp\Psr7\Response), Object(GuzzleHttp\Psr7\Request), 'Google_Service_...') #1 [internal function]: Google_Http_REST::doExecute(Object(GuzzleHttp\Client), Object(GuzzleHttp\Psr7\Request), 'Google_Service_...') #2 /home/muthop5/public_html/sheet/vendor/google/apiclient/src/Google/Task/Runner.php(176): call_user_func_array(Array, Array) #3 /home/muthop5/public_html/sheet/vendor/google/apiclient/src/Google/Http/REST. in /home/muthop5/public_html/sheet/vendor/google/apiclient/src/Google/Http/REST.php on line 118
Answer
Solution:
You might want to check and delete the previously saved credentials at
~/.credentials/drive-php-quickstart.json
based on the PHP Quickstart:Then execute the app to get new set of credentials.
Hope this helps.
Answer
Solution:
To add to speadsheet make sure scope is not readonly as you are writing to it. make sure to set the approval prompt as that also causes issues.
Instead use