Strapi email service for Mailjet
You will need to have the plugin strapi-plugin-email
installed in you Strapi project.
# using yarn
yarn add strapi-provider-email-mailjet
# using npm
npm i strapi-provider-email-mailjet
Variable | Type | Description | Required | Default |
---|---|---|---|---|
provider | string | The name of the provider you use | yes | |
providerOptions | object | Provider options | yes | |
providerOptions.publicApiKey | string | Mailjet public API key. See your MailJet API keys | yes | |
providerOptions.secretApiKey | string | Mailjet secret API key. See your MailJet API keys | yes | |
settings | object | Settings | no | {} |
settings.defaultFrom | string | Default sender mail address | yes | undefined |
settings.defaultFromName | string | Default sender name | yes | undefined |
settings.defaultTo | string | Default receiver mail address | yes | undefined |
settings.defaultToName | string | Default receiver name | yes | undefined |
Path - config/plugins.js
module.exports = ({ env }) => ({
// ...
email: {
config: {
provider: "strapi-provider-email-mailjet",
providerOptions: {
publicApiKey: env("MAILJET_PUBLIC_KEY"),
secretApiKey: env("MAILJET_SECRET_KEY"),
},
settings: {
defaultFrom: "scott@ijs.to",
defaultFromName: "Scott from iJS.to",
defaultTo: "john.doe@ijs.to",
defaultToName: "Johnny Bravodoe",
},
},
// ...
}
});
Strapi Mailjet Plugin enables you to interact with Mailjet API via custom methods listed below.
This API is a subset of the MailJet API.
You can easily send emails via
Single recipient
await strapi.plugins.email.services.email.send({
to: "scott@ijs.to",
toName: "Scott Agirs",
subject: "👋 Hey there!",
text: `Text version of your email`,
html: `<html />`,
});
Multiple recipients
Note taht toName
is not used here, instead it's added to each recipient object of the array.
await strapi.plugins.email.services.email.send({
to: [
{ email: "scott@ijs.to", toName: "Scott Agirs" },
{ email: "chili@spice.oo", toName: "🦄" },
],
subject: "👋 Hey y'all!",
text: `Text version of your email`,
html: `<html />`,
});
You can request additional actions by submitting a Feature Request or a Pull Request.
Note: To access the custom methods API, you need to call it vai
strapi.plugins.email.provider.CUSTOM_METHOD
and NOTstrapi.plugins.email.services.email.CUSTOM_METHOD
await strapi.plugins.email.provider
.addContactToList({
id: "email@example.com",
listId: "mailingListId",
})
.catch((error) => console.log(error))
.then((response) => console.log(response));
Field | Type | Description | Required | Default |
---|---|---|---|---|
listId | String | MailJet List ID to which add contact | yes | |
id | String | Contact's email or MailJet ID | yes |
Field | Type | Description | Required | Default |
---|---|---|---|---|
String | Contact's email | yes | ||
name | String | Full name of the contact | no |
Field | Type | Description | Required | Default |
---|---|---|---|---|
data | object | Contact Metadata. API Reference | yes | |
id | String | Contact's email or MailJet ID | yes |
Field | Type | Description | Required | Default |
---|---|---|---|---|
name | String | Name of the contact list | yes |
Field | Type | Description | Required | Default |
---|---|---|---|---|
listId | String | MailJet List ID from which to remove contact | yes | |
id | String | Contact's email or MailJet ID | yes |
Field | Type | Description | Required | Default |
---|---|---|---|---|
contactId | String | Contact's email or MailJet ID | yes |
Use this to re-subscribe existing contact.
Field | Type | Description | Required | Default |
---|---|---|---|---|
listId | String | MailJet List ID to which to subscribe the contact | yes | |
id | String | Contact's email or MailJet ID | yes |
Field | Type | Description | Required | Default |
---|---|---|---|---|
listId | String | MailJet List ID from which to unsubscribe contact | yes | |
id | String | Contact's email or MailJet ID | yes |
Authors: Scott Agirs
Initially published by sboutet06