Avvio rapido
Invia la prima email via SMTP
Ottieni le credenziali SMTP, scegli una porta e invia un’email di prova tramite smtp.emailit.com con swaks, OpenSSL o Python, poi collega la tua app o il tuo framework.
Questo avvio rapido mostra come inviare un’email di prova tramite l’SMTP relay di Emailit dal terminale, poi come collegare la tua app. Usa SMTP quando il tuo software ha già le impostazioni SMTP. Per il codice nuovo, l’API offre di più.
Prima di iniziare
- Un dominio di invio verificato. Se non ne hai ancora uno, segui la prima sezione dell’avvio rapido per l’API o Aggiungi un dominio.
- Una chiave API. Creane una in Email APIAPI Keys con Add API key. La chiave API è la tua password SMTP.
Le tue credenziali SMTP
| Impostazione | Valore |
|---|---|
| Host | smtp.emailit.com |
| Porta | 587 con STARTTLS (consigliata). Per le alternative, vedi la tabella qui sotto. |
| Nome utente | emailit |
| Password | La tua chiave API, che inizia con secret_ |
| Autenticazione | PLAIN o LOGIN |
| Indirizzo From | Qualsiasi indirizzo di un dominio di invio verificato, ad esempio Acme <hello@acme.com> |
Puoi vedere queste impostazioni anche nel riquadro SMTP Info quando apri una chiave in Email APIAPI Keys.
| Porta | Crittografia | Quando usarla |
|---|---|---|
587 |
STARTTLS | L’impostazione predefinita per la maggior parte di app e librerie |
465 |
TLS dal primo byte (TLS implicito) | Quando il tuo client la chiama «SSL» o «SMTPS» |
2525 |
STARTTLS | Quando la tua rete o il tuo provider di hosting blocca la 587 |
2587 |
STARTTLS | Un’altra alternativa quando la 587 e la 2525 sono bloccate |
25 |
STARTTLS | Relay da server a server. Molti provider cloud bloccano la porta 25 in uscita. |
Il relay offre TLS su tutte le porte ma non lo impone. Attiva sempre TLS nel client, così la chiave API non viene inviata in chiaro.
Invia un’email di prova
Scegli uno di questi strumenti. Sostituisci hello@acme.com con un indirizzo del tuo dominio verificato e ada@example.com con l’indirizzo email con cui ti sei registrato.
swaks
swaks è uno strumento a riga di comando per testare SMTP. Installalo con brew install swaks o apt install swaks, poi esegui:
swaks --server smtp.emailit.com:587 --tls \
--auth-user emailit --auth-password "$EMAILIT_API_KEY" \
--from hello@acme.com --to ada@example.com \
--header "Subject: Hello from Emailit SMTP" \
--body "This is my first email sent through the Emailit SMTP relay."swaks stampa l’intera conversazione SMTP. L’ultima risposta del server contiene l’ID dell’email:
<~ 250 2.0.0 OK: queued as em_2pX7cN4kQ9vLm3RtB8yWd1ZsOpenSSL
OpenSSL è preinstallato sulla maggior parte dei sistemi e ti permette di digitare tu stesso i comandi SMTP. Per prima cosa, codifica le credenziali per AUTH PLAIN:
printf '\0emailit\0%s' "$EMAILIT_API_KEY" | base64Poi apri una connessione e digita i comandi seguenti, incollando la stringa codificata dopo AUTH PLAIN:
openssl s_client -connect smtp.emailit.com:587 -starttls smtp -crlf -quietEHLO localhost
AUTH PLAIN AGVtYWlsaXQAc2VjcmV0X...
MAIL FROM:<hello@acme.com>
RCPT TO:<ada@example.com>
DATA
From: Acme <hello@acme.com>
To: ada@example.com
Subject: Hello from Emailit SMTP
This is my first email sent through the Emailit SMTP relay.
.
QUITDopo AUTH PLAIN il server risponde 235. Dopo la riga con un solo ., risponde 250 2.0.0 OK: queued as em_….
Python
Il modulo integrato smtplib di Python non richiede pacchetti aggiuntivi:
import os
import smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg["From"] = "Acme <hello@acme.com>"
msg["To"] = "ada@example.com"
msg["Subject"] = "Hello from Emailit SMTP"
msg.set_content("This is my first email sent through the Emailit SMTP relay.")
msg.add_alternative("<p>This is my first email sent through the Emailit SMTP relay.</p>", subtype="html")
with smtplib.SMTP("smtp.emailit.com", 587) as smtp:
smtp.starttls()
smtp.login("emailit", os.environ["EMAILIT_API_KEY"])
smtp.send_message(msg)
print("Accepted by Emailit")Se lo script termina senza eccezioni, Emailit ha accettato l’email.
Controllala nel pannello
Vai a Email APIEmails. L’email è in cima alla scheda Outgoing, e il suo stato passa da accepted a delivered quando il server del destinatario la accetta. Ogni sessione SMTP compare anche in Email APILogs con l’origine SMTP, così puoi vedere anche gli accessi non riusciti e i messaggi rifiutati.
Risposte comuni
| Risposta | Causa | Soluzione |
|---|---|---|
535 Authentication failed |
Chiave API errata o eliminata | Usa una chiave API valida come password. Vedi errori 535. |
530 From/Sender domain is not verified for this workspace |
L’indirizzo From non appartiene a un dominio verificato | Verifica il dominio, oppure cambia l’indirizzo From. Vedi errori 530. |
550 Unverified workspaces can only send to workspace members' account emails |
Modalità sandbox | Invia all’indirizzo email dell’account di un membro, oppure richiedi l’accesso alla produzione |
452 4.4.5 Messages per second limit exceeded |
Hai superato il limite al secondo | Rallenta e riprova. I limiti sono condivisi con l’API. |
452 4.5.3 Daily message limit exceeded |
Hai raggiunto il limite di oggi | Attendi la mezzanotte UTC, oppure richiedi un aumento |
| Timeout della connessione | La tua rete blocca la porta | Prova la 2525 o la 2587. Vedi Timeout di connessione. |
Per tutti i codici di risposta, vedi Risoluzione dei problemi SMTP.
Collega la tua app
Inserisci le stesse impostazioni nella tua app o nel tuo framework. Queste guide mostrano la configurazione esatta: