API для бесплатной CRM

от автора

Меньше года назад мы представили бесплатную CRM систему интегрированную с бесплатной АТС. За это время ей воспользовались 14 000 компаний и 64 000 сотрудников.
Сейчас мы предлагаем открытый API интерфейс, в котором доступно большинство функций ZCRM. API позволяет использовать CRM для любых каналов продаж.
Ниже кратко опишем работу с API и доступный функционал. Также приведен простой но полезный и рабочий пример: скрипт для создания лида из формы на сайте.

Кратко о бесплатной CRM

Воздержимся от объяснения что такое CRM. Бесплатная CRM Zadarma поддерживает все стандартные функции хранения данных о клиенте. Информация сохраняется в ленте клиента. Также кроме информации о клиентах доступен удобный постановщик задач с отображением на любой вкус (календарь, канбан, список). Все это доступно для 50+ сотрудников и полностью интегрировано с телефонией (в том числе звонки из браузера по технологии WebRTC).

Что значит бесплатная? Нет ни одного тарифа либо услуги ZCRM, за которые нужно платить. Единственное за что нужно платить — это за телефонные звонки и номера (по спецтарифам, например, абонплата за номер Москвы 95 рублей или Лондона 1 евро). А если звонков почти нет? То и платить почти не нужно.
Бесплатная CRM активна пока активна бесплатная АТС Zadarma. После регистрации АТС активна 2 недели, в дальнейшем необходимо пополнять счет на любую сумму 1 раз в 3 месяца. Сложно представить офис, которому нужна CRM и АТС, но вообще не нужен ни номер ни звонки.

Зачем нужен API для бесплатной CRM

Развитие ZCRM не прекращается ни на минуту, появилось множество больших и маленьких функций. Но мы понимаем, чтобы представить действительно функциональную систему, а не просто умную записную книжку, недостаточно только интеграции с телефонией.
Чем больше контактов с клиентом тем лучше и контакты могут быть самыми разными. Благодаря API можно без проблем автоматически вносить (либо наоборот получить) информацию о клиенте/лиде и задачах. Благодаря этому появляется возможность подключить любые каналы общения с клиентами и любые другие системы автоматизации.
Благодаря API бесплатную ZCRM возможно использовать любым способом, как целиком так и частично. Например, как удобный интерфейс для работы с корпоративной базой клиентов, либо простой удобный планировщик.
Ниже приведем пример подобного канала — подключение к CRM лид-формы на сайте. Позже на сайте приведем и другие примеры, например создание задачи перезвонить клиенту (отложенный звонок).

Основные методы API ZCRM

Так как в API ZCRM доступно 37 методов, воздержимся от описания всех, опишем лишь основные их группы с примерами.
Полный список с примерами доступен на сайте в описании API CRM.

Возможна работа со следующими группами методов:

  • Клиенты (общий список, отдельные выборки, редактирование, удаление)
  • Теги и дополнительные свойства клиентов
  • Лента клиента (просмотр, редактирование, удаление записей в лентах клиентов)
  • Сотрудники клиента (так как клиент как правило юридическое лицо, у него может быть не мало сотрудников)
  • Задачи (весь функционал по работе с задачами)
  • Лиды (аналогично все функции)
  • Пользователи СRM (отображение списка пользователей, их права, настройки, контакты и рабочие часы)
  • Звонки (возвращает список звонков)

Так как используется существующая структура API Zadarma, для нее на Github уже доступны библиотеки на PHP, C#, Python.

Пример использования API

Самый простой и при этом полезный пример — создание лида из формы. Для минимизации кода этот пример содержит только основные данные лида. Подобный пример, но уже с комментариями от клиента (обычно присутствуют в каждой форме) доступен в блоге на сайте. Примеры скрипта написаны на PHP без фреймворков а потому легко встраиваются.
Пример html формы для создания лида:

<form method="POST" action="/zcrm_leads">    <label for="name">Name:</label>    <br>    <input type="text" id="name" name="name" value="">    <br>    <label for="phone">Phone:</label><br>    <input type="text" id="phone" name="phones[0][phone]" value="">    <br>    <label for="phone">Email:</label><br>    <input type="text" id="email" name="contacts[0][value]" value="">    <br>    <br>    <input type="submit" value="Submit"> </form> 

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

И собственно PHP пример по созданию лида с данными из формы:

<?php $postData = $_POST; if ($postData) {    if (isset($postData['phones'], $postData['phones'][0], $postData['phones'][0]['phone'])) {        $postData['phones'][0]['type'] = 'work';    }    if (isset($postData['contacts'], $postData['contacts'][0], $postData['contacts'][0]['value'])) {        $postData['contacts'][0]['type'] = 'email_work';    }    $params = ['lead' => $postData];    $params['lead']['lead_source'] = 'form';     $leadData = makePostRequest('/v1/zcrm/leads', $params);    var_dump($leadData); } exit();  function makePostRequest($method, $params) {    // замените userKey и secret на ваши из личного кабинета    $userKey = '';    $secret = '';    $apiUrl = 'https://api.zadarma.com';     ksort($params);     $paramsStr = makeParamsStr($params);    $sign = makeSign($paramsStr, $method, $secret);     $curl = curl_init();    curl_setopt($curl, CURLOPT_URL, $apiUrl . $method);    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'POST');    curl_setopt($curl, CURLOPT_POST, true);    curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);    curl_setopt($curl, CURLOPT_POSTFIELDS, $paramsStr);    curl_setopt($curl, CURLOPT_HTTPHEADER, [        'Authorization: ' . $userKey . ':' . $sign    ]);     $response = curl_exec($curl);    $error = curl_error($curl);     curl_close($curl);     if ($error) {        return null;    } else {        return json_decode($response, true);    } }  /** * @param array $params * @return string */ function makeParamsStr($params) {    return http_build_query($params, null, '&', PHP_QUERY_RFC1738); }  /** * @param string $paramsStr * @param string $method * @param string $secret * * @return string */ function makeSign($paramsStr, $method, $secret) {    return base64_encode(        hash_hmac(            'sha1',            $method . $paramsStr . md5($paramsStr),            $secret        )    ); }  

Как вы видите, работа с API достаточно проста, плюс присутствуют примеры работы на PHP, C#, Python. Таким образом без особых проблем можно вписать простую бесплатную CRM в любой рабочий процесс, получив автоматизацию «малой кровью».
ZCRM непрерывно развивается и практически все новые функции будут доступны в том числе через API.
Также мы приглашаем интегрировать ваши существующие системы системы с бесплатными CRM и АТС Zadarma.

ссылка на оригинал статьи https://habr.com/ru/company/zadarma/blog/510772/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *