webmasterskaya / php-unisender-api
Requires
- php: ^7.4 || ^8.0
- ext-json: *
- nyholm/psr7: ^1.8
- psr-discovery/http-client-implementations: ~1
- psr-discovery/log-implementations: ~1
- psr/http-client: ~1
- psr/log: ~1
This package is auto-updated.
Last update: 2024-11-28 17:19:31 UTC
README
PHP API для интеграции сервиса для рассылок Unisender по API. Интеграция с Unisender API значительно упрощает решение задач по email-маркетингу, позволяет полностью абстрагироваться от сетевого уровня и работать непосредственно с методами API.
Unisender API — это специальный интерфейс для разработчиков, который позволяет интегрировать возможности электронной рассылки практически с любым открытым веб-сервисом.
API для массовых email-рассылок позволяет управлять списками контактов, создавать и отправлять разные типы сообщений, смотреть статистику, а также предоставляет возможности для работы партнеров.
Пользоваться API можно бесплатно на любом аккаунте. Чтобы получить доступ к API для email-рассылок нужен ключ, который можно скопировать в личном кабинете.
DISCLAIMER
Сколько решений для работы с http api вы знаете? Можно бесконечно перечислять библиотеки, которые делают одно и то же: guzzlehttp/guzzle
, php-http/curl-client
, symfony/http-client
, laminas/laminas-http
и ещё десятки других!
А какое из них используете вы? А какое используют зависимости вашего проекта? Сколько библиотек, для реализации одного и того же PSR вы тянете в свой проект?
В отличие от большинства решений в интернете, эта библиотека не принуждает вас к использованию какой-либо конкретной реализации PSR-18, что делает её гораздо более гибкой и упрощает интеграцию в любое приложение.
Перед началом работы
- Требуется PHP 7.4 или выше.
- Требуется наличие реализации PSR-18 (HTTP Client).
В SDK применяется спецификация PSR-18 (HTTP-client). Это значит, что в вашем проекте должны быть зарегистрированы классы, реализующие эту спецификацию (например, Guzzle).
Для автоматического обнаружения зависимостей используются пакеты psr-discovery. Подробнее, об автоматическом обнаружении зависимостей
Установка
Установка осуществляется с помощью пакетного менеджера Composer
composer require webmasterskaya/php-unisender-api
Инициализация
Для начала работы, создайте экземпляр клиента:
$client = new \Webmasterskaya\Unisender\Client(string $api_key[, ?array $options]);
Параметры:
api_key
(string): API-ключ к вашему кабинету. Получить ключ можно в личном кабинете.options
(array): массив с настройками клиента. Опциональное. По-умолчанию - пустой массив. Допустимые поля:lang
(string): язык сообщений сервера API (в данный момент поддерживаетсяru
,en
,ua
). По-умолчанию -ru
.
Названия методов SDK совпадает с методами API, которые описаны в документации.
Доступные методы
-
Работа со списками контактов
-
Создание и отправка сообщений
-
Получение статистики
-
Работа с шаблонами
-
Работа с дополнительными полями и метками
-
Работа с дополнительными полями и метками
-
Работа с заметками
Автоматическое обнаружение зависимостей
Ознакомиться со списком автоматически обнаруживаемых библиотек можно по ссылкам ниже:
Если в списке автоматического обнаружения нет библиотеки, используемой на вашем проекте, то её нужно зарегистрировать самостоятельно. Подробнее, о ручной регистрации зависимостей
Ручная регистрация зависимостей
Пример регистрации HttpClient в Bitrix
\PsrDiscovery\Implementations\Psr18\Clients::add( \PsrDiscovery\Entities\CandidateEntity::create( 'bitrix/main', '~23', static function (string $class = '\Bitrix\Main\Web\HttpClient') { return new $class; } ) );
Пример регистрации HttpClient в Joomla
\PsrDiscovery\Implementations\Psr18\Clients::add( \PsrDiscovery\Entities\CandidateEntity::create( 'joomla/http', '~3', static function (string $class = '\Joomla\Http\Http') { return new $class; } ) );