Enviar por SMTP
O mesmo envio que POST /emails, para software que fala SMTP.
Ligar
Tudo o que envia correio através de um servidor SMTP pode enviar através do OpenEmail: o mailer de um framework, um CMS, uma ferramenta de monitorização, uma impressora. Inicie sessão com o nome de utilizador openemail e uma chave de API como palavra-passe. A chave precisa do âmbito emails:send, e uma mensagem que ela entrega é o mesmo envio que POST /emails feito com essa chave.
| Definição | Valor |
|---|---|
| Host | smtp.openemail.uk |
| Porta | 465 com SSL/TLS, ou 587 com STARTTLS |
| Nome de utilizador | openemail |
| Palavra-passe | Uma chave de API com o âmbito emails:send |
| Início de sessão | PLAIN ou LOGIN, a que a maioria do software chama palavra-passe normal |
Nada é aceite sem cifra, e na porta 587 o início de sessão só abre depois do STARTTLS. Uma chave de API inicia sessão apenas para enviar. Ler uma caixa de correio por IMAP ou POP3 exige uma palavra-passe de app.
Enviar uma mensagem de teste
Guarde uma mensagem como message.eml e entregue-a com curl. From tem de ser um endereço em nome do qual a chave possa enviar.
From: Acme <[email protected]>To: [email protected]Subject: Hello over SMTPMessage-ID: <[email protected]> It works.curl --url "smtps://smtp.openemail.uk:465" \ --user "openemail:$OPENEMAIL_API_KEY" \ --mail-from "[email protected]" \ --mail-rcpt "[email protected]" \ --upload-file message.eml --crlfcurl --ssl-reqd --url "smtp://smtp.openemail.uk:587" \ --user "openemail:$OPENEMAIL_API_KEY" \ --mail-from "[email protected]" \ --mail-rcpt "[email protected]" \ --upload-file message.eml --crlfA resposta a uma mensagem aceite é 250 2.0.0 OK queued as seguido do id da mensagem. Esse id é o que GET /emails/{id} recebe, por isso a mensagem, os seus eventos e o seu rastreio leem-se como os de qualquer outro envio.
Como uma mensagem se torna um envio
A mensagem é lida e enviada pelo mesmo caminho que um envio por REST, por isso é reconstruída a partir das suas partes e não é passada adiante byte a byte.
| Na mensagem | No envio |
|---|---|
| From | from. É obrigatório, e é o remetente contra o qual a chave é verificada. O endereço em MAIL FROM só tem de lá estar. |
| RCPT TO | A quem a mensagem é entregue, 50 no máximo. Um destinatário indicado em To é um to, um indicado em Cc é um cc, e um que não está em nenhum dos dois é um bcc. Pelo menos um tem de estar em To. |
| Reply-To | replyTo, o primeiro endereço. |
| Subject | subject. |
| As partes de texto e HTML | text e html. Uma imagem que o HTML usa como cid: é embutida onde aparece. |
| Anexos | attachments: no máximo 20 ficheiros e 5 MB no total. |
| Outros cabeçalhos | X-*, List-*, Precedence, Auto-Submitted, Importance, Priority e Feedback-ID são mantidos. Todos os outros cabeçalhos ficam de fora. |
| X-OpenEmail-Stream | stream: transactional ou broadcast. O cabeçalho é removido antes de a mensagem sair. |
O que se aplica
Tudo aquilo a que um envio por REST está sujeito vale aqui, porque é um só caminho.
- Os âmbitos da chave, e os endereços e domínios a que está limitada.
- A verificação do remetente:
Fromé um endereço de um domínio que pode enviar, e um em nome do qual a chave pode enviar. - A quota de envio do espaço de trabalho e a sua lista de supressão.
- A assinatura e o rastreio de aberturas e cliques do endereço de onde é enviada, como num envio por REST que não define nem
signaturenemtracking. - A faixa: enquanto a faixa dos disparos está em pausa, uma mensagem com
X-OpenEmail-Stream: broadcasté recusada. - Os webhooks e os eventos de entrega, que identificam a mensagem pelo id da resposta
250.
Repetições
Uma mensagem com um Message-ID é enviada uma vez. Entregar de novo o mesmo Message-ID para os mesmos destinatários responde com o id da primeira mensagem e não envia nada, por isso o software que tenta de novo depois de uma ligação caída não a pode enviar duas vezes. A mesma mensagem para outros destinatários é outro envio. Ver Idempotência.
Respostas e limites
| Resposta | Quando |
|---|---|
| 250 2.0.0 | A mensagem fica em fila, e o seu id vem a seguir. |
| 535 5.7.8 | O início de sessão falhou: uma chave errada, revogada ou expirada, uma chave sem emails:send, ou uma chave de API com outro nome de utilizador. |
| 452 4.5.3 | Mais de 50 destinatários numa mensagem. O software de correio envia os restantes noutra, sozinho. |
| 552 5.3.4 | A mensagem é maior do que 25 MB. |
| 550 5.6.0 | A mensagem não pode ser enviada tal como está escrita: sem From, ninguém em To, anexos a mais ou demasiado grandes, uma faixa desconhecida. O texto diz qual. |
| 550 5.7.1 | O envio foi recusado: a chave não pode enviar em nome desse endereço, o domínio ainda não pode enviar, ou a faixa dos disparos está em pausa. |
| 452 4.7.0 | A quota de envio do espaço de trabalho esgotou-se. |
| 451 4.7.1 | Mais de 300 mensagens de uma chave num minuto. O software de correio espera e tenta de novo. |
| 451 4.3.0 | Uma falha do nosso lado. Tente de novo daqui a pouco. |
Uma ligação sem nada para enviar fecha ao fim de cinco minutos. Uma ligação pode levar qualquer número de mensagens, uma a seguir à outra.
No registo de pedidos
Cada mensagem que uma chave entrega é uma linha no seu registo de pedidos, com o método SMTP, o caminho /emails e o estado que um envio por REST teria tido: 202 quando ficou em fila, e 403, 422 ou 429 com o mesmo code de erro quando foi recusada. GET /keys/{id}/requests?path=/emails lista-as ao lado dos envios por REST. Um início de sessão que falha com uma chave verdadeira aparece na atividade dessa chave.