Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Меньше года назад мы представили бесплатную 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.