IMAP, POP e SMTP

Para clientes que não são do Gmail, o Gmail é compatível com os protocolos padrão IMAP, POP e SMTP. Os servidores IMAP, POP e SMTP do Gmail oferecem suporte à autorização com o protocolo OAuth 2.0 padrão do setor.

Protocolo

O IMAP, o POP e o SMTP usam a Camada de autenticação e segurança simples (SASL) padrão, usando comandos IMAP AUTHENTICATE, POP AUTH e SMTP AUTH integrados para autenticar usuários. O mecanismo SASL XOAUTH2 permite que os clientes forneçam credenciais do OAuth 2.0 para autenticação. A documentação do protocolo SASL XOAUTH2 descreve o mecanismo SASL XOAUTH2 em detalhes, e bibliotecas e exemplos estão disponíveis para implementar o protocolo.

As conexões de entrada com o servidor IMAP em imap.gmail.com:993 e o servidor POP em pop.gmail.com:995 exigem SSL. O servidor SMTP de saída, smtp.gmail.com, é compatível com TLS. Se o cliente começar com texto simples antes de emitir o comando STARTTLS, use a porta 465 (para SSL) ou 587 (para TLS).

Limites de duração da sessão

As sessões do POP no Gmail duram até aproximadamente sete dias. As sessões do IMAP do Gmail duram até aproximadamente 24 horas. Se você autenticou a sessão usando credenciais do OAuth, ela dura aproximadamente o período de validade do token de acesso usado (geralmente uma hora). Uma sessão nesse contexto é uma conexão TCP contínua.

Quando o tempo expira e a sessão termina, o Gmail fecha a conexão com uma mensagem informando que a sessão expirou. Depois disso, o cliente pode se reconectar, autenticar novamente e continuar. Se você estiver usando o OAuth, verifique se o token de acesso usado é válido. Se você tentar usar um token de acesso com mais de uma hora, ele poderá ser inválido.

Bibliotecas e amostras

Para facilitar, os desenvolvedores costumam acessar e-mails usando IMAP ou POP e enviar e-mails usando SMTP com bibliotecas IMAP e SMTP atuais. Desde que essas bibliotecas ofereçam suporte à camada de autenticação e segurança simples (SASL), elas serão compatíveis com o mecanismo SASL XOAUTH2 aceito pelo Gmail.

Além da documentação do protocolo SASL XOAUTH2, talvez você também queira ler Como usar o OAuth 2.0 para acessar as APIs do Google e saber mais sobre a implementação de um cliente OAuth 2.0.

A página Bibliotecas e exemplos do OAuth 2.0 fornece exemplos de código em várias linguagens conhecidas usando o mecanismo SASL XOAUTH2 com IMAP ou SMTP.