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']);