Sendgrid-nodejs: Envie e-mail para vários destinatários para que todos vejam apenas seus e-mails no cabeçalho PARA

Criado em 6 jan. 2017  ·  4Comentários  ·  Fonte: sendgrid/sendgrid-nodejs

Olá,

Como posso enviar e-mail individualmente com uma chamada de API usando Web API v3 para que cada destinatário veja apenas seu endereço na caixa PARA? Atualmente, estou enviando e-mails usando nodejs, Web API v3 e dependência de sendgrid, mas o problema é que os usuários obtêm toda a lista de destinatários na caixa TO. Aqui está o pedido:

var request = sg.emptyRequest({
        method: 'POST',
        path: '/v3/mail/send',
        body: {
            personalizations: [
                {
                    to: recepientEmails,
                    substitutions: emailTemplate.substitutions
                }
            ],
            from: {
                email: '[email protected]',
                name: 'Dorotea from AWW'
            },
            template_id: emailTemplate.template_id,
            categories: emailTemplate.categories
        }
    });

Eu li que com a API da Web v2 eu precisaria usar o cabeçalho x-smtp para que o e-mail fosse enviado para cada destinatário individualmente aqui na primeira linha da tabela.
https://sendgrid.com/docs/API_Reference/Web_API/mail.html

E eu li que tudo, desde Web API v2 com SMTP, pode ser feito com Web API v3 usando apenas uma solicitação aqui.
https://sendgrid.com/docs/Classroom/Send/v3_Mail_Send/how_to_migrate_from_v2_to_v3_mail_send.html

Para encerrar, quero fazer uma chamada API com Web API v3 para enviar e-mail para vários endereços e quero que cada e-mail tenha apenas aquele e-mail do destinatário no cabeçalho TO.

Tudo de bom,
Zvonimir

help wanted question

Comentários muito úteis

Olá @ zvone187 ,

Eu não sei se você já descobriu como fazer isso, mas este se parece com o que você está tentando alcançar.

Você deve adicionar uma personalização diferente para cada destinatário. Deve ser traduzido para algo assim no código:

// This assumes every recipient gets the same substitutions. If not, just add the right substitution for each email
const personalizations = recipientEmails.map(email => ({
    to: [{ email }],
    substitutions: emailTemplate.substitutions
}));
const request = sg.emptyRequest({
    method: 'POST',
    path: '/v3/mail/send',
    body: {
        personalizations,
        from: {
            email: '[email protected]',
            name: 'Dorotea from AWW'
        },
        template_id: emailTemplate.template_id,
        categories: emailTemplate.categories
    }
});

Não tenho certeza de qual é o limite atual para a quantidade de destinatários para os quais você pode enviar em uma solicitação.

Todos 4 comentários

Olá @ zvone187 ,

Eu não sei se você já descobriu como fazer isso, mas este se parece com o que você está tentando alcançar.

Você deve adicionar uma personalização diferente para cada destinatário. Deve ser traduzido para algo assim no código:

// This assumes every recipient gets the same substitutions. If not, just add the right substitution for each email
const personalizations = recipientEmails.map(email => ({
    to: [{ email }],
    substitutions: emailTemplate.substitutions
}));
const request = sg.emptyRequest({
    method: 'POST',
    path: '/v3/mail/send',
    body: {
        personalizations,
        from: {
            email: '[email protected]',
            name: 'Dorotea from AWW'
        },
        template_id: emailTemplate.template_id,
        categories: emailTemplate.categories
    }
});

Não tenho certeza de qual é o limite atual para a quantidade de destinatários para os quais você pode enviar em uma solicitação.

@iamtheib obrigado pela resposta. Recebi uma resposta de Sengrid. Sim, isso é exatamente o que precisa ser feito.

Funciona, mas que tal enviar diferentes anexos para diferentes destinatários?
Preciso enviar vários e-mails com o mesmo modelo, mas com diferentes personalizações e um arquivo de anexo diferente para cada usuário.

@iamtheib ,

Obrigado por ajudar! Por favor, preencha este formulário e nós lhe enviaremos alguns brindes :)

Obrigado pela atenção,

Elmer

Esta página foi útil?
0 / 5 - 0 avaliações