API compatibile · Amazon SES

API compatibile con Amazon SES: cambi indirizzo e chiave

SMTP Senpai accetta le richieste di invio nello stesso formato dell’API di Amazon SES (v2 SendEmail, v1 SendEmail e SendRawEmail). 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 · @aws-sdk/client-sesv2 3.1148.0 · cosa cambia
  import { SESv2Client } from '@aws-sdk/client-sesv2';
- const ses = new SESv2Client({ region: 'eu-west-1' });
+ const key = process.env.SMTP_SENPAI_KEY; // msp_…
+ const ses = new SESv2Client({
+   region: 'eu-west-1', // any region
+   endpoint: 'https://app.mailsenpai.com/relay/compat/ses',
+   credentials: { accessKeyId: key, secretAccessKey: key },
+ });
cosa cambia

Cambiano due cose, il resto resta

Stessi percorsi, stessi campi, stesse risposte e stessa forma degli errori dell’API di Amazon SES (v2 SendEmail, v1 SendEmail e SendRawEmail).

Indirizzo basehttps://app.mailsenpai.com/relay/compat/ses
Oppure l’host dedicatohttps://ses-api.mailsenpai.com
Dove va la chiaveAccess Key ID e Secret Access Key = msp_… (regione qualsiasi)
Percorsi (invariati)POST /v2/email/outbound-emails; POST / (Action=SendEmail, SendRawEmail)

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 Amazon SES.

il codice

Il tuo codice, puntato su SMTP Senpai

Node.js · @aws-sdk/client-sesv2 3.1148.0 · dopo
import { SESv2Client } from '@aws-sdk/client-sesv2';
const key = process.env.SMTP_SENPAI_KEY; // msp_…
const ses = new SESv2Client({
  region: 'eu-west-1', // any region
  endpoint: 'https://app.mailsenpai.com/relay/compat/ses',
  credentials: { accessKeyId: key, secretAccessKey: key },
});

Provato con @aws-sdk/client-sesv2 3.1148.0: eseguito con l’SDK ufficiale contro gli endpoint di SMTP Senpai.

Python · boto3 1.43 · dopo
import os
import boto3
key = os.environ['SMTP_SENPAI_KEY']  # msp_…
ses = boto3.client('sesv2', region_name='eu-west-1',
                   endpoint_url='https://app.mailsenpai.com/relay/compat/ses',
                   aws_access_key_id=key, aws_secret_access_key=key)

Provato con boto3 1.43 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
JS @aws-sdk/client-ses (v1 API)same endpoint and credentials, SendEmailCommand / SendRawEmailCommandProvato
PHP aws/aws-sdk-phpnew Aws\SesV2\SesV2Client(['region' => 'eu-west-1', 'version' => 'latest', 'endpoint' => 'https://app.mailsenpai.com/relay/compat/ses', 'credentials' => ['key' => $key, 'secret' => $key]])Letto nel codice dell’SDK, non ancora provato
Laravel ses / ses-v2'ses' => ['key' => KEY, 'secret' => KEY, 'region' => 'eu-west-1', 'endpoint' => 'https://ses-api.mailsenpai.com']Letto nel codice dell’SDK, non ancora provato
Symfony MailerMAILER_DSN=ses+https://KEY:[email protected]?region=eu-west-1Letto nel codice dell’SDK, non ancora provato
campi

Cosa funziona, cosa viene ignorato, cosa viene rifiutato

Funziona

Content.Simple (Subject, Text, Html, Headers, Attachments), Content.Raw (MIME completo, come lo mandano Laravel ses-v2, Symfony ses+https e Nodemailer), Destination, ReplyToAddresses; v1 SendEmail e SendRawEmail con risposte XML

Accettato senza effetto

ConfigurationSetName, EmailTags, ListManagementOptions, impostazioni di inoltro dei feedback

Indicato nell’intestazione di risposta X-MailSenpai-Ignored.

Rifiutato con l’errore di Amazon SES

Content.Template, EndpointId (endpoint multi-regione)

Ogni richiesta viene controllata con la firma AWS Signature Version 4, come la calcolano gli SDK AWS: usa la chiave msp_ sia come Access Key ID sia come Secret Access Key. Funziona anche il trasporto SES di Nodemailer, compreso verify().

eventi e webhook

Gli esiti delle consegne dall’API di SMTP Senpai

Gli endpoint di Amazon SES 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 è 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 Amazon SES?

No. Cambi l’indirizzo base (o l’host) e la chiave. Percorsi, campi, risposte e formato degli errori restano quelli dell’API di Amazon SES (v2 SendEmail, v1 SendEmail e SendRawEmail), 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 Amazon SES non sono riprodotti.

Che regione e che credenziali uso?

Una regione qualsiasi. Usa la chiave msp_ sia come Access Key ID sia come Secret Access Key: ogni richiesta viene controllata con AWS Signature Version 4.

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.

Amazon SES, Amazon Web Services e AWS sono marchi di Amazon.com, Inc. o delle sue affiliate. È citato solo per descrivere il formato di richiesta che SMTP Senpai accetta. MailSenpai non è affiliata a Amazon Web Services e questa pagina non è approvata da loro. Informazioni verificate il 9 ottobre 2026.

14 giorni gratisProva gratis