Guide

Configurações SMTP do Outlook: servidor, porta e TLS

Referência completa de SMTP do Outlook para desenvolvedores: configurações do smtp.office365.com, porta 587 com STARTTLS, requisitos de Modern Auth (OAuth 2.0) desde que a Microsoft removeu o Basic Auth em outubro de 2022, limites de envio do Microsoft 365 e do Outlook.com, códigos de erro SMTP comuns e uma alternativa sem configuração.

Written by Nick Barraclough Product Manager

VerifiedCLI 3.1.11 · Outlook · last tested May 23, 2026

Referências de comandos usadas neste guia: nylas email send para enviar sem SMTP, nylas auth login para autenticação OAuth e nylas email list para ler e-mails.

Quais são as configurações do servidor SMTP do Outlook?

O servidor SMTP do Outlook é smtp.office365.com. A porta 587 com STARTTLS é a única configuração suportada, já que a Microsoft descontinuou a porta 25 para submissões de cliente e recomenda a porta 587 com STARTTLS em vez da porta 465 para o Exchange Online. A autenticação deve usar OAuth 2.0 Modern Auth. A tabela abaixo reúne todas as configurações SMTP do Outlook para configurar qualquer cliente ou biblioteca SMTP.

ConfiguraçãoValor
Servidor SMTPsmtp.office365.com
Porta587
CriptografiaSTARTTLS (obrigatório)
AutenticaçãoOAuth 2.0 (Modern Auth)
Nome de usuárioEndereço de e-mail completo (user@domain.com)
Servidor IMAPoutlook.office365.com (porta 993, TLS)
Servidor POP3outlook.office365.com (porta 995, TLS)

Os servidores IMAP e POP3 usam um hostname diferente (outlook.office365.com) do servidor SMTP. Isso pega de surpresa desenvolvedores que assumem que são o mesmo. Segundo a documentação do Exchange Online da Microsoft, o SMTP AUTH precisa ser habilitado explicitamente por caixa de correio por um administrador do tenant. Ele vem desabilitado por padrão em tenants Microsoft 365 novos.

Como o fim do Basic Auth da Microsoft mudou o acesso SMTP?

A Microsoft desativou permanentemente o Basic Authentication para os protocolos do Exchange Online em 1º de outubro de 2022. Antes dessa data, clientes SMTP podiam enviar usuário e senha em texto puro (codificados em base64 via AUTH LOGIN ou AUTH PLAIN). Após o desligamento, todas as conexões SMTP precisam se autenticar com um token de acesso OAuth 2.0 usando o mecanismo SASL XOAUTH2. Essa mudança quebrou milhares de scripts, impressoras e aplicações corporativas da noite para o dia.

Para enviar e-mail via SMTP com Modern Auth, você precisa de um registro de app no Azure AD com a permissão delegada SMTP.Send. A requisição de token vai para https://login.microsoftonline.com/{tenant}/oauth2/v2.0/token com scope=https://outlook.office365.com/.default. O token de acesso expira em 3.600 segundos (1 hora), então código de produção precisa de um loop de refresh token. O exemplo abaixo mostra o handshake SMTP EHLO após o upgrade para STARTTLS.

# Handshake SMTP Modern Auth (conceitual)
EHLO client.example.com
STARTTLS
EHLO client.example.com
AUTH XOAUTH2 <base64-encoded-oauth2-token>

# Formato do token base64:
# user=user@contoso.com^Aauth=Bearer <access_token>^A^A
# onde ^A é o caractere ASCII SOH (0x01)

O formato de token XOAUTH2 não é igual a um header Bearer padrão. Os campos user= e auth=Bearer são separados por caracteres SOH (0x01), e a string inteira é então codificada em base64. Errar essa codificação é a causa nº 1 dos erros 535 5.7.3 Authentication unsuccessful. A documentação XOAUTH2 da Microsoft inclui um exemplo em Python que monta a string corretamente.

Quais são os erros SMTP comuns do Outlook e como corrigir?

O SMTP do Outlook retorna códigos de erro da RFC 5321 com códigos de status estendidos específicos da Microsoft. A família 5.7.x cobre falhas de autenticação e autorização, que são as mais comuns desde o fim do Basic Auth. A tabela abaixo lista 8 erros comuns da referência de NDRs da Microsoft.

Código de erroSignificadoCorreção
535 5.7.3Falha de autenticaçãoMigre para OAuth 2.0 Modern Auth; o Basic Auth foi desativado permanentemente
550 5.7.501SMTP AUTH desabilitado para a caixa de correioO admin deve habilitar o SMTP AUTH via Set-CASMailbox -SmtpClientAuthenticationDisabled $false
550 5.1.1Destinatário não encontradoVerifique se o endereço do destinatário existe no domínio de destino
421 4.7.0Conexão limitada (throttle)Aguarde e tente novamente após 60 segundos; reduza a taxa de envio
550 5.7.708Tenant bloqueado para e-mail de saídaO admin deve remover o bloqueio no Security & Compliance Center
554 5.2.0Mensagem grande demaisReduza a mensagem para menos de 25 MB (35 MB com overhead de base64 = ~25 MB decodificados)
452 4.5.3Destinatários demaisFique dentro do limite de destinatários do tenant (o padrão varia, máx. 1.000)
550 5.7.520Detectada como spamVerifique os registros SPF, DKIM e DMARC; reduza a taxa de envio em massa

O erro 535 5.7.3 é de longe o mais comum, respondendo pela maioria dos tickets de suporte desde outubro de 2022. Se você o vir, seu código ainda está enviando usuário e senha em texto puro. A correção é registrar um app no Azure AD, obter um token OAuth 2.0 e usar o mecanismo XOAUTH2 conforme descrito na seção anterior.

Quais são os limites de envio do Microsoft 365?

O Microsoft 365 impõe limites de taxa por caixa de correio e por tenant nas submissões via SMTP AUTH. Os limites diferem entre os planos Microsoft 365 Business e as contas gratuitas do Outlook.com. Exceder qualquer limite dispara uma resposta de throttle 421 4.7.0 ou uma rejeição 550. A tabela abaixo mostra os limites atuais segundo a documentação de limites do Exchange Online da Microsoft.

LimiteMicrosoft 365Outlook.com
Destinatários por dia10.000varia conforme a assinatura
Destinatários por mensagemAté 1.000 (configurável pelo admin)100
Mensagens por minuto3030
Tamanho máximo da mensagem25 MB25 MB
Máximo de anexos250250

O limite de 30 mensagens por minuto surpreende desenvolvedores que constroem sistemas automatizados de notificação. É um teto por caixa de correio, não por tenant, então distribuir os envios entre várias caixas de correio contorna o limite. Para e-mail transacional de alto volume, a Microsoft recomenda usar um recurso do Azure Communication Services ou um ESP de terceiros em vez do SMTP AUTH.

Quando você deve pular o SMTP do Outlook de vez?

O SMTP AUTH via smtp.office365.com exige registro de app no Azure AD, gerenciamento de tokens OAuth 2.0, codificação XOAUTH2 e habilitação pelo admin em cada caixa de correio. Se você está construindo um script, um pipeline de CI/CD ou uma ferramenta de desenvolvedor que envia e-mail de uma conta Outlook, dá para pular tudo isso. O CLI autentica via OAuth no navegador, armazena o token em cache e cuida do refresh automaticamente.

O exemplo abaixo envia um e-mail de uma conta Outlook em 2 comandos. O primeiro autentica e armazena as credenciais localmente. O segundo envia a mensagem via HTTPS, não SMTP. Não há porta 587, nem handshake STARTTLS, nem codificação de token XOAUTH2, nem etapa de habilitação pelo admin.

# Instalar (macOS ou Linux)
brew install nylas/nylas-cli/nylas

# Autenticar sua conta Outlook
nylas auth login --provider microsoft

# Enviar um e-mail
nylas email send \
  --to recipient@example.com \
  --subject "Quarterly report" \
  --body "See the attached spreadsheet."

# Listar e-mails recentes para verificar a entrega
nylas email list --limit 5

Os mesmos comandos funcionam para contas Gmail, Yahoo, iCloud, Exchange e IMAP. Se você precisa das configurações SMTP específicas do Outlook para um sistema legado que exige SMTP puro, use a tabela de referência rápida no topo desta página. Para todo o resto, pular o SMTP elimina a complexidade de autenticação que o fim do Basic Auth da Microsoft introduziu.

Próximos passos