Open
Description
An 'Unknown Error' with code 500 keeps returning when using the Node SDK and google drive to upload a file.
I have tested that my OAuth client is working as I am able to retrieve file metadata from the drive. However, when I go to run the upload script below I get a 500 error, despite the file actually being created in Google Drive...
Environment details
- OS: MacOS 14.5
- Node.js version: v22.4.1
googleapis
version: ^134.0.0
Steps to reproduce
Error Message
Google Drive API Error: {
code: 500,
message: 'Unknown Error.',
errors: [ {} ],
status: 'UNKNOWN'
}
export async function uploadFileToGoogleDrive(client: drive_v3.Drive, file: File, folderId?: string) {
const upload = async () => {
const response = await client.files.create({
requestBody: {
name: file.name,
mimeType: file.type,
...(folderId ? { parents: [folderId] } : {})
},
media: {
mimeType: file.type,
body: Readable.from(file.stream()),
},
fields: 'id,name,mimeType,webViewLink,thumbnailLink',
});
console.log(response);
return response;
};
try {
// const response = await retry(upload, {
// retries: 2,
// factor: 2,
// minTimeout: 1000,
// maxTimeout: 60000,
// randomize: true,
// onFailedAttempt: error => {
// console.error(`Attempt ${error.attemptNumber} failed. There are ${error.retriesLeft} retries left.`);
// }
// });
const response = await upload()
console.log('file uploaded', response)
return response;
} catch (err) {
console.error('Error uploading file to Google Drive: ', err.stack);
if (err.response && err.response.data && err.response.data.error) {
console.error('Google Drive API Error:', err.response.data.error);
}
logger.error('Error uploading file to Google Drive', err);
throw err;
}
}