Como deletar contas de e-mail em lote via API Skymail
Funcionamento do Script de Exclusão
-
O script solicita ao usuário o token de autenticação.
-
Pede o caminho do arquivo CSV contendo os e-mails.
-
Verifica se o arquivo informado existe.
-
Confirma se o usuário deseja realmente excluir as contas listadas.
-
Para cada e-mail no arquivo, o script faz uma requisição DELETE na API.
-
Exibe mensagens indicando o sucesso ou falha da exclusão de cada conta.
-
Finaliza o processo informando que a solicitação foi concluída.
Este script em PowerShell permite a exclusão de contas de e-mail na Skymail por meio da API . O script lê uma lista de endereços de e-mail a partir de um arquivo CSV e realiza a exclusão de cada conta listada.
Antes de iniciar, é importante que o usuário que executará as ações deste guia atenda aos seguintes pré-requisitos:
- Possuir uma conta ativa no painel de controle da Skymail.
- Ter conhecimento em PowerShell.
- Ter conhecimento em Excel.
Antes de começar, faça o download do Script.zip disponível ao final deste guia. Esse arquivo contém dois scripts em PowerShell, que podem ser executados em qualquer máquina Windows, além de dois arquivos Excel em formato .csv com exemplos de como a lista de contas a serem deletadas deve ser estruturada.
Agora, vamos ao processo. Primeiro, abra o PowerShell como Administrador e execute o comando Get-ExecutionPolicy
. Este comando verifica qual é a política de execução de scripts definida no seu PowerShell:
PS C:\Windows\system32> Get-ExecutionPolicy
RemoteSigned
No meu caso, a política de execução está configurada como RemoteSigned. Vamos alterá-la para Bypass para permitir a execução dos scripts. Para isso, execute o comando Set-ExecutionPolicy Bypass
e, quando o PowerShell solicitar uma confirmação, escolha a opção A (Sim para Todos) e pressione Enter:
PS C:\Windows\system32> Set-ExecutionPolicy Bypass
Alteração da Política de Execução
A política de execução ajuda a proteger contra scripts não confiáveis. A alteração da política de execução pode
implicar exposição aos riscos de segurança descritos no tópico da ajuda about_Execution_Policies em
https://go.microsoft.com/fwlink/?LinkID=135170. Deseja alterar a política de execução?
[S] Sim [A] Sim para Todos [N] Não [T] Não para Todos [U] Suspender [?] Ajuda (o padrão é "N"): A
PS C:\Windows\system32>
Pronto, a política foi alterada. Agora, vamos prosseguir. O próximo passo é criar o token privado do usuário no painel. Para isso, utilizaremos o script generate_skymail_api_token.ps1. No PowerShell, executado como Administrador, navegue até o diretório onde o script está localizado e execute-o com o comando: .\generate_skymail_api_token.ps1
.
PS V:\API> .\generate_skymail_api_token.ps1
O script solicitará seu nome de usuário e senha do painel de controle da Skymail. Esses dados serão utilizados para autenticar e gerar o token privado.
Digite seu nome de usuário e senha quando solicitado. O script retornará o primeiro token privado JTI. Copie esse token e armazene-o em um local seguro.
PS V:\API> .\generate_skymail_api_token.ps1
Digite seu usuario: SeuUsuarioDoPainelAqui
Digite sua senha: ********
Seu Token JTI: d2d98068b03f36267624eefad79167b20
PS V:\API>
Agora, acesse o painel de controle da Skymail. Em seguida, clique em Minha Conta e selecione Configurações da Conta, localizado no canto superior direito da tela.
Em seguida, clique em Interface API e copie a chave privada da sua organização. Certifique-se de armazená-la em um local seguro.
O próximo passo é gerar o token de autorização, este passo só deve ser efetuado apenas uma vez, este mesmo token pode ser utilizado sempre que necessário, está atrelado ao usuário do painel que foi utilizado para criá-lo, vai funcionar para sempre desde que o usuário esteja ativo.
Com a chave privada e o primeiro token privado em mãos, acesse o site JWT.IO. Neste site, vamos gerar o token de autorização principal.
- HEADER: Não altere nenhuma configuração nesta seção.
-
PAYLOAD: Insira o token privado gerado anteriormente no PowerShell igual exemplo abaixo.
{
"jti": "substitua pelo token gerado no powershell"
} - VERIFY SIGNATURE: Coloque a chave privada que você copiou do painel no passo anterior.
- Marque a opção secret base64 encoded.
O resultado será exibido na seção Encoded. Este é o token principal de autorização que utilizaremos para as chamadas da API. Copie-o e armazene-o em um local seguro.
Estrutura do Arquivo CSV
O arquivo CSV é simples, onde cada linha contém um único endereço de e-mail. Exemplo:
Agora, com o token principal de autorização e o arquivo contendo as contas em mãos, vamos prosseguir com a execução.
No PowerShell, navegue até o diretório onde o script está localizado e execute o comando: .\powershell_skymail_delete_api.ps1
.
PS V:\API> .\powershell_skymail_delete_api.ps1
O script solicitará o token de autorização principal e o caminho para o arquivo .csv. O caminho deverá ser absoluto inclusive com a extensão do arquivo, nesse caso .csv.
PS V:\API> .\powershell_skymail_delete_api.ps1
Digite seu token: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJkMmQ5ODA2OGIwM2YzNj
Digite o caminho do CSV: V:\API\deletar.csv
Irá aparecer uma notificação para confirmar se o usuário deseja realmente excluir as contas listadas.
Opção S para sim e N para não:
Selecionei a opção S e confirmei para deletar as contas
Pronto, contas deletadas com sucesso!