nikitanp/alfacrm-api-php

v2.0.0 2023-03-04 22:28 UTC

This package is auto-updated.

Last update: 2024-11-05 02:08:00 UTC


README

Latest Version on Packagist

Описание

Данный пакет является 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']);