Envoyer un email
Plusieurs façons d'envoyer. Choisissez celle qui correspond à votre stack.
Authentification
Échangez vos identifiants API contre un token JWT. Les tokens sont valides 1 heure.
curl -X POST https://api.mailverick.com/v1/token \
-H "Content-Type: application/json" \
-d '{
"api_key_id": "mvk_key_xxxxxxxxxx",
"api_key_secret": "mvk_sec_xxxxxxxxxx"
}' {
"access_token": "eyJhbGciOi...",
"expires_in": 3600,
"token_type": "Bearer"
} Envoyer un email
curl -X POST https://api.mailverick.com/v1/send-email \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: application/json" \
-d '{
"requests": [{
"from": { "email": "vous@votredomaine.com" },
"to": [{ "email": "destinataire@example.com" }],
"subject": "Confirmation de commande #1234",
"body": {
"html": "<h1>Merci !</h1>",
"text": "Merci ! Votre commande a été confirmée."
},
"custom_id": "order-1234",
"tracking": { "opens": "last_only", "disabled": false }
}]
}' Corps de la requête
| Champ | Type | Description |
|---|---|---|
requests | array | Tableau de requêtes email (lot) |
requests[].from | object | email (requis), name (optionnel) |
requests[].to | array | Destinataires avec email et name optionnel |
requests[].subject | string | Objet |
requests[].body.html | string | Contenu HTML |
requests[].body.text | string? | Texte brut |
requests[].custom_id | string? | Votre identifiant, retourné dans tous les événements |
requests[].tracking | object? | opens : none, last_only ou full (mode de suivi des ouvertures ; par défaut, le paramètre de votre organisation). disabled : booléen, désactive le suivi des ouvertures et des clics pour cet email. |
Installation
npm install @bytewise-solutions/mailverick Envoyer un email
Le SDK gère l'échange et le renouvellement du token automatiquement. Passez vos identifiants et envoyez.
import { Mailverick } from "@bytewise-solutions/mailverick";
const client = new Mailverick("mvk_key_xxx", "mvk_sec_xxx");
await client.sendEmail({
from: { email: "vous@votredomaine.com" },
to: [{ email: "destinataire@example.com" }],
subject: "Confirmation de commande #1234",
body: {
html: "<h1>Merci !</h1>",
text: "Merci ! Votre commande a été confirmée.",
},
custom_id: "order-1234",
tracking: { opens: "last_only", disabled: false },
}); Paramètres
| Paramètre | Type | Description |
|---|---|---|
from | object | email (requis), name (optionnel) |
to | array | Destinataires avec email et name optionnel |
subject | string | Objet |
body.html | string | Contenu HTML |
body.text | string? | Texte brut |
custom_id | string? | Votre identifiant, retourné dans tous les événements |
tracking | object? | opens : none, last_only ou full. disabled : booléen, désactive le suivi des ouvertures et des clics pour cet email. |
Configuration
Pas de token nécessaire. Authentification directe avec vos identifiants API. Remplacement direct de toute configuration SMTP.
| Paramètre | Valeur |
|---|---|
| Hôte | smtp-in.mailverick.com |
| Port | 25 |
| Sécurité | STARTTLS |
| Utilisateur | Votre mvk_key_ |
| Mot de passe | Votre mvk_sec_ |
Exemples par framework
SMTP_HOST=smtp-in.mailverick.com
SMTP_PORT=25
SMTP_USER=mvk_key_xxxxxxxxxx
SMTP_PASS=mvk_sec_xxxxxxxxxx const nodemailer = require("nodemailer");
const transporter = nodemailer.createTransport({
host: "smtp-in.mailverick.com",
port: 25,
auth: {
user: "mvk_key_xxxxxxxxxx",
pass: "mvk_sec_xxxxxxxxxx",
},
});
await transporter.sendMail({
from: "vous@votredomaine.com",
to: "destinataire@example.com",
subject: "Confirmation de commande #1234",
html: "<h1>Merci !</h1>",
}); # settings.py
EMAIL_HOST = "smtp-in.mailverick.com"
EMAIL_PORT = 25
EMAIL_HOST_USER = "mvk_key_xxxxxxxxxx"
EMAIL_HOST_PASSWORD = "mvk_sec_xxxxxxxxxx"
EMAIL_USE_TLS = True # .env
MAIL_MAILER=smtp
MAIL_HOST=smtp-in.mailverick.com
MAIL_PORT=25
MAIL_USERNAME=mvk_key_xxxxxxxxxx
MAIL_PASSWORD=mvk_sec_xxxxxxxxxx
MAIL_ENCRYPTION=tls # application.properties
spring.mail.host=smtp-in.mailverick.com
spring.mail.port=25
spring.mail.username=mvk_key_xxxxxxxxxx
spring.mail.password=mvk_sec_xxxxxxxxxx
spring.mail.properties.mail.smtp.starttls.enable=true Et ensuite
Maintenant que vous pouvez envoyer des emails, découvrez comment suivre ce qui se passe après la livraison avec les Événements email : statut de livraison, rebonds, ouvertures, clics et signalements spam en temps réel.