
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
The official node.js binding for your favorite SparkPost APIs!
Before using this library, you must have a valid API Key.
To get an API Key, please log in to your SparkPost account and generate one in the Settings page.
npm install sparkpost
var sparkpost = require('sparkpost')({key: 'YOUR API KEY'});
var trans = {};
// Set some metadata for your email
trans.campaign = 'first-mailing';
trans.from = 'you@your-company.com';
trans.subject = 'First SDK Mailing';
// Add some content to your email
trans.html = '<html><body><h1>Congratulations, {{name}}!</h1><p>You just sent your very first mailing!</p></body></html>';
trans.text = 'Congratulations, {{name}}!! You just sent your very first mailing!';
trans.substitutionData = {name: 'YOUR FIRST NAME'};
// Pick someone to receive your email
trans.recipients = [{ address: { name: 'YOUR FULL NAME', email: 'YOUR EMAIL ADDRESS' } }];
// Send it off into the world!
sparkpost.transmission.send(trans, function(err, res) {
if (err) {
console.log('Whoops! Something went wrong');
console.log(err);
} else {
console.log('Woohoo! You just sent your first mailing!');
}
});
Field Name | Required? | Description | Data Type |
---|---|---|---|
description | no | Field for describing what this transmission is for the user | String |
campaign | no | Field for assigning a given transmission to a specific campaign, which is a logical container for similar transmissions | String |
metadata | no | Field for adding arbitrary key/value pairs which will be included in open/click tracking | Object (Simple) |
substitutionData | no | Field for adding transmission level substitution data, which can be used in a variety of fields and in content | Object (Complex) |
trackOpens | no | Field for enabling/disabling transmission level open tracking (default: true) | Boolean |
trackClicks | no | Field for enabling/disabling transmission level click tracking (default: true) | Boolean |
useDraftTemplate | no | Field for allowing the sending of a transmission using a draft of a stored template (default: false) | Boolean |
replyTo | no | Field for specifying the email address that should be used when a recipient hits the reply button | String |
subject | yes | Field for setting the subject line of a given transmission | String |
from | yes | Field for setting the from line of a given transmission | String or Object |
html | yes** | Field for setting the HTML content of a given transmission | String |
text | yes** | Field for setting the Plain Text content of a given transmission | String |
rfc822 | no** | Field for setting the RFC-822 encoded content of a given transmission | String |
template | no** | Field for specifying the Template ID of a stored template to be used when sending a given transmission | String |
customHeaders | no | Field for specifying additional headers to be applied to a given transmission (other than Subject, From, To, and Reply-To) | Object (Simple) |
recipients | yes** | Field for specifying who a given transmission should be sent to | Array of Objects |
recipientList | no** | Field for specifying a stored recipient list ID to be used for a given transmission | String |
** - If using inline content then html or text are required. If using RFC-822 Inline Content, then rfc822 is required. If using a stored recipient list, then recipientList is required. If using a stored template, then template is required.
{ key: '184ac5480cfdd2bb2859e4476d2e5b1d2bad079bf' }
We use Grunt for our task runner, so you will also have to install Grunt globally npm install -g grunt-cli
Run npm install
inside the repository to install all the dev dependencies.
Once all the dependencies are installed, you can execute the unit tests using grunt test
Guidelines for adding issues
Submitting pull requests
Signing our CLA
Our coding standards
[0.1.3] - 2015-01-08
FAQs
A Node.js wrapper for interfacing with your favorite SparkPost APIs
The npm package sparkpost receives a total of 14,060 weekly downloads. As such, sparkpost popularity was classified as popular.
We found that sparkpost demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 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
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.