ufee / amoapi-v4
PHP API client for amoCRM/Kommo (v4) with OAuth, caching, pagination and events
1.3.5
2026-08-14 14:02 UTC
Requires
- php: >=7.4
Requires (Dev)
- phpunit/phpunit: ^9.6
README
Поддерживает OAuth 2.0, кеширование, пагинацию, события, автоматическое обновление токенов, обработку ошибок и работу с любыми сущностями (сделки, контакты, компании, задачи, примечания и др.).
✅ Возможности
- ✅ Поддержка amoCRM/Kommo API v4
- ✅ OAuth 2.0 с автообновлением токенов
- ✅ Хранилище токенов: файлы, Redis, MongoDB + долгосрочные токены
- ✅ Кеширование справочников в файлах и Redis: пользователи, поля, типы задач и т.д.
- ✅ Постраничное извлечение сущностей через
foreachиdo-while - ✅ Обработка событий через
callbacks: отладка, контроль - ✅ Ограничение частоты запросов
- ✅ Поддержка массовых операций
- ✅ Мультиаккаунтность
📦 Установка
composer require ufee/amoapi-v4
⚙️ Быстрый старт
$api = \Ufee\AmoV4\ApiClient::setInstance([ 'domain' => 'yourdomain', 'client_id' => '8a8135d4-31ca-47...', 'client_secret' => 'zMZFNnho8FozhrDzxrbA9xuR9...', 'redirect_uri' => 'https://yoursite.com/auth/callback', 'zone' => 'ru', // или 'com' для Kommo ]); // первичная авторизация (один раз) // $url = $api->oauth->getUrl(); // $api->oauth->fetchToken($_GET['code']); // или долгосрочный токен // $api->oauth->setLongToken($long_token); $leads = $api->leads()->get(); foreach ($leads as $lead) { echo $lead->name . "\n"; }
Подробнее: Конфигурация.
Тесты: docs/tests.md.
📚 Документация
| Раздел | Описание |
|---|---|
| Конфигурация | Клиент, OAuth, кеш, callbacks, мультиаккаунт, произвольные запросы |
| Работа с сущностями | Сервисы, модели, коллекции, пагинация, фильтры, поиск |
| Тесты | Unit / integration, .env, coverage |
Сущности
| Сущность | |
|---|---|
| Параметры аккаунта | account |
| Сделки | leads |
| Неразобранное | unsorted |
| Воронки и этапы сделок | pipelines, pipelineStatuses |
| Причины отказа | lossReasons |
| Контакты | contacts |
| Компании | companies |
| Списки | catalogs |
| Элементы списков | catalogElements |
| Связи сущностей | links |
| Задачи | tasks |
| Поля и группы полей | customFields |
| События | events |
| Примечания | notes |
| Покупатели | customers |
| Статусы и сегменты покупателей | customerSegments |
| Пользователи | users |
| Вебхуки | webhooks |
| Виджеты | widgets |
| Salesbot | bots |
| Подписчики сущности | subscriptions |
| Источники | sources |
| Беседы | talks |
| Файлы (Drive API) | files |