API compatibile · SendGrid

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
Node.js · @sendgrid/mail 8.1.6 · cosa cambia
+ 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);
cosa cambia

Cambiano due cose, il resto resta

Stessi percorsi, stessi campi, stesse risposte e stessa forma degli errori dell’API v3 Mail Send di SendGrid.

Indirizzo basehttps://app.mailsenpai.com/relay/compat/sendgrid
Oppure l’host dedicatohttps://sendgrid-api.mailsenpai.com
Dove va la chiaveAuthorization: Bearer msp_…
Percorsi (invariati)POST /v3/mail/send

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 codice

Il tuo codice, puntato su SMTP Senpai

Node.js · @sendgrid/mail 8.1.6 · dopo
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.

Python · sendgrid 6.12.5 · dopo
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.

SDKImpostazioneStato
PHP sendgrid/sendgridnew \SendGrid($key, ['host' => 'https://app.mailsenpai.com/relay/compat/sendgrid'])Letto nel codice dell’SDK, non ancora provato
Ruby sendgrid-rubySendGrid::API.new(api_key: key, host: 'https://app.mailsenpai.com/relay/compat/sendgrid')Letto nel codice dell’SDK, non ancora provato
C# SendGridnew SendGridClient(new SendGridClientOptions { ApiKey = key, Host = "https://app.mailsenpai.com/relay/compat/sendgrid" })Letto nel codice dell’SDK, non ancora provato
Java sendgrid-javasg.setHost("sendgrid-api.mailsenpai.com")Letto nel codice dell’SDK, non ancora provato
Symfony MailerMAILER_DSN=sendgrid+api://[email protected]Letto nel codice dell’SDK, non ancora provato
campi

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.

eventi e webhook

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

Limiti. Fino a 50 destinatari per messaggio e 500 copie per richiesta (oltre 50 vanno in coda e partono entro circa un minuto), 10 allegati e 10 MB per messaggio. Template e invio programmato non sono supportati: manda il contenuto finale quando vuoi che parta.
Terminale · eventi di SMTP Senpai
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.

Prova 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.

14 giorni gratisProva gratis