Я использую Mailjet для добавления подписчика на рассылку.
Как проверить, что электронная почта была подписана или нет.
Я использую следующий метод раньше, но не проверяю и не возвращаю письмо, на которое была подписана, или не просто обновляю его и возвращаю ответ успешно.
Вот мой код:
$mj = new \Mailjet\Client(MJ_APIKEY_PUBLIC, MJ_APIKEY_PRIVATE);
// CREATE CONTACT AND SUBSCRIBE AT ONCE
// Adding User into Mailjet Contact as Subscriber for Newsletter
$body = [
'Email' => $POST['email'],
'Name' => $POST['name'],
'Action' => "addnoforce",
];
$contactlistID = 3;
$response = $mj->post(\Mailjet\Resources::$ContactslistManagecontact, ['id' => $contactlistID, 'body' => $body]);
// Read the response
if ($response->success()) {
$feedback = array('type' => 'success', 'msg' => 'Your email has been registered succesfully.');
}
Надеюсь, что есть решение для этого и спасибо огромное.
Ответ содержит $response->success
детали, вы можете легко просмотреть их с:
$response->getData()
array(1) {
[0]=>
array(5) {
["ContactID"]=>
int(1682906939)
["Email"]=>
string(14) "[email protected]"["Action"]=>
string(10) "addnoforce"["Name"]=>
string(13) "Test"["Properties"]=>
array(0) {
}
}
}
Если вам нужно проверить позже, вы можете позвонить с Resources::$ContactGetcontactslists
$response = $mailjet->get(Resources::$ContactGetcontactslists, [
'id' => 'email or id'
]);
var_dump($response->getData());
var_dump($response->success());
var_dump($response->getStatus());
Который вернется
array(1) {
[0]=>
array(3) {
["IsActive"]=>
bool(true)
["IsUnsub"]=>
bool(false)
["ListID"]=>
int(1)
}
}
bool(true)
int(200)
Других решений пока нет …