Mandrill все? Як я шукав і знайшов заміну 2 прекрасні альтернативи Мандрилу

TL;DR: Mandrill захотів підняти ціни в 4 рази. Вони знайшли спосіб, через інтеграцію з MailChimp.

У лютому цього року, як грім серед ясного неба, прийшов лист від Mandrill про те, що з 27-го квітня він перестає існувати як незалежний сервіс і тепер, щоб їм користуватися потрібно буде інтегрувати свій Mandrill акаунт у платний акаунт MailChimp. Саме платний, нехай навіть і найдешевший. Ось як виглядає цінник MailChimp:



Нагадаю, що раніше Mandrill був безкоштовним для невеликих проектів до 12.000 листів в місяць (близько 400 в день). Зараз же як мінімум $20 + скільки напосылаешь листів.

«От негідники!» — подумав я про себе і пішов гуглити і тестувати альтернативи, бо мені як користувачу неприйнятно таке ставлення з боку сервісу.



Детально розглянуті в статті альтернативи:

  • MailGun — популярна
  • SparkPost — не така популярна, але ще краще
У обох варіантів є свої переваги.




Альтернатива # 1: MailGun The Email Service For Developers
  • 10,000 безкоштовних емайлов в місяць
  • Наступні 500,000 — $0.00050 за штуку
  • Наступні 1,000,000 — $0.00035
  • Наступні 5,000,000 — $0.00015
  • Всі решта будуть за $0.00010

Прайсинг досить простий і без підводних каменів.

Тепер що стосується процесу інтеграції. Тут і далі в статті я буду дивитися на світ очима PHP розробника, нехай пробачать мене інші спільноти :)

MailGun люблять і часто інтегрують підтримку в фреймворки (наприклад, Laravel) за відмінний API. Для того щоб його спробувати достатньо зареєструватись і curl-му звернутися до endpoint-y зі своїм API ключем:
curl -s --user 'api:key-3ax6xnjp29jd6fds4gc373sgvjxteol0' \
https://api.mailgun.net/v3/samples.mailgun.org/messages \
-F from='Excited User <excited@samples.mailgun.org>' \
-F to='devs@mailgun.net' \
-F subject='Hello' \
-F text='Testing some Mailgun awesomeness!'

Для PHP на гітхабі лежить офіційна бібліотека mailgun-php.

Панель управління містить зручний dashboard і логи всіх листів:



Є вебхуки для реагування на різні події:



Для деяких своїх проектів я зупинився саме на Майлгане. 10,000 безкоштовних листів на місяць вистачає за очі. У випадку з Laravel інтеграція займає півгодини, з яких 5 хв ви витрачаєте на вказівку API ключа і 25 хв на тестування :)




Альтернатива # 2: SparkPost — Better Email Delivery for Better Customer Engagement
100,000 безкоштовних емайлов в місяць (це в 10 разів більше ніж у MailGun).



З невідомих мені причин, цей сервіс не такий популярний і дізнався я про неї зовсім випадково — з коментів до якогось посаді.

Крім 100 тисяч безкоштовних листів у нього є ще одна кілер-фіча — subaccounts, яку вони запилили два тижні зазад.

Subaccounts це коли ви кожного свого користувачеві виділяєте подаккаунт з незалежної репутацією. Це дає багато переваг. По-перше, ви можете подивитися логи по кожному подаккаунту окремо. По-друге, незалежна репутація подаккаунтов дозволяє застосовувати ті чи інші заходи для користувачів вашого проекту в залежності від їх «карми» :)

Для мого проекту масових email-листівок і запрошень Subaccounts API — життєво необхідна функціональність для завчасного виявлення та блокування спамерів.

API у них такий же чудовий як і у MailGun і використовувати його можна як завгодно, хоч з командного рядка:

curl -XPOST \
https://api.sparkpost.com/api/v1/transmissions \
-H "Authorization: <YOUR API KEY>" \
-H "Content-Type: application/json" \
-d '{"content": {"з": "testing@sparkpostbox.com", "subject": "Oh hey", "text":"Testing SparkPost - the most awesomest email service in the world"}, "recipients": [{"address": "developers+curl@sparkpost.com"}]}' 

Інтеграція з PHP відбувається за допомогою офіційної open source бібліотеки php-sparkpost і не викликає ніяких труднощів:

use SparkPost\SparkPost;
use GuzzleHttp\Client;
use Ivory\HttpAdapter\Guzzle6HttpAdapter;

$httpAdapter = new Guzzle6HttpAdapter(new Client());
$sparky = new SparkPost($httpAdapter, ['key'=>'<YOUR API KEY>']);

$results = $sparky->transmission->send([
'from'=>'testing@sparkpostbox.com',
'html'=>'<html><body><p>Testing SparkPost - the world\'s most awesomest email service!</p></body></html>',
'subject'=> 'Oh hey!',
'recipients'=>[
['address'=>['email'=>'developers+php@sparkpost.com']]
]
]);


Крім того, слоган SparkPost і дані eDataSource говорять про гарну вивозили:



UPDATE: SparkPost офіційно недоступний з Росії та України. Проблема вирішується реєстрацією через шлюз, наприклад «з Німеччини» (thx Softer).



Наприкінці зазначу, що ми розглядали й інші сервіси, такі як:

Ці сервіси з тієї чи іншої причини нам не підходили і я їх не розглядаю детально в статті, але може бути хтось знайде те, що йому потрібно якраз в одному з них.

До кінця життя старого доброго Мандрила залишилося менше місяця, сподіваюся що цим постом я трохи допоміг визначитися з альтернативами для переходу.



Ну і опитування наостанок. Якщо ви не користувач Mandrill, будь ласка, натисніть «Утриматися».

Я користувач Mandrill і я...

/>
/>


<input type=«radio» id=«vv72378»
class=«radio js-field-data»
name=«variant[]»
value=«72378» />
як раз шукаю альтернативи для переходу, дякую за статтю!
<input type=«radio» id=«vv72380»
class=«radio js-field-data»
name=«variant[]»
value=«72380» />
вже перейшов на <alternative_service>
<input type=«radio» id=«vv72382»
class=«radio js-field-data»
name=«variant[]»
value=«72382» />
залишуся з Mandrill, тому що немає часу щось міняти в коді проекту
<input type=«radio» id=«vv72384»
class=«radio js-field-data»
name=«variant[]»
value=«72384» />
залишуся з Mandrill, тому що я не проти заплатити додаткові $20 за хороший сервіс

Проголосувало 36 осіб. Утрималося 35 осіб.


Тільки зареєстровані користувачі можуть брати участь в опитуванні. Увійдіть, будь ласка.


Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.