bothelpio / bothelp-php-sdk
PHP Client for Bothelp.io API
dev-master
2023-04-07 08:23 UTC
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^7.5
- webmozart/assert: ^1.11
Requires (Dev)
- ext-curl: *
- friendsofphp/php-cs-fixer: ^3.13
- phpunit/phpunit: ^9.5
This package is auto-updated.
Last update: 2025-06-07 13:42:22 UTC
README
PHP Клиент для работы с Bothelp.io API
📖 Документация по API bothelp по ссылке
📑 Навигация
- Установка
- QuickStart
- Методы
1. Установка
Требования
php >= 7.4
Установка через composer
composer require bothelpio/bothelp-php-sdk
2. QuickStart 🚀
В личном кабинете получаем
client_id
client_secret
Создаем клиента
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); //отправляем произовольный запрос к апи bothelp // get $response = $client->apiRequest('GET', 'subsribers?after=12323'); // patch $response = $client->apiRequest( 'PATCH', 'subsribers/12', [ ['op' => 'replace', 'path' => '/name', 'value' => 'John Doe'] ] ); //etc...
3. Список подписчиков
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; use BothelpSDK\Request\Subscriber\SubscriberFilter; use BothelpSDK\Resource\Subscriber\SubscriberService; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); // создаем сервис для работы с подписчиками $subscriberService = new SubscriberService($client); // ПРИМЕР 1 // получим список всех подписчиков и выведем их имена $list = $subscriberService->list(); foreach($list as $subscriber) { echo $subscriber->getName(); } // ПРИМЕР 2 // получим подписчика по email $filter = new SubscriberFilter(); $filter->setEmail('johnDhoe@example.com'); $list = $subscriberService->list($filter); if ($list->count() > 0) { $subscriber = $list[0]; print_r($subscriber->getRawData()); } // ПРИМЕР 3 // получим список всех подписчиков после определенной даты // и пройдемся по постраничке $filter = new SubscriberFilter(); $filter->setCreatedAfter(1662126165); $page1list = $subscriberService->list($filter); if ($page1list->hasNext()) { // есть еще страницы в выдаче? // заберем вторую страницу... $page2List = $subscriberService->list($page1list->getNextFilter()); }
4. Изменение полей подписчика
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; use BothelpSDK\Request\Subscriber\SubscriberId; use BothelpSDK\Resource\Subscriber\SubscriberService; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); // создаем сервис для работы с подписчиками $subscriberService = new SubscriberService($client); // Определим с каким подписчиком будем работать. // по ID подписчика $id = (new SubscriberId())->setId(92); // или по CUID подписчика $id = (new SubscriberId())->setCuid('1et0.2k'); // Вызовем нужные методы // записать телефон $subscriberService->setPhone($id, '+79941111111'); // записать email $subscriberService->setEmail($id, 'hello@bothelp.io'); // записать полное имя $subscriberService->setName($id, 'John Doe'); // записать имя $subscriberService->setFirstName($id, 'John'); // записать фамилию $subscriberService->setLastName($id, 'Doe'); // записать заметки $subscriberService->setNotes($id, 'some notes text... ');
5. Изменение меток подписчика
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; use BothelpSDK\Request\Subscriber\SubscriberId; use BothelpSDK\Resource\Subscriber\SubscriberService; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); // создаем сервис для работы с подписчиками $subscriberService = new SubscriberService($client); // Определим с каким подписчиком будем работать. // по ID подписчика $id = (new SubscriberId())->setId(92); // или по CUID подписчика $id = (new SubscriberId())->setCuid('1et0.2k'); // Вызовем нужные методы // добавим 3 метки пользователю $subscriberService->setTags($id, ['awesome', 'bad', 'best']); // удалить 2 метки у пользователя $subscriberService->removeTags($id, ['bad', 'best']);
6. Изменение customFields подписчика
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; use BothelpSDK\Request\Subscriber\SubscriberId; use BothelpSDK\Resource\CustomField\CustomField; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); // создаем сервис для работы с customField $customFieldService = new CustomField($client); // Установим поле favorite_color в значение blue для подписчика с id = 92 $id = (new SubscriberId())->setId(92); $customFieldService->setField($id, 'favorite_color', 'blue'); // Установим поле Бюджет в значение 7000 для подписчика с cuid = 1et0.2k $id = (new SubscriberId())->setCuid('1et0.2k'); $customFieldService->setField($id, 'Бюджет', '7000');
7. Отправка сообщений
use BothelpSDK\BothelpClient; use BothelpSDK\Config\ClientOptions; use BothelpSDK\Request\Subscriber\SubscriberId; use BothelpSDK\Resource\Message\MessageService; // создаем клиента $options = new ClientOptions( '***YourClientId***', '***YourClientSecret***' ); $client = new new BothelpClient($options); // создаем сервис для работы с сообщениями $messageService = new MessageService($client); // отправим сообщение для подписчика с id = 92 $id = (new SubscriberId())->setId(92); $messageService->send($id, 'hello world'); // отправим сообщение в несколько строк для подписчика с cuid = 1et0.2k $id = (new SubscriberId())->setCuid('1et0.2k'); $content = 'hello' . PHP_EOL; $content .= 'My name api ' . PHP_EOL; $content .= '😂'; $messageService->send($id, $content);
8. Работа с авторассылками
👷 Скоро будет
9. Работа с ботом подписчика
👷 Скоро будет