Согласно документации Я могу получить письмо с сообщением об ошибке в случае проблем с отправкой, например, в случае испорченного выражения шаблона.В свой запрос я добавил все необходимые поля:
"TemplateErrorReporting": {
"Email": "recipient@gmail.com",
"Name": "recipient name"
}
Я добавил ошибку в шаблон и отправил письмо через API:
client = new MailjetClient(mj_apikey_public, System.getenv("MJ_APIKEY_PRIVATE"), new ClientOptions("v3.1"));
request = new MailjetRequest(Emailv31.resource)
.property(Emailv31.MESSAGES, new JSONArray()
.put(new JSONObject()
.put(Emailv31.Message.FROM, new JSONObject()
.put("Email", "service@test.test")
.put("Name", "Mailjet error handling testing"))
.put(Emailv31.Message.TO, new JSONArray()
.put(new JSONObject()
.put("Email", "dmytro.parkhomenko@test.test")
.put("Name", "passenger 1")))
.put(Emailv31.Message.TEMPLATEID, 66638587)
.put(Emailv31.Message.TEMPLATELANGUAGE, true)
.put(Emailv31.Message.SUBJECT, "Mailjet error handling testing subject")
.put(Emailv31.Message.TEMPLATEERROR_DELIVERY, false)
.put(Emailv31.Message.TEMPLATEERROR_REPORTING, new JSONObject()
.put("Email", "recipient@gmail.com")
.put("Name", "recipient name"))));
response = client.post(request);
В результате я не получил письмо отtemplating-language-error@mailjet.com, как и ожидалось, поэтому управление ошибками шаблонов не работает для меня.