Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
@googleapis/drive
Advanced tools
@googleapis/drive is an npm package that provides a client library for accessing Google Drive API. It allows developers to interact with Google Drive to perform various operations such as file management, permissions handling, and more.
List Files
This feature allows you to list files in the user's Google Drive. The code sample demonstrates how to authenticate and list the first 10 files, displaying their IDs and names.
const { google } = require('@googleapis/drive');
const auth = new google.auth.GoogleAuth({
scopes: ['https://www.googleapis.com/auth/drive.readonly'],
});
async function listFiles() {
const authClient = await auth.getClient();
const drive = google.drive({ version: 'v3', auth: authClient });
const res = await drive.files.list({
pageSize: 10,
fields: 'files(id, name)',
});
console.log('Files:', res.data.files);
}
listFiles().catch(console.error);
Upload File
This feature allows you to upload a file to Google Drive. The code sample demonstrates how to authenticate, create file metadata, and upload a file from the local filesystem.
const { google } = require('@googleapis/drive');
const fs = require('fs');
const auth = new google.auth.GoogleAuth({
scopes: ['https://www.googleapis.com/auth/drive.file'],
});
async function uploadFile() {
const authClient = await auth.getClient();
const drive = google.drive({ version: 'v3', auth: authClient });
const fileMetadata = {
name: 'photo.jpg',
};
const media = {
mimeType: 'image/jpeg',
body: fs.createReadStream('files/photo.jpg'),
};
const res = await drive.files.create({
resource: fileMetadata,
media: media,
fields: 'id',
});
console.log('File Id:', res.data.id);
}
uploadFile().catch(console.error);
Create Folder
This feature allows you to create a new folder in Google Drive. The code sample demonstrates how to authenticate and create a folder with specified metadata.
const { google } = require('@googleapis/drive');
const auth = new google.auth.GoogleAuth({
scopes: ['https://www.googleapis.com/auth/drive.file'],
});
async function createFolder() {
const authClient = await auth.getClient();
const drive = google.drive({ version: 'v3', auth: authClient });
const fileMetadata = {
name: 'New Folder',
mimeType: 'application/vnd.google-apps.folder',
};
const res = await drive.files.create({
resource: fileMetadata,
fields: 'id',
});
console.log('Folder Id:', res.data.id);
}
createFolder().catch(console.error);
Delete File
This feature allows you to delete a file from Google Drive. The code sample demonstrates how to authenticate and delete a file by its ID.
const { google } = require('@googleapis/drive');
const auth = new google.auth.GoogleAuth({
scopes: ['https://www.googleapis.com/auth/drive.file'],
});
async function deleteFile(fileId) {
const authClient = await auth.getClient();
const drive = google.drive({ version: 'v3', auth: authClient });
await drive.files.delete({
fileId: fileId,
});
console.log('File deleted');
}
deleteFile('your-file-id').catch(console.error);
The 'googleapis' package is a comprehensive client library for accessing various Google APIs, including Google Drive. It provides similar functionalities to @googleapis/drive but also includes support for other Google services like Gmail, Calendar, and more.
The 'google-drive' package is another library for accessing Google Drive API. It provides functionalities for file management and sharing. It is similar to @googleapis/drive but may have different API design and usage patterns.
Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.
$ npm install @googleapis/drive
All documentation and usage information can be found on GitHub. Information on classes can be found in Googleapis Documentation.
This library is licensed under Apache 2.0. Full license text is available in LICENSE.
We love contributions! Before submitting a Pull Request, it's always good to start with a new issue first. To learn more, see CONTRIBUTING.
Crafted with ❤️ by the Google Node.js team
FAQs
drive
The npm package @googleapis/drive receives a total of 95,334 weekly downloads. As such, @googleapis/drive popularity was classified as popular.
We found that @googleapis/drive demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.