Возможности


Мы стараемся предоставить максимальные возможности для интеграции amoCRM с другими сервисами и системами, чтобы вы, наши клиенты и партнеры, могли расширить возможности amoCRM для себя и других пользователей.

Создание собственных интеграций – это не так сложно, как может показаться на первый взгляд. Чтобы еще больше облегчить жизнь разработчику, кроме инструкций мы приводим примеры использования методов и их описание.

Что такое интеграция?

Интеграциями мы называем любое взаимодействие сторонней системы с amoCRM. А команду или разработчика, который разрабатывает подобное решение мы называем Интегратором.

Интеграция – это запись в БД amoCRM идентифицирующая внешнее приложение, взаимодействующее с amoCRM. Для того, чтобы получить доступ к данным пользователя в amoCRM мы всегда просим создать интеграцию (представиться – ввести Название и описание сервиса, загрузить логотип). В ответ выдаем секретные ключи, необходимые для обращения к нашему API.

Интеграция включает в себя:

  • Набор ключей необходимых для oAuth авторизации (client_id, client_secret)
  • Мета-данные (название, логотип, описание и т.д.) необходимые для того, чтобы пользователь мог всегда понять, какой сервис имеет доступ к его аккаунту и данным
  • Архив виджета (JS-код исполняемый в интерфейсе amoCRM) (является не обязательным и может не входить в состав интеграции)

Мы выделяем 4 вида интеграций:

  1. Приватная интеграция.
    Это простейший вид интеграции, когда мы делаем интеграцию только для одного аккаунта.
    Например, у нас есть разработчик/партнер, который делает уникальную доработку необходимую только одной компании/аккаунту (например, форма на сайт, интеграция с уникальным софтом Заказчика и т.д.).

    Интеграции данного вида НЕ проходят модерацию и не публикуются в маркетплейсе.
    Это самый гибкий и простой инструмент для доработок amoCRM для конкретного Заказчика.

    Создание подобной интеграции наиболее простое и заключается в следующих шагах:
    Авторизация под администратором аккаунта. Затем переход в раздел amoМаркет, нажать в правом верхнем углу на три точки и выбрать пункт Создать интеграцию. Дальше создать интеграцию, заполнив простейшую форму.
    После создания необходимо скопировать ключи, выполнить авторизацию и обмениваться данными.

    Данный метод позволяет использовать кнопку на сайт, но список аккаунтов в окне предоставления доступов будет ограничен одним аккаунтом, в котором интеграция создана.
    В данной интеграции может быть загружен виджет (JS-код), который будет работать в интерфейсе amoCRM, но только в одном аккаунте, в котором создана интеграция.

  2. Публичная интеграция (опубликованная в маркетплейс amoCRM).
    Если вы разрабатываете интеграцию, которая может пригодиться любому пользователю amoCRM, то мы с радостью разместим ее в нашем маркетплейсе.

    Такие интеграции проходят нашу модерацию, то есть мы проверяем, тестируем и аудируем JS-код, если он есть, чтобы обеспечить безопасность и надлежащее качество для наших пользователей.

    Разработка и тестирование публичной интеграции должны производиться в техническом аккаунте, т.к. происходят чуть сложнее и требуют взаимодействия с нашей командой поддержки и тестирования.

    Интеграция может нести в себе виджет, который будет работать в интерфейсе amoCRM.
    Установку подобной интеграции можно инициировать со стороннего сайта.

    После создания интеграции вы получите ключи и сможете использовать механизм кнопки amoCRM на сайт.
    С её помощью вы сможете включать интеграцию в сторонних аккаунтах в случае, если пользователь разрешит авторизацию и предоставит доступ.

  3. Внешняя интеграция.
    Данный тип интеграций подразумевает, что вы используете только API amoCRM, не используя JS-код виджета.

    Эта возможность отлично подойдет для тиражных решений по обмену данными (к примеру, вы разработчик системы статистики, складского учета и т.д.) и если вы не хотите, чтобы интеграция была размещена в маркетплейсе amoCRM, не хотите проходить модерацию и вообще особо заходить в amoCRM, но хотите разработать решение полезное для наших общих пользователей.
    Тогда есть возможность разместить на странице своего сервиса кнопку для авторизации и получения доступа к аккаунту пользователя amoCRM. При этом мета-данные для создания интеграции будут указаны в настройках кнопки.

    Данная интеграция доступна для создания только через механизм кнопки amoCRM на сайт.

    Вы можете передать в кнопку на сайт метаданные и при предоставлении доступа пользователем, в его аккаунте будет создана приватная интеграция с переданными метаданными.
    Вы получите вебхук с данными, необходимыми для авторизации.

    Данный тип интеграций позволит использовать API amoCRM, но не позволяет загружать виджет.

    В каждом аккаунте будет создана новая интеграция со своим набором ключей.

  4. Отраслевое решение.
    Специфический тип интеграций, который представляет из себя мастер настройки нового аккаунта.

    После регистрации пользователя в системе, он перенаправляется в новый аккаунт.

    Мы предлагаем на начальных шагах список мастеров настройки, разделяя их по отраслям.
    В случае выбора одного из мастеров мы передаем управление процессом регистрации Отраслевому решению.
    Это означает, что наш партнер – создатель данного решения получает данный лид, но в ответ мы просим, чтобы каждое такое отраслевое решение несло неоспоримую пользу нашим общим пользователям.

    Для создания подобной интеграции вам необходимо обратиться в техническую поддержку с описание решения, которое вы хотите разработать.
    В случае одобрения, ваш аккаунт будет переведен в статус технического с возможностью создания отраслевого решения.

    Механизм модерации схож с механизмом, действующем для публичных интеграций.
    Отраслевое решение не отображается в маркетплейсе после его публикации, но становится доступно в туре при создании нового аккаунта.

Во все виды интеграций, кроме внешней, может быть загружен архив с JS-виджетом, который будет работать в интерфейсе amoCRM.

C помощью подобного виджета вы сможете:

  1. отобразить вашу верстку в предусмотренных областях системы: в карточках сделок или контактов, в списках, в воронке, на рабочем столе и т.д. Так вы добавите интерфейс взаимодействия с интеграцией для наших общих пользователей
  2. повлиять на отображение и поведение стандартных интерфейсов amoCRM обмениваться данными со сторонними системами, отправляя запросы, либо с amoCRM через REST API
  3. получать данные из контекста страницы, из JS объектов инициированных amoCRM

Подробнее о разработке JS интеграции вы можете почитать здесь.

Примеры использования виджета из жизни:

  1. Я хочу вывести дополнительную информацию о контакте (в карточке контакта) из моей внутренней учетной системы;
  2. Я хочу, чтобы сотрудники моей компании могли отправлять запрос в бухгалтерию на формирование платежного поручения непосредственно из карточки сделки;
  3. Я являюсь разработчиком стороннего сервиса (телефонии, email-рассылок) и хочу предоставить клиентам amoCRM возможность использовать мой сервис, опубликовав публичную интеграцию и сделав интеграцию amoCRM и сервиса прозрачнее и проще.

Инструменты

Кроме того, что вы можете удаленно получать, добавлять и обновлять данные в amoCRM используя REST API, а также использовать систему интеграций, о которой мы говорили выше, мы предусмотрели еще ряд инструментов для того, чтобы сделать интеграцию с amoCRM еще проще.

Salesbot – возможность создания собственных сценариев автоматической работы с пользователем через чаты мессенджеров.

amoCRM поддерживает интеграцию с множеством мессенджеров по умолчанию (Facebook Messenger, ВК, Telegram, Viber, Skype и другие). Предоставляет собственный язык и конструктор Salesbot, который позволяет писать автоматизированные сценарии общения с пользователем. А также предоставляет инструмент интегратору встраивать собственную интеграцию в процесс работы робота.

Digital Pipeline – мощнейший инструмент автоматизации имеющий свой конструктор. Конструктор позволяет настроить автоматическую реакцию системы на возникновение событий (перевод сделки в другой этап, переход на сайт и т.д.). Реагировать amoCRM может огромным количеством предустановленных действий каждое из которых настраивается (создать задачу, подписать на рекламу, отправить письмо и т.д.).

Но самое интересное, что кроме предустановленных действий любой интегратор может разработать собственный обработчик события и разместить его в списке готовых для всех пользователей системы.

Списки – по сути собственные таблицы данных, справочники, которые могут быть созданы через API или интерфейс. Пользователь сможет увидеть и иметь доступ к этим таблицам через стандартные интерфейсы, а интеграция может управлять данными через API, в том числе ограничив возможности пользователя по редактированию данных через стандартный интерфейс, если это необходимо.

Примерами подобных списков могут быть списки товаров, списки счетов, списки заказов.

Это справочники, набором полей которых управляет интеграция, но при этом они могут быть связаны с основными сущностями системы (сделками, покупателями).

Webhooks – инструмент, который позволяет вручную или через API подписаться на определенные события в системе (изменение контакта, постановка задачи и т.д.) и получать вызовы вашего скрипта при возникновении таких событий, а также иметь на входе в скрипт контекст конкретного возникшего события. С помощью данного инструмента вы можете отслеживать необходимые изменения данных не синхронизируя их периодически, а основываясь на событийной модели.

Сервис коротких ссылок – суть сервиса не заключается только в сокращении ссылок до более короткого вида. Цель – пометить ссылку и запомнить ее связь с конкретным контактом в amoCRM, которому она была отправлена. Тогда при переходе по ней мы сможем отследить возникшее событие (к примеру, переход на ваш сайт) и отреагировать, зная какой именно контакт в вашем аккаунте совершил действие.

Набор инструментов для интеграций с виртуальными АТС – это набор JS-методов и библиотек (плееры для проигрывания звонков, всплывающие уведомления и т.д.), а также специфическое API и примеры использования, которые будут полезны интеграторам, разрабатывающим связку с телефонией.

API чатов – любой интегратор перед которым стоит задача подключить новый источник сообщений, новый мессенджер к amoCRM может воспользоваться готовым API. К примеру, вы разрабатываете собственную интеграцию с WhatsApp и с помощью API вы сможете для всех клиентов amoCRM предоставить возможность установить интеграцию между amoCRM и WhatsApp на ваших условиях, т.к. вы будете выступать транспортом и будете контролировать API WhatsApp. Но при этом для пользователя весь процесс будет выглядеть так, как будто он пишет напрямую в мессенджер и получает сообщения, работая в amoCRM. Функционал Salesbot также будет работать с новыми входящими сообщениями.

Центр нотификаций – внутри amoCRM есть собственная система уведомлений схожая с системой push-уведомлений в мобильных устройствах. Доставка сообщений осуществляется в интерфейс amoCRM по сокетам, там же пользователь может посмотреть историю уведомлений, а также может регулировать настройки доставки. API к центру нотификаций также является открытым.