I am using the Drive REST API to download a file. I am making a GET request using the file id and I get a file not found exception
.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "File not found: xxxxx",
"locationType": "other",
"location": "file"
}
],
"code": 404,
"message": "File not found: xxxxx"
}
}
I have also generated the apikey and I am using it in my GET request.The file does exist so I am unsure what I am missing here.
This is resolved. I wasn't providing the correct access_token when making the GET request for file metadata. I regenerated the authorization code, access_token and my code is working now.
Make sure scopes are corrects
var url = oauth2Client.generateAuthUrl({
access_type: 'offline',
scope: ['https://www.googleapis.com/auth/drive.file',
'https://www.googleapis.com/auth/drive',
'https://www.googleapis.com/auth/drive.file',
'https://www.googleapis.com/auth/drive.metadata'
]
});
Drive API declares the following scopes. Select which ones you want to grant to APIs Explorer.
- https://www.googleapis.com/auth/drive
View and manage the files in your Google Drive
- https://www.googleapis.com/auth/drive.appdata
View and manage its own configuration data in your Google Drive
- https://www.googleapis.com/auth/drive.file
View and manage Google Drive files and folders that you have opened or created with this app
- https://www.googleapis.com/auth/drive.metadata
View and manage metadata of files in your Google Drive
- https://www.googleapis.com/auth/drive.metadata.readonly
View metadata for files in your Google Drive
- https://www.googleapis.com/auth/drive.photos.readonly
View the photos, videos and albums in your Google Photos
- https://www.googleapis.com/auth/drive.readonly
View the files in your Google Drive
- https://www.googleapis.com/auth/drive.scripts
Modify your Google Apps Script scripts' behaviour
Sorce: https://developers.google.com/apis-explorer/#p/drive/v3/drive.files.get
In my case, I was using the file client_secret.json that I had created with the gmail address I use all the time, but I was creating the credentials with another e-mail.