nikitanp / alfacrm-api-php
API for AlfaCRM
v2.0.0
2023-03-04 22:28 UTC
Requires
- php: ^7.4|^8.0
- ext-json: *
- psr/http-client: ^1.0
- psr/http-factory: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- guzzlehttp/guzzle: ^7.0
- phpunit/phpunit: ^9.0
- vimeo/psalm: ^5.0
Suggests
- guzzlehttp/guzzle: great http client
README
Описание
Данный пакет является PHP клиентом для REST API AlfaCRM
Клиент использует PSR-18 и PSR-17 для своей работы. Например, можно использовать в качестве http клиента библиотеку guzzlehttp/guzzle и PSR-17 имплементацию для нее http-interop/http-factory-guzzle.
Установка
composer require nikitanp/alfacrm-api-php
Базовые методы для работы
Базовые методы находятся в классе \Nikitanp\AlfacrmApiPhp\Entities\AbstractEntity:
get(int $page = 0, array $filterData = []): arrayВозвращает одну страницу данных с возможностью фильтрацииgetAll(array $filterData = []): \GeneratorВозвращает все сущности с возможностью фильтрации.getFirst(array $filterData = []): arrayВозвращает первый элемент.count(array $filterData = []): intВозвращает количество результатов с указанным фильтром.fields(array $filterData = []): arrayВозвращает возможные поля. Для получения результата берется первый ответ из системы.create(array $entityData): arrayСоздает сущностьupdate(int $entityId, array $updateData): arrayОбновляет сущностьdelete(int $entityId): arrayУдаляет сущность
Пример использования
$apiClient = new \Nikitanp\AlfacrmApiPhp\Client(
$psr18Client,
$psr17RequestFactory,
$psr17StreamFactory
);
$apiClient->setDomain('domain.alfacrm.pro');
$apiClient->setEmail('admin@domain.exaple');
$apiClient->setApiKey('application-api-key');
$apiClient->authorize();
$customer = new \Nikitanp\AlfacrmApiPhp\Entities\Customer($apiClient);
$customer->fields();
$customer->count();
$customer->get();
$customer->getAll();
$customer->getAllArchived();
$customer->create(['customer_data']);
$customer->delete(1);
$customer->update(1, ['customer_data']);