ddlzz / amocrm-api-client
An AmoCRM API library
Installs: 5 903
Dependents: 0
Suggesters: 0
Security: 0
Stars: 15
Watchers: 2
Forks: 11
Open Issues: 3
Requires
- php: >=5.6
Requires (Dev)
- php: >=7.0
- friendsofphp/php-cs-fixer: ^2.11
- mikey179/vfsstream: 1.6.*
- php-mock/php-mock: 2.0.*
- phpunit/phpunit: 6.4.*
- roave/security-advisories: dev-master
- squizlabs/php_codesniffer: 3.*
README
Библиотека для работы с АПИ amoCRM.
Установка
CLI:
composer require ddlzz/amocrm-api-client
composer.json
:
{
"require": {
"ddlzz/amocrm-api-client": "0.*"
}
}
Быстрый старт
<?php require __DIR__ . '/../vendor/autoload.php'; $domain = 'testdomain'; $login = 'test@test.com'; $hash = md5('test'); try { $credentials = new \ddlzz\AmoAPI\CredentialsManager($domain, $login, $hash); /** @var \ddlzz\AmoAPI\Client $request */ $request = \ddlzz\AmoAPI\ClientFactory::create($credentials); // Если вы используете другой домен, например amocrm.com, или протокол http, // например работая с dev-сервером amocrm, можете указать эти параметры в настройках: // $settings = new \ddlzz\AmoAPI\SettingsStorage(); // $settings->setScheme('http'); // $settings->setDomain('amocrm.saas'); // И передать объект SettingsStorage нашему клиенту // $request = \ddlzz\AmoAPI\ClientFactory::create($credentials, $settings); // Создадим модель сущности $lead = new \ddlzz\AmoAPI\Model\Amo\Lead(); // Заполним модель данными. Формат заполнения такой: $lead['name'] = 'New lead'; $lead['created_at'] = time(); // Обязательные поля created_at и modified_at будут заполнены // автоматически, если не указывать их явно $lead['sale'] = 150000; // Аналог из старого АПИ - price. Вы можете использовать как старые, // так и новые варианты названия поля. Старые будут преобразованы в новые далее при валидации. // Из-за того, что для добавления и редактирования разные поля будут являться обязательными, // валидация и заполнение сущности данными происходит позже, в методе клиента add либо update. $result = $request->add($lead); echo $result; } catch (Exception $e) { echo $e->getFile() . ': ' . $e->getMessage(); }
Возможности
- Библиотека работает с новым API, но понимает также названия полей из старой документации.
- По умолчанию используется домен amocrm.ru, также вы можете указать домен amocrm.com или dev-сервер amocrm в настройках.
- Пауза между запросами в рамках одного обращения к клиенту.
Сущности, с которыми на данный момент работает библиотека:
- Сделки (добавление, редактирование)
- Контакты (добавление, редактирование)
- Компании (добавление, редактирование)