Как передать динамические данные в шаблон электронной почты, разработанный в веб-приложении sendgrid? : - | Sendgrid - PullRequest
14 голосов
/ 25 октября 2010

Я интегрировал почтовый сервис sendgrid с моим примером приложения. & также может отправить электронное письмо пользователю.

Но как передать динамические данные в шаблон электронной почты в веб-приложении sendGrid? Есть ли способ отправить динамические данные на шаблон электронной почты, разработанный на sendgrid?

например Я разработал шаблон приветствия на sendgrid. И я хочу пройти динамические данные для этого шаблона, т. е. имя пользователя, emailId, город и т. д. с использованием Java код? когда какой-либо пользователь зарегистрирован в моем приложении, я хочу отправить приветствие по электронной почте этому пользователю. с информацией о пользователе, как UserName, emailId, город и т.д. через нашу базу данных.

Что делать? Как это сделать?

Ответы [ 2 ]

12 голосов
/ 25 октября 2010

Вместо того, чтобы сосредотачиваться на подстановке с помощью приложения Шаблон электронной почты (что невозможно), вам следует взглянуть на SMTPAPI . Добавив заголовок X-SMTPAPI в ваше сообщение, вы можете

  1. Управление настройками вашей учетной записи SendGrid (т.е. изменение настроек фильтра на лету )
  2. Отправка до 1000 адресов получателей в одной транзакции SMTP ( SMTPAPI To: Array )
  3. Выполнение замены слияния в теле письма ( SMTPAPI Sub: Associative Array )

Наконец, предполагается, что вы отправляете электронную почту напрямую через наш SMTP или Web API. Если вы используете нашу новостную рассылку, замена, подобная слиянию почты, возможна при использовании пользовательских тегов в шаблоне новостной рассылки.

- Джо

SendGrid

1 голос
/ 13 июля 2017

Я думаю возможно теперь , добавив ключ substitutions в опции. Я также добавил ключ to, потому что он является обязательным.

$request_body = json_decode('{
  "personalizations": [
    {
      "substitutions": {
        "-first_name-": "John",
        "-last_name-": "Doe"
      },
      "to": [
        {
          "email": "john.doe@example.com",
          "name": "John Doe"
        }
      ]
    }
  }
}');
$response = $sg->client->mail()->send()->post($request_body);
echo $response->statusCode();
echo $response->body();
print_r($response->headers());

Шаблон в Sendgrid выглядит так:

Dear -first_name- -last_name-,

Foo bar...

Kind Regards
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...