Общие сведения

Общая информация

SalesMan CRM поддерживает следующие способы расширения функциональности:

  1. RestAPI - SalesMan API — это специальный интерфейс для разработчиков, позволяющий интегрировать возможности системы SalesMan практически с любым открытым веб-сервисом или desktop-приложением. API предоставляет возможности для управления записями Клиентов, Контактов, Напоминаний, Сделок и Лидов.

    Работа с API бесплатна для всех, достаточно получить ключ к нему в Панели управления. Ключ доступа не следует передавать другим или делать видимым в коде веб-страниц, т.к. в этом случае кто-нибудь может воспользоваться им и отправлять сообщения от вашего имени.
     
  2. Events - система событий, позволяющая выполнить сторонний код или отправить запрос во внешний скрипт (посредством GET или POST запросов) в зависимости от происходящих в системе событий (например, Добавление нового клиента). Доступна только для коробочного варианта поставки. С версии 2016.21 система Events является вспомогательной для системы Webhooks.
     
  3. WebHooks - система, позволяющая отправить информацию из CRM во внешнюю систему по указанному URL (т.е. система работает в обратную сторону, относительно RestAPI). Добавлена с версии 2016.21

Принцип использования RestAPI

Обращение к методам API — это HTTP-запрос к URL вида:

http(s)://crm_url/developer/v1/method?action=list&apikey=key&arg1=param_1&arg2=param_2

  • http(s)://crm_url - адрес вашего экземпляра CRM, к которому происходит подключение
  • method - название метода
  • action – название запроса
  • key - ключ доступа к API
  • param_1 ... param_n - аргументы метода, свои для каждого метода

 

 

Все параметры должны быть в кодировке UTF-8. В примере выше параметры указаны в GET-запросе, но можно передавать их и в POST. Более того, параметр apikey мы настоятельно рекомендуем передавать через POST, чтобы он не сохранялся в логах прокси-серверов.

Ответ приходит в виде объекта формата JSON.

Результат успешного вызова метода

Если вызов успешен, то объект будет содержать поле "result", содержимое которого зависит от вызванного метода, и не будет содержать поля "error".

[{"result":"Успешно","data":"1456"}]

Результат не успешного вызова метода

Признаком ошибки при выполнении метода является наличие в объекте ответа поля "error" с HTML-сообщением об ошибке. Кроме того, в объекте ответа в случае ошибки будет ещё и поле "code" со строковым кодом ошибки.

[{"result":"Error","error":{"code":"405","text":"Отсутствуют параметры - Название клиента"}]

Авторизация

Авторизация выполняется с помощью передачи в каждом запросе обязательных параметров:

  • login – логин пользователя, от имени которого выполняются запросы
  • apikey – ключ API, который можно получить в Панели управления / Общие настройки / Настройки безопасности

Возможные ответы в случае ошибок:

  • 400 – Не верный API key
  • 401 – Неизвестный пользователь
  • 402 – Неизвестный метод

Рекомендации:

  • Рекомендуем создать отдельного пользователя с ролью «Руководитель с доступом», т.к. ему будут доступны данные по всем сотрудникам CRM
  • Рекомендуем передавать параметры, обработанные функцией http_build_query

Быстрый старт

Мы подготовили для вас примеры для работы со всеми методами и запросами API. Их можно

 Скачать

Принцип использования Events

Подключить свои обработчики на те или иные события можно с помощью файла "developer/events.php", поставляемого с открытым исходным кодом в коробочном варианте. Файл содержит перечень поддерживаемых событий, а также некоторые примеры использования.

Принцип использования WebHooks

Webhook — механизм получения уведомлений об определённых событиях в SalesMan CRM (в основном о действиях пользователей) во внешних приложениях. Интересен он может быть, в первую очередь, для разработчиков и интеграторов, т.к. дополняет систему событий (Events), RestAPI и дает возможности двухстороннего обмена данными именно тогда, когда они изменяются.


Что-то не понятно? Задай вопрос: