Como migrar do Dyn Email Delivery para o SendGrid
Publicados: 2016-11-23Com a recente notícia de que a Dyn está sendo adquirida pela Oracle para seu negócio de gerenciamento de DNS, as pessoas têm procurado soluções totalmente focadas em e-mail. Nossa equipe teve um aumento no número de perguntas sobre como migrar da entrega de e-mail Dyn para o SendGrid, então decidimos montar este guia.
Se você quiser dar uma olhada antes de começar, confira a documentação do SendGrid. A Sala de Aula é um ótimo lugar para começar a aprender sobre e-mail antes de mergulhar na referência e nos detalhes da API.
Desde o início, somos uma empresa que prioriza a API e somente e-mail, e você verá isso refletido em nossos produtos. Nosso endpoint de e-mail HTTP, webhooks, SMTP e API sem e-mail são essenciais para nossos negócios, e você verá isso refletido em seus recursos. Este guia terá como objetivo fornecer o básico de como configurar o SendGrid, destacando recursos úteis que seu provedor atual não possui.
Obtendo uma chave de API
Primeiro você precisará de uma conta SendGrid. Em seguida, você deve criar uma chave de API que usará para enviar. Vá para Configurações -> Chaves de API ou use este link. Uma prática recomendada do SendGrid e de segurança é usar uma chave de API diferente para cada um dos seus diferentes aplicativos. As chaves de API têm permissões granulares, para que você possa ativar ou desativar o acesso de leitura ou gravação para endpoints individuais. Certifique-se de que a chave de API que você criou tenha acesso total ao Mail Send . (Observação: sua conta deve passar pelo provisionamento antes que você possa criar uma chave de API.)
Bibliotecas de API
Enquanto a Dyn fornece SDKs oficiais em Python e PHP, temos sete bibliotecas de API com suporte oficial para facilitar a integração para nossos clientes. Se você estiver reescrevendo qualquer código ou refatorando como se comunica com seu ESP como parte de sua migração, agora é um bom momento para avaliar essas bibliotecas:
- sendgrid-csharp – Biblioteca oficial C#
- sendgrid-go – Biblioteca oficial do Go
- sendgrid-java – Biblioteca Java oficial
- sendgrid-nodejs – Biblioteca oficial do NodeJS
- sendgrid-php – Biblioteca oficial do PHP
- sendgrid-python – Biblioteca oficial do Python
- sendgrid-ruby – Biblioteca oficial do Ruby
SMTP
Se você estiver enviando via SMTP, há algumas diferenças que você deve conhecer. Primeiro, você não precisa se preocupar em usar um servidor SMTP específico com base no tamanho da sua mensagem, como o Dyn exige. Também aceitamos mensagens de até ~19,5 MB versus o limite de 10 MB da Dyn. Para autenticar, forneça a string 'apikey' como nome de usuário SMTP e use sua chave de API como senha. Em seguida, aponte seu nome de host para smtp.sendgrid.net .
Também oferecemos opções de portas adicionais em comparação com Dyn. Você pode se conectar usando SMTP via não criptografado ou TLS nas portas 25, 2525 e 587. Você também pode se conectar via SSL na porta 465. Em geral, recomendamos a porta 587, pois ela tende a resultar em menos problemas com provedores de hospedagem.
O mecanismo para personalizar o e-mail enviado via SMTP é o nosso cabeçalho X-SMTPAPI. Esse cabeçalho permitirá que você defina substituições de chave/valor, envie solicitações de estilo de mala direta em lote e controle filtros (como rastreamento de cliques) que estão ativos para seu envio. Você pode agrupar e-mails por categoria ou rastrear metadados por e-mail com unique_args. Esses são recursos poderosos que podem reduzir seu tempo de envio e a quantidade de largura de banda necessária para suas transações de e-mail, e vale a pena explorar.
HTTP
O endpoint principal para enviar e-mail é o endpoint mail/send. As solicitações para esse endpoint são autenticadas por meio de um cabeçalho de autorização com sua chave de API apresentada como um token de portador. Você pode encontrar um exemplo mais detalhado em nossos documentos.
Comparado com a API HTTP da Dyn, nosso endpoint oferece mais recursos para permitir que você personalize e gerencie seus destinatários e até envie várias mensagens diferentes em uma única solicitação.
As personalizações permitem definir destinatários e metadados para cada mensagem, como valores de substituição para personalizar conteúdo ou custom_args para associar mensagens a IDs de usuário ou números de pedido. Há vários exemplos de personalizações para casos de uso comuns. Você também pode encontrar chamadas de exemplo cURL.
Recursos como rastreamento de cliques são configurados por meio dos parâmetros tracking_settings e mail_settings. Você também pode agendar envios com até 72 horas de antecedência usando o parâmetro “send_at”.
Também facilitamos muito a adição de anexos à sua solicitação de API. Basta codificar seu arquivo como uma string Base64 e incorporá-lo diretamente na carga JSON junto com as informações de conteúdo MIME. Você pode ler mais sobre como incluir anexos na seção a seguir de nossa Sala de aula de documentação.
Webhooks
O SendGrid fornece dois webhooks: o Event Webhook para postar eventos de e-mails em tempo real, como cancelamentos de assinatura, devoluções, etc., e o Inbound Parse Webhook para receber e-mails e respondê-los programaticamente.
Esses recursos não estão disponíveis no Dyn, mas podem ser ótimos para adicionar automação adicional ao seu gerenciamento de e-mail. Vale a pena dar uma olhada quando você começar a configurar.
Endpoints de API que não são de e-mail
Para endpoints de API que não enviam e-mail, confira a visão geral da API v3. Usamos métodos HTTP intuitivos e códigos de resposta na maioria dos casos e aplicamos limites de taxa para chamadas. A API v2 está obsoleta, embora não haja um cronograma para parar de oferecer suporte a ela. Todas as novas integrações devem preferir v3. A autenticação da API v3 é realizada por um cabeçalho de autenticação com um token de portador.
Campanhas de marketing
Outro recurso que oferecemos é uma plataforma robusta de campanhas de marketing, permitindo que você gerencie suas listas, crie segmentos dinâmicos, faça upload de seus ativos e crie seu modelo de email com um editor visual, realize testes A/B automáticos e muito mais. E é claro que também existe uma API aberta por trás de todos esses recursos.
Algumas perguntas frequentes
P: Vocês oferecem suporte a modelos para emails transacionais?
R: Sim — e eles são dinâmicos! Os modelos transacionais do SendGrid apresentam suporte nativo para a sintaxe do Handlebars. Além de substituição e substituições básicas, você pode usar enumerações/iterações sobre listas, aproveitar condicionais e muito mais. Para saber mais, clique aqui.
P: Existe uma sandbox ou uma maneira de testar meus e-mails sem enviá-los?
R: Você pode habilitar o modo sandbox ao enviar via HTTP. Há também um endereço de “pia” que você pode usar para testar.
P: É possível transferir meu endereço IP/reputação do remetente para o SendGrid?
R: Não podemos migrar um IP ou reputação, mas podemos ajudar a preparar um novo IP para você automaticamente.
P: O SendGrid oferece suporte a TLS imposto ?
R: Absolutamente. Você pode exigir que os servidores de recebimento ofereçam suporte a TLS e descartem mensagens que vão para servidores que não estão em conformidade.
P: Posso permitir que meus destinatários definam os tipos de e-mails que desejam receber?
R: Sim. Dar aos seus destinatários mais controle sobre seus emails permite que você envie emails que as pessoas desejam, o que é melhor para todos. Confira os grupos de cancelamento de inscrição para obter mais informações.
Se estiver interessado em migrar para o SendGrid, você pode encontrar mais informações em sendgrid.com/pricing.