API compatibile con SendGrid: cambi indirizzo e chiave
SMTP Senpai accetta le richieste di invio nello stesso formato dell’API v3 Mail Send di SendGrid. Punti il codice su SMTP Senpai, usi la chiave msp_ e tieni il tuo SDK, i tuoi campi e la tua gestione degli errori.
14 giorni gratis · fino a 100 email al giorno · serve la carta · se non disdici entro 14 giorni parte il piano che hai scelto
- Stessi percorsi, campi ed errori
- Server di invio e registro in Europa
- Prova gratis 14 giorni
+ const client = require('@sendgrid/client'); const sgMail = require('@sendgrid/mail'); - sgMail.setApiKey(process.env.SENDGRID_API_KEY); + client.setApiKey(process.env.SMTP_SENPAI_KEY); // msp_… + client.setDefaultRequest('baseUrl', 'https://app.mailsenpai.com/relay/compat/sendgrid'); + sgMail.setClient(client);
Cambiano due cose, il resto resta
Stessi percorsi, stessi campi, stesse risposte e stessa forma degli errori dell’API v3 Mail Send di SendGrid.
Il mittente deve stare su un dominio verificato nella tua area SMTP Senpai e firmato DKIM: altrimenti la richiesta viene rifiutata con un errore nel formato di SendGrid. Per provare senza spedire usa mail_settings.sandbox_mode: la richiesta viene controllata e non parte nulla.
Il tuo codice, puntato su SMTP Senpai
const client = require('@sendgrid/client');
const sgMail = require('@sendgrid/mail');
client.setApiKey(process.env.SMTP_SENPAI_KEY); // msp_…
client.setDefaultRequest('baseUrl', 'https://app.mailsenpai.com/relay/compat/sendgrid');
sgMail.setClient(client);Provato con @sendgrid/mail 8.1.6: eseguito con l’SDK ufficiale contro gli endpoint di SMTP Senpai.
import os
from sendgrid import SendGridAPIClient
sg = SendGridAPIClient(os.environ['SMTP_SENPAI_KEY'], # msp_…
host='https://app.mailsenpai.com/relay/compat/sendgrid')Provato con sendgrid 6.12.5 su SMTP Senpai: collegamento, autenticazione e gestione degli errori.
Altri linguaggi e framework
Impostazioni lette nel codice sorgente di ogni SDK: seguono la stessa regola (indirizzo base o host, più la tua chiave). Provale con un invio di prova prima di andare in produzione.
| SDK | Impostazione | Stato |
|---|---|---|
| PHP sendgrid/sendgrid | new \SendGrid($key, ['host' => 'https://app.mailsenpai.com/relay/compat/sendgrid']) | Letto nel codice dell’SDK, non ancora provato |
| Ruby sendgrid-ruby | SendGrid::API.new(api_key: key, host: 'https://app.mailsenpai.com/relay/compat/sendgrid') | Letto nel codice dell’SDK, non ancora provato |
| C# SendGrid | new SendGridClient(new SendGridClientOptions { ApiKey = key, Host = "https://app.mailsenpai.com/relay/compat/sendgrid" }) | Letto nel codice dell’SDK, non ancora provato |
| Java sendgrid-java | sg.setHost("sendgrid-api.mailsenpai.com") | Letto nel codice dell’SDK, non ancora provato |
| Symfony Mailer | MAILER_DSN=sendgrid+api://[email protected] | Letto nel codice dell’SDK, non ancora provato |
Cosa funziona, cosa viene ignorato, cosa viene rifiutato
Funziona
personalizations (to, cc, bcc, subject, headers, substitutions, from), from, reply_to, content text/plain + text/html, attachments (inline + content_id), headers, mail_settings.sandbox_mode, gzip
Accettato senza effetto
categories, custom_args, ip_pool_name, batch_id, tracking_settings, mail_settings.bypass_*
Indicato nell’intestazione di risposta X-MailSenpai-Ignored.
Rifiutato con l’errore di SendGrid
template_id, dynamic_template_data, sections, send_at, asm, mail_settings.footer (400)
L’avviso «API key does not start with SG.» dell’SDK Node non ha effetti. Non chiamare setDataResidency(): sovrascrive l’indirizzo base. I gruppi di disiscrizione (asm) sono rifiutati: usa le intestazioni List-Unsubscribe.
Gli esiti delle consegne dall’API di SMTP Senpai
Gli endpoint di SendGrid per log, eventi, statistiche e webhook non sono riprodotti. Gli esiti (sent, delivered, bounce, defer, complaint, dropped, open, click) arrivano dall’API di SMTP Senpai con la stessa chiave: GET /relay/v1/eventi, oppure un webhook firmato impostato nella tua area SMTP Senpai.
L’id nella risposta all’invio (X-Message-Id) è il message_id di quegli eventi. Ogni risposta porta anche X-MailSenpai-Result (sent, queued, suppressed, failed).
Leggi il riferimento di eventi e webhook
curl "https://app.mailsenpai.com/relay/v1/eventi?quanti=50" \
-H "Authorization: Bearer $SMTP_SENPAI_KEY"
# {"ok": true, "eventi": [{"type": "delivered",
# "email": "…", "message_id": "…", …}], "prossimo": …}Domande frequenti
Devo riscrivere il codice che usa SendGrid?
No. Cambi l’indirizzo base (o l’host) e la chiave. Percorsi, campi, risposte e formato degli errori restano quelli dell’API v3 Mail Send di SendGrid, quindi il tuo SDK e la gestione degli errori continuano a funzionare.
E i template e l’invio programmato?
Non sono supportati: le richieste che li usano vengono rifiutate con l’errore nativo, così non parte nulla per sbaglio. Prepara il contenuto finale nel tuo codice e mandalo quando vuoi che parta.
Come ricevo rimbalzi, aperture e webhook?
Dall’API di SMTP Senpai, con la stessa chiave: GET /relay/v1/eventi oppure un webhook firmato impostato nella tua area SMTP Senpai. Gli endpoint di eventi e webhook di SendGrid non sono riprodotti.
Posso provare senza spedire?
Sì, come con SendGrid: imposta mail_settings.sandbox_mode. La richiesta viene controllata e non parte nulla.
Posso continuare a spedire via SMTP?
Sì. Lo stesso account funziona anche via SMTP (relay.mailsenpai.com, porta 2525, STARTTLS) e con l’API REST di SMTP Senpai.
Gli altri formati che SMTP Senpai accetta
Tutte le 14 API compatibili
La tabella con indirizzi base, host dedicati e chiavi.
ApriAPI compatibile con Mailgun
API Messages di Mailgun
ApriAPI compatibile con Amazon SES
API di Amazon SES (v2 SendEmail, v1 SendEmail e SendRawEmail)
ApriAPI compatibile con Postmark
API Email di Postmark
ApriAPI compatibile con Resend
API Emails di Resend
ApriAPI compatibile con Brevo
API delle email transazionali di Brevo
ApriProva SMTP Senpai con il tuo codice di oggi
14 giorni per cambiare indirizzo base e chiave, mandare le tue email vere e controllare ogni esito nel registro. Poi decidi.
SendGrid è un marchio di Twilio Inc. o delle sue affiliate. È citato solo per descrivere il formato di richiesta che SMTP Senpai accetta. MailSenpai non è affiliata a Twilio e questa pagina non è approvata da loro. Informazioni verificate il 9 ottobre 2026.