Главная » API » Команды API

Команды API

Как получать информацию о логинах и логаутах, звонках и остальные возможности API

Перед началом работы нужно создать API-ключ. Для этого необходимо обратиться к представителю разработчиков CallbackHunter и сообщить ему IP сервера, с которого будут приходить запросы, а также название компании, которая будет использовать API.

Логин

https://callbackhunter.com/api/login?key=123&email=eap@callbackhunter.com&password=qwerty
/api/logout?user_id=19494&key=123
  • key— ключ доступа к API
  • email— почта, под которой зарегистрирован пользователь
  • password — пароль пользователя

В случае успеха будет возвращен json-массив следующего вида:
{«status»:»success»,»result»:»4531f30da687de343a2fc8e569cffafb»}
где result — id сессии пользователя.

В случае ошибки вернет json-массив со структурой, упомянутой выше.

Логаут

https://callbackhunter.com/api/logout?user_id=19494&key=123

  • key — ключ доступа к API
  • user_id — id пользователя

В случае успеха будет возвращен json-массив следующего вида: {«status»:»success»,»result»:»1″}.

В случае ошибки вернет json-массив со структурой, упомянутой выше.

Получение звонков

https://callbackhunter.com/api/get_calls_by_param?id=123&key=123&date_from=2015-04-17_00:00:00&date_to=2015-04-20_23:59:59&limit=2&offset=1

Получение звонков пользователя за указанный промежуток времени с ограничением числа (limit) и сдвигом выборки (offset);

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя
  • from_date — начальная дата для выборки звонков
  • to_date — конечная дата для выборки звонков
  • offset — отступ от первой записи
  • limit — ограничение по количеству выдаваемых записей
  • order (необязательный) — порядок вывода. По умолчанию asc, может быть desc

В случае, если from_date == to_date, выбираются данные по звонкам за день.

Параметры, касающиеся времени, то есть date_from и date_to, считаются заданными в UTC в случае, если у пользователя больше 1 виджета. Если же число виджетов равно 1, то считается, что время задано в часовом поясе из настроек этого виджета.

Обращение возвращает json-массив.

Возвращаемые данные:

  • id — id звонка
  • status — success/manager_invalid/client_invalid/NULL — статус звонка. success при успехе, manager_invalid при невозможности дозвона к менеджеру (не взял трубку, неправильный номер телефона, client_invalid — аналогично для клиента. null — звонок еще не завершился или не связанная с абонентами ошибка при дозвоне
  • widget_id — id виджета
  • site — сайт, на котором установлен виджет
  • datecall — время звонка
  • duration — длительность разговора
  • phone_client — телефонный номер клиента
  • phone_manager — телефонный номер менеджера
  • sess_ip — ip сессии
  • referer_original — реферер
  • entrance_page — страница, с которой был осуществлен вход
  • call_from_url — страница, с которой был вызван звонок с виджета
  • record — адрес записи разговора
  • geo_location — гео-локация (страна, город)
  • caller_name — имя звонившего пользователя (null если не было указано)
  • caller_email — email звонившего пользователя (null если не было указано)

utm_source,
utm_medium,
utm_term,
utm_content,
utm_campaignutm_source,
utm_medium,
utm_term,
utm_content,
utm_campaign

Получение сообщений из чатов

https://callbackhunter.com/api/get_chats_msg?id=321&key=123&date_from=2016-08-22_00:00:00&date_to=2016-08-22_23:59:00

Возвращает чаты, vk и telegram-чаты и cbh-вопросы за указанный период времени с ограничением числа (limit) и сдвигом выборки (offset).

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя
  • date_from — дата, с которой начинается выборка звонков
  • date_to — дата, на которой заканчивается выборка звонков
  • offset — отступ от первой записи
  • limit — ограничение по количеству выдаваемых записей

Обращение возвращает многомерный json-массив.

Возвращаемые данные:

{
'cbh_chat':[
{
"id": "1234", //id виджета
"site": "mysite.su", //сайт
"date": "2015-03-09 08:04:51", //дата добавления чата
"message": "почем камбала?" //сообщение чата
}
],
'cbh_questions':
{
"id": "1234", //id виджета
"site": "mysite.su", //сайт
"date_added": "2015-03-09 08:04:51",//дата добавления чата
"question": "почем камбала?", //вопрос
"phone": "79851234567", //указанный клиентом телефон
"email": "em@ai.l", //указанный клиентом телефон
"user_name": "Ivan Piotr", //имя пользователя, сохраненное виджетом
"user_phone": "79851234567", //телефон пользователя, сохраненный виджетом
"user_email": "em@ai.l" //телефон пользователя, сохраненный виджетом
},
'tg_chat':[
{
"id": "1234", //id виджета
"site": "mysite.su", //сайт
"date_sent": "2015-03-09 08:04:51",//дата начала чата
"message": "почем камбала?"

"from":"manager",

"from_id": "123123", //telegram_id менеджера
"manager_first_name": "Vasia",
"manager_last_name": "Ivanov",

"caller_name": "Ivan Piotr", //имя пользователя, сохраненное виджетом
"caller_phone": "79851234567", //телефон пользователя, сохраненный виджетом
"caller_email": "em@ai.l" //телефон пользователя, сохраненный виджетом
}
],
'vk_chat':[
{
"id": "1234", //id виджета
"site": "mysite.su", //сайт
"date_sent": "2015-03-09 08:04:51", //дата начала чата
"message": "почем камбала?"

"from":"client",

"from_id": "123123", //vk_id менеджера
"manager_first_name": "Vasia",
"manager_last_name": "Ivanov",

"caller_name": "Ivan Piotr", //имя пользователя, сохраненное виджетом
"caller_phone": "79851234567", //телефон пользователя, сохраненный виджетом
"caller_email": "em@ai.l" //почтовый адрес пользователя, сохраненный виджетом
}
],

'uni_chat': [
{
"chat_id":"1234",
"client_transport":"sk", // sk - skype, tg - telegram, vk - vkontakte, fb - facebook, sms - смс,
"manager_transport":"sl", //sl - slack
"message_id":"12345",
"site":"site.ru",
"widget_id":"1111",
"message":"добрый день!",
"from":"client", // manager - от менеджера клиенту, service - системное сообщение
"date_sent":"2016-11-09 13:32:36",
"sid":"wfcjlkwcnlke",
"caller_name":"",
"caller_phone":"",
"caller_email":"",
"manager_first_name":"",
"manager_last_name":""
}
]

Получение данных о платежах пользователя

https://callbackhunter.com/api/get_pays_data?id=123&key=123

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя

Возвращает данные:

  • date_last_pay — дата последней оплаты
  • sum_last_pay — сумма последней оплаты
  • dateadd — дата оплаты
  • pays_total_sum — общий объем оплат
  • pays_total_count — количество произведенных оплат
  • payments_type — тип оплат (онлайн/безнал)
  • minutes_balans/lead_balans — тип баланса (минуты/лиды)

Получение общих данных о звонках пользователя

get_calls_data_balans

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя
  • last_pay — включает (last_pay=1) либо выключает (last_pay=0) вывод звонков только после последней оплаты

Получение токена

https://callbackhunter.com/api/auth?email=mail@mail.ma&password=qwerty

Возвращает следующие данные:

  • token — уникальный токен, необходимый для авторизации. Длится 1 час, после этого сбрасывается. Токен (&token=…) после этого передается в api-запрос вместо id пользователя и ключа.

create_user — требуются права на запись пользователя (выдаются по запросу).

Необходимые данные:

  • id — id пользователя, осуществляющего запрос (не нужно, если доступ к API привязан к ip пользователя)
  • key — ключ доступа к API пользователя
  • site — сайт пользователя
  • name — имя пользователя
  • password — пароль пользователя
  • email — почта пользователя
  • phone — телефон пользователя
  • affiliate_tag — партнерская метка (если есть)

Пример:

https://callbackhunter.com/api/create_user?site=site.com&name=Владислав&password=qwerty&email=qwer@qwe.rty&phone=789456123

create_widget — требуются права на запись виджета (выдаются по запросу).

Необходимые данные:

  • key — ключ доступа к API пользователя
  • user_id — id пользователя, для которого нужно создать виджет. Совпадает с id пользователя-владельца api-доступа (не обязательно совпадает, если доступ к API привязан к ip пользователя)
  • site — сайт, на котором будет размещен виджет
  • phone — телефон менеджера, отвечающего на звонки
  • sms_phone — телефон, на который будут приходить сообщания sms-рассылки
  • country — страна, к которой относится сайт с виджетом
  • mail — почтовый адрес программиста, ответственного за виджет

Пример:

https://callbackhunter.com/api/create_widget?user_id=19494&site=vivacuba.su&phone=+(7)123456789&sms_phone=+(7)123456789&country=Россия&mail=bbb@bbb.bb

Создание пользователя + виджета

Для создания необходимо прописать IP, с которого будут осуществляться запросы к API.

Возвращает id пользователя и хэш виджета. Если таковых не существует — создает.

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

При создании пользователя ему присваивается партнерская метка, по которой создатель может к нему обратиться.

Параметры запроса:

  • key=123 — ключ доступа. Дается при создании api-аккаунта
  • &usite=mysite.site — сайт регистрируемого пользователя
  • &uname=иван — имя регистрируемого пользователя
  • &upass=qwerty — пароль регистрируемого пользователя
  • &umail=qwerty@qwe.rty — почта регистрируемого пользователя. Должна быть уникальной
  • &uphone=7189456123 — телефон регистрируемого пользователя
  • &affiliate_tag=nethouse — необязательный параметр. метка владельца аккаунта API. Не должна меняться
  • &wsite=site.local — адреса сайта нового виджета
  • &wphone=789789789 — телефон менеджера нового виджета
  • &wmail=bbb@hhh.kk — email менеджера нового виджета
  • &sms_phone=987987987 — телефон для получения sms

Пример:

https://callbackhunter.com/api/create_widget_fast?key=123&usite=mysite.site&uname=иван&upass=qwerty&umail=qwerty@qwe.rty&uphone=7189456123&affiliate_tag=nethouse&wsite=site.local&wphone=789789789&wmail=bbb@hhh.kk&sms_phone=987987987

Обращение возвращает JSON-массив.

В случае успеха в массиве будут содержаться следующие данные:

  • user_id — id сгенерированного пользователя
  • widget_id — id нового виджета
  • tracker_code — код виджета, подставляемый в скрипт в месте для
  • hunter_code (<script type=»text/javascript» src=»//cdn.callbackhunter.com/cbh.js?hunter_code=287228e4e73a25b5bfc4bfb5befdbf83″ charset=»UTF-8″></script>
  • status — статус операции (в данном случае будет success)
  • api_key — апи-ключ нового пользователя

Пример:

{"user_id":"35569","tracker_code":"287228e4e73a25b5bfc4bfb5befdbf83","api_key":"a456b789c123d789","status":"success"}

В случае ошибки будет выведен json-массив со следующими данными:

  • status — статус операции (в данном случае будет error)
  • error_code — код ошибки (коды ошибки можно посмотреть на сайте callbackhunter.com/cabinet/widget_api)
  • error_descr — описание кода ошибки

Пример:

{"status":"error","error_code":"wrong0","error_descr":"\u0412\u044b \u0432\u0432\u0435\u043b\u0438 \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435."}

Партнерская метка

https://callbackhunter.com/api/add_user_affiliate_tag?email=mail@mail.com&password=qwerty&key=mykey&tag=nethouse

Параметры запроса:

  • email — почтовый адрес пользователя;
  • password — пароль пользователя;
  • key — ключ доступа к API;
  • tag — добавляемая партнерская метка. Если такая уже установлена, возвращается success.

В случае успеха будет возвращен json-массив следующего вида: {«status»:»success»,»result»:»mytag»}.
где mytag — новая партнерская метка пользователя.

Получение параметров пользователя — name, email, phone, email_notify, sms_notify

https://callbackhunter.com/api/get_user_settings?id=19494&key=123

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя

Обращение возвращает JSON-массив.

В случае успеха в массиве будут содержаться следующие данные:

  • id — id пользователя
  • name — имя пользователя
  • email — почтовый адрес пользователя
  • phone — телефон пользователя
  • email_notify — включена ли рассылка по email, Y или N
  • sms_notify — включена ли sms-рассылка, Y или N
  • expire_tariff — дата истечения тарифа (datetime)
  • payments_type — тип тарифа (в минутах minutes или в клиентах leads)
  • lead_count — число клиентов. только если тип тарифа leads
  • min_count — число минут. только если тип тарифа minutes

Пример ответа:

{"id":"12345","name":"Alex","email":"mail@mail.org","phone":"123456780","email_notify":"N","sms_notify":"Y","status":"success"}

Изменение параметров пользователя — name, email, phone, email_notify, sms_notify

https://callbackhunter.com/api/change_user_settings?id=19494&key=123

Изменение одного или нескольких настроек пользователя.

Передаваемые параметры:

  • key — ключ доступа к API
  • id — id пользователя
  • name — новое имя пользователя (если изменяется)
  • email — новый email пользователя (если изменяется)
  • phone — новый телефон пользователя (если изменяется)
  • email_notify — включение/выключение рассылки по email, Y или N (если изменяется)
  • sms_notify — включение/выключение sms-рассылки, Y или N (если изменяется)

Обращение возвращает JSON-массив.

В случае успеха в массиве будут содержаться следующие данные:

  • id — id пользователя
  • name — имя пользователя
  • email — email пользователя
  • phone — телефон пользователя
  • email_notify — включена ли рассылка по email, Y или N
  • sms_notify — включена ли sms-рассылка, Y или N

Пример ответа:

{"id":"12345","name":"Alex","email":"mail@mail.org","phone":"123456780","email_notify":"N","sms_notify":"Y","status":"success"}

Восстановление пароля

https://callbackhunter.com/api/repasswd?email=mail@mail.ma&user_id=123&key=123

Получение нового пароля на указанную почту

Передаваемые параметры:

  • key — ключ доступа к API
  • user_id — id пользователя
  • e-mail — e-mail пользователя, под которым он зарегистрирован в cbh

В случае успеха будет возвращен json-массив следующего вида: {«status»:»success»,»result»:»1″}.

Изменение пароля

https://callbackhunter.com/api/chpasswd?email=mail@mail.ma&user_id=123&key=123&old_passw=qwerty&new_passw=asdfg&confirm_passw=asdfg

Передаваемые параметры:

  • key — ключ доступа к API
  • user_id — id пользователя
  • email — email пользователя, под которым он зарегистрирован в cbh
  • old_passw — старый пароль
  • new_passw — новый пароль
  • confirm_passw — подтверждение нового пароля

В случае успеха будет возвращен json-массив следующего вида: {«status»:»success»,»result»:»1″}.

Полезные статьи