AmoCRM
Javascript библиотека для работы с AmoCRM
Подключение к CRM
const AmoCRM = ; const crm = // логин пользователя в портале, где адрес портала domain.amocrm.ru domain: 'domain' // может быть указан полный домен вида domain.amocrm.ru, domain.amocrm.com auth: login: 'mylogin' hash: 'mytesthash' // API-ключ доступа ; // Вход в порталcrm;
Выход из портала
Метод disconnect() позволяет выйти из портала. Он выключает таймер проверки времени истечения сессии.
crm;
Свободный запрос к CRM
// Получить данные по аккаунту (GET-запрос)crmrequest // Создать новый контакт (POST-запрос)crmrequest
Фабрики
В настоящий момент доступны следующие фабрики:
crmLead // манипуляции со сделкамиcrmContact // манипуляции с контактами
Каждая из фабрик имеет методы для множественных операций со сделками:
// Поиск сделок по критерию, возвращает [ Lead, Lead, ... ]crmLead;// Добавление сделокcrmLead;// Обновление сделокcrmLead; // Возвращает LeadcrmLead;
Сделки
// новая сделкаconst lead = ;leadlinked_company_id = 1245;leadupdated_at = 12345678;leadprice = 10000; lead; // вернёт Promise// альтернативный вариант 1const lead = linked_company_id: 1245 updated_at: 12345678 price: 10000;lead; // альтернативный вариант 2const lead = crmLead;lead; // Обновление сделкиleadname = "Заявка для Ивана";lead; // Поиск сделок crmLead // Взять данные о сделке с сервера crmLead;
Удаление сделок
Так как в официальном API данная возможность не документирована, лавка может в обозримом будущем прикрыться. Тем не менее, есть возможность удалять сделки.
// список идентификаторов сделокcrmLead // удаление отедльной сделкиcrmLead;
Переподключение
Переподключение к порталу в случае истечения сессии (15 минут бездействия или истечение cookie-файла в течение 2 лет) происходит автоматически.
Работа с событиями
В настоящий момент доступны следующие события:
- connection:beforeReconnect
- connection:beforeConnect
- connection:checkReconnect
- connection:authError
- connection:connected
- connection:disconnected
- connection:error
Добавление обработчика:
crm;
Удаление обработчика:
const handler = console;crm; // удалить конкретный обработчикcrm; // удалить все обработчики конкретного событияcrm; // удалить все обработчики всех событийcrm;