Download the PHP package nabarabane/amocrm without Composer
On this page you can find all versions of the php package nabarabane/amocrm. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download nabarabane/amocrm
More information about nabarabane/amocrm
Files in nabarabane/amocrm
Package amocrm
Short Description Простая обертка для работы с API AmoCRM
License MIT
Informations about the package amocrm
amoCRM API
Простая обертка для работы с API AmoCRM.
Что умеет
- Получать информацию об аккаунте
- Получать список объектов
- Создавать новые объекты
- Работать с кастомными полями
- Работать с вебхуками
На данный момент для запросов доступны следующие объекты:
- Контакт https://developers.amocrm.ru/rest_api/#contact
- Компания https://developers.amocrm.ru/rest_api/#company
- Сделка https://developers.amocrm.ru/rest_api/#lead
- Задача https://developers.amocrm.ru/rest_api/#tasks
- Событие https://developers.amocrm.ru/rest_api/#event
Требования
- PHP >= 5.4
- libcurl на сервере
Установка
Добавьте в блок "require" в composer.json вашего проекта
Или введите в консоли
Подготовка к работе и настройка
Создайте папку "config" в корне пакета, куда положите два файла:
- config@{ваш-домен-в-amocrm}.php
- {ваш-домен-в-amocrm}@{email-пользователя-для-запросов}.key Директория должна быть доступна для записи, туда сохраняются куки, которые необходимы для работы API.
Файл с конфигом используется для хранения номеров кастомных полей из AmoCRM, которые вы будете использовать в своей работе, и должен возвращать ассоциативный массив, например:
Номера полей вашего аккаунта можно получить так:
На страницу будет выведена вся информация об аккаунте.
Выбираете номера нужных полей (номера пользователей, номера кастомных полей сделок и т.д.) и сохраняете в конфиг с понятными вам названиями.
Файл с ключом должен содержать в себе API-ключ выбранного пользователя.
Использование
Получение данных
If-Modified-Since
Вы также можете передать дополнительный параметр "IF-MODIFIED-SINCE", в котором указывается дата в формате D, d M Y H:i:s. При передаче этого параметра будут возвращены сущности, изменённые позже этой даты.
Создание новых объектов
Пример рабочего кода, который покрывает все доступные возможности библиотеки
Мультизагрузка объектов
Есть возможность создавать одновременно несколько объектов одного типа и отправлять их в amoCRM одним запросом
Дебаггинг
В случае ошибки запроса к API, AmoCRM возвращает только номер ошибки, без текстовых пояснений.
Чтобы включить текстовые пояснения для ошибок, передайте в конструктор хендлера "true" третьим параметром:
Теперь вместе с номером ошибки вы будете видеть и что же этот номер означает, и упростите дебаггинг.
Включение этого режима создает дополнительный запрос к диску на чтение файла, где сохранены описания ошибок, поэтому не забудьте отключить дебаггинг в продакшене.
Webhooks
Как настроить аккаунт на работу с вебхуками смотрите здесь.
Чтобы успешно обрабатывать запрос от AmoCRM на ваш сайт, вам нужно создать слушателя событий в файле, на который AmoCRM шлет свои запросы, и определить функции, которые будут вызываться при определенном событии.
Список доступных событий
Сделки
- leads-add Создание сделки
- leads-update Изменение сделки
- leads-delete Удаление сделки
- leads-status Смена статуса сделки
- leads-responsible Смена ответственного сделки
Контакты
- contacts-add Создание контакта
- contacts-update Изменение контакта
- contacts-delete Удаление контакта
Компании
- companies-add Создание компании
- companies-update Изменение компании
- companies-delete Удаление компании
Обратите внимание, что при смене статуса сделки или при смене ответственного сделки, AmoCRM одновременно посылает информацию и об общем изменении сделки, то есть код для leads-status и leads-responsible всегда будет выполняться вместе с leads-update.