Mailjet
Mailjet (součást skupiny Sinch) je evropská e-mailová platforma pro transakční i marketingovou poštu. Data drží ve výchozím stavu v EU a má použitelný bezplatný tarif, proto je oblíbený u menších evropských firem.
Mailjet zvolte, když chcete poskytovatele se sídlem dat v EU a bezplatným tarifem, nebo už přes Mailjet posíláte newslettery a transakční poštu chcete mít ve stejném účtu. Pro čistě transakční poštu s důrazem na doručitelnost se podívejte na Postmark, pro hostování v EU s vývojářským API na Mailgun EU. Srovnání: přehled služeb.
Co budete potřebovat
Sekce “Co budete potřebovat”- Účet v Mailjetu (nové účty mohou projít krátkou kontrolou před aktivací).
- Ověřeného odesílatele: doménu přidejte v Account settings → Senders & Domains → Add domain a ověřte ji (SPF + DKIM), případně aspoň ověřte jednu adresu Od.
- Pár API klíčů (API key + secret key). Klíče v Mailjetu nemají omezitelná oprávnění, takže variantou s nejmenšími právy je samostatný klíč sub-accountu: Account settings → REST API → API Key Management → Create a sub-account API key. Sub-account má vlastní odesílatele, statistiky i kvótu a jde zrušit bez zásahu do hlavního klíče.
Připojení ve Frontmailu
Sekce “Připojení ve Frontmailu”- Otevřete E-mailové služby → Přidat službu → Mailjet.
- Vyplňte pole:
| Pole | Kde ho najdete | Příklad |
|---|---|---|
| API klíč | Account settings → REST API → API Key Management | a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 |
| Tajný klíč | Na stejné stránce (zobrazí se po kliknutí; jde přegenerovat) | f6e5d4c3b2a1… |
| Uživatelské jméno webhooku | Volitelné – jméno, které vložíte do URL webhooku (viz níže) | frontmail |
| Heslo webhooku | Volitelné – odpovídající heslo | dlouhy-nahodny-retezec |
| Max. e-mailů za sekundu | Volitelné; výchozí 10/s | 5 |
- Klikněte na Ověřit a uložit – Frontmail zavolá Mailjet API s párem klíčů.
- Když kontrola projde, služba se uloží. Oba klíče šifrujeme obálkovým šifrováním přes AWS KMS.
DNS: SPF, DKIM a DMARC
Sekce “DNS: SPF, DKIM a DMARC”Hodnoty najdete v Senders & Domains → vaše doména → Authentication settings:
; SPF – spojte s existujícím SPF záznamem (na doméně smí být jen jeden!)example.cz. TXT "v=spf1 include:spf.mailjet.com ~all"
; DKIMmailjet._domainkey.example.cz. TXT "k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNAD…"
; Ověření vlastnictví domény (jen pokud o něj Mailjet požádá)mailjet._a1b2c3d4.example.cz. TXT "a1b2c3d4e5f6…"
; DMARC_dmarc.example.cz. TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.cz"- Máte-li už
v=spf1 include:spf.seznam.cz ~all, upravte ho nav=spf1 include:spf.seznam.cz include:spf.mailjet.com ~all– druhý SPF záznam nepřidávejte. - Obálkovým odesílatelem je bounce doména Mailjetu, takže zarovnání pro DMARC stojí na DKIM – zkontrolujte, že DKIM svítí jako OK.
- DMARC začněte s
p=nonea později zpřísněte.
Regiony
Sekce “Regiony”Frontmail komunikuje s api.mailjet.com. Mailjet ve výchozím stavu ukládá data v EU. Provozuje i samostatnou americkou infrastrukturu (api.us.mailjet.com) pro účty založené tam – Frontmail zatím podporuje jen výchozí endpoint, použijte tedy účet ze standardní (evropské) platformy.
Sandbox a limity
Sekce “Sandbox a limity”- Bezplatný tarif: 200 e-mailů denně, 6 000 měsíčně.
- Placené tarify denní strop ruší a účtují se měsíčně.
- Při vysoké míře bounců nebo stížností může compliance tým Mailjetu účet pozastavit ke kontrole; do jejího konce je odesílání zablokované.
- Příznak
SandboxModev API Mailjetu zprávy jen zvaliduje a neodešle; Frontmail ho nepoužívá.
Webhooky (sledování doručení)
Sekce “Webhooky (sledování doručení)”Mailjet jim říká Event notifications (webhooky).
-
Na stránce služby ve Frontmailu zkopírujte webhook URL (tlačítko kopírovat):
https://api.frontmail.dev/webhooks/providers/mailjet/<token> -
Doporučujeme ho chránit přes Basic auth. Mailjet na to nemá samostatné pole, přihlašovací údaje proto vložte přímo do URL a stejné hodnoty zadejte ve Frontmailu do polí Uživatelské jméno webhooku / Heslo webhooku:
https://frontmail:dlouhy-nahodny-retezec@api.frontmail.dev/webhooks/providers/mailjet/<token> -
V Mailjetu otevřete Account settings → Event notifications (webhooks) a URL vložte k těmto událostem:
| Událost v Mailjetu | Událost ve Frontmailu |
|---|---|
| Sent (přijato serverem příjemce) | delivered |
Bounce – hard_bounce: true |
bounced – přidá se na suppression list |
| Bounce – měkký, Blocked | zaznamená se jako měkký bounce |
| Spam | complained – přidá se na suppression list |
| Open | opened |
| Click | clicked |
- Po uložení pošle Mailjet testovací volání; událost by se měla objevit v logu událostí služby.
Ověření podpisu: Mailjet události nepodepisuje. Službu identifikuje tajný token v URL, a pokud nastavíte heslo webhooku, Frontmail odmítne každý požadavek s nesouhlasným Basic auth.
Frontmail nastavuje CustomID Mailjetu na ID zprávy ve Frontmailu, aby se události spárovaly se správnou zprávou.
Časté chyby
Sekce “Časté chyby”- auth – nefunguje služba (špatný API klíč či tajný klíč, 401/403, neověřený odesílatel nebo doména, zablokovaný účet). Služba se označí jako
unhealthy, vlastník dostane e-mail a upozornění v dashboardu. Převezme to záložní služba šablony; bez ní vrátíme kredit a zpráva počká ve frontě zadržených zpráv jakoheld_service_errora po opravě služby se odešle sama (ověřujeme při uložení a při denní kontrole stavu). - permanent – nejde odeslat právě tahle zpráva (neplatný příjemce, validace 400). Záložní služba, pokud je, jinak
faileda vrácení kreditu. - transient – 5xx, 429, timeouty. Opakujeme s exponenciálně rostoucí pauzou; po posledním pokusu
faileda vrácení kreditu.
| Odpověď Mailjetu | Třída | Co dělat |
|---|---|---|
401 – API key authentication/authorization failure |
auth | Zkontrolujte dvojici API klíč a tajný klíč; případně je přegenerujte. |
403 – Forbidden / účet zablokovaný nebo v kontrole |
auth | Podívejte se do dashboardu Mailjetu a kontaktujte jeho podporu. |
400 – „The sender … is not validated / not authorized“ |
auth | Ověřte adresu Od nebo doménu v Senders & Domains (ve správném sub-accountu). |
400 mj-0013 – „… is an invalid email address“ |
permanent | Viz neplatný příjemce. |
400 – jiné validační chyby (příliš dlouhý předmět, velká příloha) |
permanent | Upravte šablonu; viz HTML šablony. |
429 – Too many requests |
transient | Limit rychlosti nebo denní limit; Frontmail to zopakuje. Snižte Max. e-mailů za sekundu. |
500 / 503, timeout |
transient | Výpadek Mailjetu – Frontmail to zopakuje. |
Kontrolní seznam
Sekce “Kontrolní seznam”- Doména přidaná a ověřená v Mailjetu (SPF include +
mailjet._domainkey) - Jediný sloučený SPF záznam; DMARC
p=none - Samostatný pár klíčů sub-accountu
- Otestovat spojení prošel
- URL pro event notifications s Basic auth údaji, stejné hodnoty ve Frontmailu
- Zapnuté události sent, bounce, blocked, spam (+ open, click)
- Denní objem v mezích tarifu