Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@sendgrid/helpers
Advanced tools
@sendgrid/helpers is a utility library for the SendGrid API that provides helper functions to simplify the process of building and sending emails, managing contacts, and handling other email-related tasks.
Building and Sending Emails
This feature allows you to build and send emails using the SendGrid API. The code sample demonstrates how to set up the API key, create an email message, and send it.
const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);
const msg = {
to: 'test@example.com',
from: 'test@example.com',
subject: 'Sending with SendGrid is Fun',
text: 'and easy to do anywhere, even with Node.js',
html: '<strong>and easy to do anywhere, even with Node.js</strong>',
};
sgMail.send(msg).then(() => {
console.log('Email sent');
}).catch((error) => {
console.error(error);
});
Managing Contacts
This feature allows you to manage contacts in your SendGrid account. The code sample demonstrates how to add a contact using the SendGrid API.
const sgClient = require('@sendgrid/client');
sgClient.setApiKey(process.env.SENDGRID_API_KEY);
const request = {
method: 'PUT',
url: '/v3/marketing/contacts',
body: {
contacts: [
{
email: 'test@example.com',
first_name: 'Test',
last_name: 'User'
}
]
}
};
sgClient.request(request).then(([response, body]) => {
console.log(response.statusCode);
console.log(body);
}).catch((error) => {
console.error(error);
});
Handling Email Templates
This feature allows you to create and manage email templates. The code sample demonstrates how to create a new email template using the SendGrid API.
const sgClient = require('@sendgrid/client');
sgClient.setApiKey(process.env.SENDGRID_API_KEY);
const request = {
method: 'POST',
url: '/v3/templates',
body: {
name: 'Example Template'
}
};
sgClient.request(request).then(([response, body]) => {
console.log(response.statusCode);
console.log(body);
}).catch((error) => {
console.error(error);
});
Nodemailer is a module for Node.js applications to allow easy email sending. It is a popular alternative to @sendgrid/helpers and provides a wide range of features for sending emails, including support for various transport methods like SMTP, AWS SES, and more.
Mailgun-js is a client library for the Mailgun email service. It provides similar functionalities to @sendgrid/helpers, such as sending emails, managing mailing lists, and handling email templates. It is a good alternative for those who prefer using Mailgun over SendGrid.
EmailJS is a library for sending emails from JavaScript applications. It supports various transport methods and provides a simple API for sending emails. It is a lightweight alternative to @sendgrid/helpers and is suitable for basic email sending needs.
This package is part of a monorepo, please see this README for details.
This is a collection of classes and helpers used internally by the SendGrid NodeJS libraries.
Note that not all objects represented in the SendGrid API have helper classes assigned to them because it is not expected that developers will use these classes themselves. They are primarily for internal use and developers are expected to use the publicly exposed API in the various endpoint services.
Used to compose a Mail
object that converts itself to proper JSON for use with the SendGrid v3 API. This class supports a slightly different API to make sending emails easier in many cases by not having to deal with personalization arrays, instead offering a more straightforward interface for composing emails.
Used by the inbound mail parser to compose Attachment
objects.
Used by the Mail class to compose Personalization
objects.
Helper
class to represent an email address with name/email. Used by both the Mail
and Personalization
classes to deal with email addresses of various formats.
Internal helpers that mostly speak for themselves.
We encourage contribution to our libraries (you might even score some nifty swag), please see our CONTRIBUTING guide for details.
@sendgrid/helpers are maintained and funded by Twilio SendGrid, Inc. The names and logos for @sendgrid/helpers are trademarks of Twilio SendGrid, Inc.
If you need help installing or using the library, please check the Twilio SendGrid Support Help Center.
If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo!
FAQs
Twilio SendGrid NodeJS internal helpers
The npm package @sendgrid/helpers receives a total of 1,312,463 weekly downloads. As such, @sendgrid/helpers popularity was classified as popular.
We found that @sendgrid/helpers demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.