Configurar OAuth no Google Workspace
O Google também não aceita mais senha comum no IMAP para contas corporativas. O caminho é uma conta de serviço com delegação em todo o domínio: um único arquivo de credencial que permite ler as caixas do domínio, sem precisar da senha de ninguém.
O que você vai coletar: um arquivo JSON da conta de serviço. É a única coisa que o MailSync pede em Opções avançadas → Google Workspace.
Isto vale para Google Workspace (domínio próprio, com Admin Console). Para
uma conta @gmail.com comum não existe delegação — veja o fim da página.
Parte 1 — Criar a conta de serviço
- Abra o Google Cloud Console Entre em console.cloud.google.com e crie um projeto (ou use um existente). O nome não importa; ele só guarda a credencial.
- Ative a API do Gmail Em APIs e serviços → Biblioteca, procure por Gmail API e clique em Ativar.
-
Crie a conta de serviço
Em APIs e serviços → Credenciais → Criar credenciais → Conta de serviço.
Nome:
mailsync. Os passos de papéis e usuários podem ficar em branco — esta conta não precisa de papel nenhum no projeto. - Baixe a chave JSON Abra a conta de serviço recém-criada, vá em Chaves → Adicionar chave → Criar nova chave → JSON. O arquivo baixa na hora e não pode ser baixado de novo — guarde-o em lugar seguro.
-
Copie o ID do cliente
Ainda na conta de serviço, na aba Detalhes, copie o ID exclusivo —
um número longo, só dígitos. Ele é o que o Admin Console vai pedir no próximo passo.
(Esse mesmo número está no JSON, no campo
client_id.)
Parte 2 — Autorizar a delegação no Admin Console
Criar a conta de serviço não dá acesso a caixa nenhuma. Quem autoriza é o administrador do domínio, e é aqui que isso acontece.
- Abra o Admin Console admin.google.com, com uma conta de superadministrador do domínio.
- Vá até a delegação em todo o domínio Segurança → Controle de acesso e dados → Controles de API → Gerenciar delegação em todo o domínio.
-
Adicione a conta de serviço
Clique em Adicionar novo e preencha:
- ID do cliente: o número que você copiou.
- Escopos OAuth:
https://mail.google.com/
O escopo tem de ser exatamente https://mail.google.com/,
inclusive a barra no fim. Escopos parecidos, como os de leitura da Gmail API, não
liberam IMAP — e o erro que aparece depois (unauthorized_client) não diz
isso com todas as letras.
Parte 3 — Garantir que o IMAP está ligado
No Admin Console, em Apps → Google Workspace → Gmail → Acesso do usuário final, confirme que o acesso IMAP está habilitado para a unidade organizacional das caixas que serão migradas. Se estiver desligado, o token funciona e a conexão falha — um sintoma confuso que se resolve aqui.
Parte 4 — Preencher no MailSync
-
Abra o lote e vá em Opções avançadas
A seção Google Workspace aparece sozinha quando algum lado usa
imap.gmail.com— que é o servidor a informar nas contas. -
Cole o conteúdo do arquivo JSON
O arquivo inteiro, do
{ao}. Ele é guardado cifrado e não é exibido de volta. - Clique em “Testar token” O MailSync assina um pedido e busca um token em nome de uma caixa do lote. Se voltar erro, ele mostra exatamente o que o Google respondeu.
Erros comuns e o que eles querem dizer
| Mensagem | Causa | Solução |
|---|---|---|
unauthorized_client | A delegação não foi autorizada, o escopo está diferente, ou ainda não propagou | Confira o ID do cliente e o escopo https://mail.google.com/; espere alguns minutos e teste de novo |
invalid_grant | O e-mail da caixa não existe no domínio, ou o relógio do servidor está fora de hora | Confirme o endereço da conta; o JWT vale por poucos minutos e depende do horário correto |
access_denied | A conta de serviço não tem permissão para aquela caixa | Verifique se a caixa pertence ao mesmo domínio da delegação |
invalid_client | JSON incompleto ou de outro projeto | Baixe uma chave nova e cole o arquivo inteiro |
| Token ok, mas a conta reprova no acesso | IMAP desligado para aquela unidade organizacional | Parte 3 desta página |
E se for um Gmail comum, sem Workspace?
Contas @gmail.com pessoais não têm Admin Console e não aceitam delegação.
Nesse caso o caminho é a senha de app:
- Ligue a verificação em duas etapas Em myaccount.google.com/security. Sem ela, o Google não oferece senhas de app.
- Gere uma senha de app Em myaccount.google.com/apppasswords. São 16 letras, mostradas uma vez só.
-
Use como senha comum
Servidor
imap.gmail.com, usuário o endereço completo e, no campo de senha, a senha de app. Siga o guia de migração com IMAP e senha — não precisa de OAuth nenhum.
O Gmail conta as mensagens de um jeito diferente. Uma mensagem com marcador aparece na pasta do marcador e em “Todos os e-mails”. É por isso que o número de mensagens no Gmail costuma ser maior que o da caixa de destino depois da migração — sem que nada tenha se perdido.