Skip to content

Google Drive | 500 Unknown Error Yet File Still Created #3559

Open
@jordanparker6

Description

@jordanparker6

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;
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority: p2Moderately-important priority. Fix may not be included in next release.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions