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

ChampTypeDescription
requestsarrayTableau de requêtes email (lot)
requests[].fromobjectemail (requis), name (optionnel)
requests[].toarrayDestinataires avec email et name optionnel
requests[].subjectstringObjet
requests[].body.htmlstringContenu HTML
requests[].body.textstring?Texte brut
requests[].custom_idstring?Votre identifiant, retourné dans tous les événements
requests[].trackingobject?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ètreTypeDescription
fromobjectemail (requis), name (optionnel)
toarrayDestinataires avec email et name optionnel
subjectstringObjet
body.htmlstringContenu HTML
body.textstring?Texte brut
custom_idstring?Votre identifiant, retourné dans tous les événements
trackingobject?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ètreValeur
Hôtesmtp-in.mailverick.com
Port25
SécuritéSTARTTLS
UtilisateurVotre mvk_key_
Mot de passeVotre 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.