×

Callkeeper

Метод API startCall Параметры запроса Формат ответа startCall Методы Форматы ошибок

CallTracking Calls

Методы Параметры запроса Формат ответа Формат ошибок

CallTracking Tags

Методы Параметры запроса Формат ответа Формат ошибок
CallKeeper
CallTracking-Calls
CallTracking-Tags

Метод API startCall

Запрос с минимальным набором параметров

  1. const data = {
  2. apiak: 'CD96pEBTmk3r8sNd',
  3. whash: '1f416dd5f788f724fa7c2757f5f29f2f',
  4. client: '79998887766',
  5. };
  6.  
  7. let request = [];
  8.  
  9. for (let item in data) {
  10. request.push(item + '=' + data[item]);
  11. };
  12.  
  13. fetch('https://api.callkeeper.ru/startCall?' + request.join('&'))
  14. .then(response => console.log(response.status));

Запрос с максимальным набором параметров

  1. const data = {
  2. apiak: 'CD96pEBTmk3r8sNd',
  3. whash: '1f416dd5f788f724fa7c2757f5f29f2f',
  4. unique: 'company1',
  5. client: '79998887766',
  6. manager: '79997778855',
  7. office: '0',
  8. store_date: '2021-03-09 06:25:50',
  9. referrer: 'callkeeper.ru',
  10. history_length: '7',
  11. country: 'RU',
  12. city: 'Москва',
  13. region: 'МО',
  14. call_from_image: '1',
  15. external_session: '1269569228',
  16. chime_interval: '10',
  17. user_mail: 'user@mail.ru',
  18. visit_session_hash: '147863647182651453',
  19. smartis_session: '1012081459',
  20. client_session_user_id: '38d3ba73afac822bf8ec0eca230a68b6',
  21. ct_session_id: 'h81pgaz0ksf1bazh38kqc4',
  22. comagic_session_id: '3123127898975611',
  23. fbclid: 'IwAR1ttAWqIGgaunTv4XLb4JJHu',
  24. ga_count_id: ["UA-56548709-1"],
  25. gclid: 'Cj0KCQiAs5eCBhCBARIsAEhk4r49nE4nL5q_NjKbrnoI-GJVlmP3MUBBlFUBAwhGlBLYi-ILZbIqz-QaApxqEALw_wcB',
  26. rb_clickid: '30644461-1525484797-1139838737',
  27. yclid: '5536176824629815635',
  28. ym_count_id: ["68106067","71351851"],
  29. unique_user_session_id: '847572752',
  30. visit_hash: '317373679280938160',
  31. ct_server_hash: 'MvaYHMhX',
  32. time_to_call: '1630162800',
  33. utm_type: 'utm',
  34. utm_source: 'yandex',
  35. utm_medium: 'cpc',
  36. utm_campaign: 'new_campaign',
  37. utm_content: '10443458223',
  38. utm_term: 'новый авто',
  39. entry_point: 'page',
  40. current_page: 'page',
  41. user_agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36',
  42. ip_client: '123.456.7.8',
  43. site: 'sales.ru',
  44. info_to_manager: 'клиент ищет спорткар',
  45. notification: 'mail@mysite.ru',
  46. ya_client_id: '161674871095158365',
  47. ga_client_id: '277674871095158471',
  48. calltouch_session_id: '3123125421412',
  49. roistat_id: '312312332111',
  50. roistat_visit: '5546489954',
  51. opening_hours: '09001800',
  52. text_to_manager: 'Клиент заполнил форму на сайте',
  53. tool_name: 'name',
  54. office_name: 'главный',
  55. record_to_manager: 'https://site.ru/record/voice',
  56. record_to_await: 'https://site.ru/record/await',
  57. utc: 'UTC+03:00'
  58. };
  59.  
  60. let request = [];
  61.  
  62. for (let item in data) {
  63. request.push(item + '=' + data[item]);
  64. };
  65.  
  66. fetch('https://api.callkeeper.ru/startCall?' + request.join('&'))
  67. .then(response => console.log(response.status));

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


Дополнительные параметры запроса

Параметры рекламных метрик


Параметры, содержащие данные сторонних сервисов


Параметры, относящиеся к системе CallKeeper


Параметры звонка

Формат ответа startCall

[{"id":"123456","manager":"79999999999^_","client":"799999999998","status":"success"}]

Методы

getDoc

Страница документации API CallKeeper

https://api.callkeeper.ru/getDoc
link

validTimeZones

Метод, возвращающий информацию по соответствию значений timezone с utc

https://api.callkeeper.ru/validTimeZones
link

startCall

Метод заказа звонков

https://api.callkeeper.ru/startCall?apiak=CD96pEBTmk3r8sNd&whash=1f416dd5f788f724fa7c2757f5f29f2f&unique=company1&client=79998887766
link

getUserInfo

Для получения информации по вашему пользователю, достаточно передать параметр api_key:

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

https://api.callkeeper.ru/getUserInfo?api_key=8abee9a093a4c8344ccfd761e1aba739
link

getCallsInfo

Для получения статистики по звонкам достаточно передать в запросе следующие параметры:

Пример запроса c указанными временными рамками:

https://api.callkeeper.ru/getCallsInfo?api_key=8abee9a093a4c8344ccfd761e1aba739&date[from]=2021-03-01&date[to]=2022-06-01
link

getCallInfo

Метод, возвращающий информацию по конкретному звонку. Принимает следующие параметры:

Пример запроса по звонку с id 35027315:

https://api.callkeeper.ru/getCallInfo?api_key=47132722b98eed83&id_call=35027315
link

getCallsCompleted

Пример с выгрузкой только завершенных звонков:

https://api.callkeeper.ru/getCallsCompleted?api_key=8abee9a093a4c8344ccfd761e1aba739&date
link

getT2C

Для получения звонков, инициированных с помощью tap2call, следует передать в запросе параметр apiak и параметры date[from] и date[to]

https://api.callkeeper.ru/getT2C?apiak=k4pgaZDiRJIHM9VE&date[from]=2019-01-29&date[to]=2021-03-29
link

Форматы ошибок

  1. Не передан параметр unique.
    {"status":"fail", "reason":"Key 'unique' is not defined!"}
  2. Не передан параметр apiak.
    {"status":"fail", "reason":"Key 'apiak' is not defined!"}
  3. Не передан параметр whash.
    {"status":"fail", "reason":"Key 'whash' is not defined!"}
  4. Неавторизированный хост.
    {"status":"fail", "reason":"Unauthorized host!"}
  5. Передан некорректный ключ api.
    {"status":"fail", "reason":"Not the correct key api"}
  6. Некорректный запрос.
    {"status":"fail", "reason":"Mismatched request!"}
  7. Неверно указан метод запроса.
    {"status":"fail", "reason":"Unknown request method!"}
  8. Допущена ошибка в типе передаваемых в запросе данных.
    {"status":"fail", "reason":"Wrong data type!"}
  9. В запросе не переданы все необходимые параметры.
    {"status":"fail", "reason":"Not enough values"}
  10. В запросе передан некорректный номер телефона.
    {"status":"fail", "reason":"Phone not provided or invalid"}
  11. Неизвестный пользователь.
    {"status":"fail", "reason":"Unknown user"}
  12. Значения apiak или hash короче или длинее чем необходимо, либо переданы в неверном формате.
    {"status":"fail", "reason":"Apiak or Hash shorter or longer then was required or not hexadecimal"}
  13. Параметры whash и apiak не соответствуют друг другу.
    {"status":"fail", "reason":"Wrong pair whash and apiak!"}
  14. Виджет отключен.
    {"status":"fail", "reason":"The widget is disabled"}

Документация API CallTracking Calls

CallTracking API позволяет получать полную информацию по звонкам как из сервиса CallTracking, так и из сервиса CallKeeper. Запрос осуществляется методом GET.

Методы

Для использования методов следует передать имя выбранного метода в параметр method. К API CallTracking с целью получения звонков следует обращаться с помощью одного из трех методов: get, getByRole, getWithRole.

Запросы к данным методам должны включать в себя следующие параметры, и быть перечислены в указанной последовательности:
?format/version/apikey/entity/method/pages/from/to&length=10

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

Формат ответа

Формат ответа представляет из себя массив звонков в формате JSON

  1. [
  2. {
  3. "page": 1,
  4. "universalId": "23423423434434234",
  5. "serviceType": "calltracking",
  6. "clientNumber": "7999999999",
  7. "managerNumber": "7888888888",
  8. "callerIdToManager": "79999999999",
  9. "callerIdToClient": "79999999999",
  10. "statusFirst": 200,
  11. "statusSecond": 200,
  12. "status": "success",
  13. "callTime": "2020-04-05 13:23:32",
  14. "localDate": "2020-04-05 15:23:32",
  15. "timezoneOffset": "+0020",
  16. "duration": 152,
  17. "tariffTime": 3,
  18. "site": "mysite.ru",
  19. "recordUrl": "https://callkeeper.ru/record",
  20. "unique": true,
  21. "target": true,
  22. "uniqueTarget": false,
  23. "visitSite": "callkeeperr.ru",
  24. "referrer": "search.ru",
  25. "utm_source": "search",
  26. "utm_medium": "cpc",
  27. "utm_campaign": "advert",
  28. "utm_content": "goods",
  29. "utm_term": "some info",
  30. "yaClid": "534543523543",
  31. "gaClid": "345345353.234234234",
  32. "roistatClid": "323423423",
  33. "calltouchClid": "234234234",
  34. "comagicClid": "34223234",
  35. "city": "Москва",
  36. "region": "Москва",
  37. "country": "Россия",
  38. "ipAddress": "127.0.0.1",
  39. "pagesCount": 5,
  40. "entryPoint": "https://callkeeper.ru/blog",
  41. "entryPointQuery": "https://callkeeper.ru/call-tracking/",
  42. "callPage": "https://callkeeper.ru/calls",
  43. "counts": 12,
  44. "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko)",
  45. "device": "iphone 7",
  46. "cbWidgetHash": "xxx99xx99xxxxx999xxxxxx9999xxx99",
  47. "cbToolId": 1000,
  48. "cbCallId": 10000000,
  49. "cbUid": 1000,
  50. "cbToolName": "Виджет обратного звонка",
  51. "cbSmatrisSession": 62345,
  52. "cbOfficeNumber": "0",
  53. "cbOfficeName": "Moscow office",
  54. "cbOrderDate": "2020-05-04 12:13:22",
  55. "cbAttempt": 3,
  56. "cbAttemptsQueue": [
  57. 10000000,
  58. 11111111
  59. ],
  60. "cbConnectType": "smartcall",
  61. "cbSmartCallCount": 5,
  62. "cbIvrCount": 12,
  63. "cbEventSource": "api",
  64. "ctCallId": 100000,
  65. "ctCampaignId": 1000,
  66. "ctCampaignName": "sale",
  67. "ctIsListened": "1",
  68. "tags": [
  69. "some tag",
  70. "any tag"
  71. ],
  72. }
  73. ]

Описание полей

Возвращаемые данным методом значения описаны в следующем порядке:

имя параметра - описание параметра (тип данных)

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

Ни один из параметров не принимает значение NULL. В случае если параметр пустой, то вместо NULL у строковых значений будет пустая строка, у числовых значений - 0, у массивов - пустой массив.

В ответе есть параметры, специфичные для сервиса Callback, они обозначаются префиксом "cb" перед названием параметра.

Также есть параметры, специфичные для сервиса CallTracking, они обозначены префиксом "ct". Параметры без этих префиксов являются общими для обоих сервисов.

Дополнительно

Все возможные статусы по звонкам доступны по ссылке.

Формат ошибок

В случае неуспешного запроса, вернется ответ следующего формата:

  1. {
  2. "inbound": {
  3. "error": "No rows found"
  4. },
  5. "info": {
  6. "entities": {
  7. "call": ["get"],
  8. "callrole": ["get"],
  9. "phone": ["get"],
  10. "user": ["get"],
  11. "campaign": ["get"],
  12. "tag": ["get"]
  13. },
  14. "types": ["json", "plain", "csv", "xml"],
  15. "versions": ["v1"]
  16. },
  17. "payload": []
  18. }

В данном ответе поле "info" носит информационный характер, и во всех неуспешных запросах оно будет одинаковое. Поле "payload" также во всех неудачных запросах будет пустым, что означает, что данных в ответе нет.

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


Описание возможных ошибок при запросах к API

  1. Не найдено звонков за выбранный период, или звонков у данного пользователя не существует
    "error": "No rows found"
  2. Параметр format в запросе отсутствует либо неверный
    "error":"Type to return is not available"
  3. Параметр version в запросе отсутствует либо неверный
    "error":"Type to return is not available"
  4. Параметр apikey в запросе отсутствует либо неверный
    "error":"User is not recognized"
  5. Параметр entity в запросе отсутствует либо неверный
    "error":"Entity does not exist"
  6. Параметр method в запросе отсутствует либо неверный
    "error":"Method does not exist"
  7. Параметр pages в запросе отсутствует, либо неверный, либо он превышает количество страниц в ответе
    "error":"Incorrect page is set"
  8. Параметр from в запросе отсутствует, либо неверный, либо он превышает количество страниц в ответе
    "error":"Start date has wrong type. Possible format is 'Y-m-d' or timestamp"

Документация API CallTracking Tags

CallTracking API позволяет получать, добавлять и удалять теги для звонков. Для этого следует направить запрос с соответствующим методом.

Методы

Для получения и настройки тегов следует передать имя выбранного метода в параметр method. К API CallTracking с целью получения и настройки тегов следует обращаться с помощью одного из трех методов: get, set, delete.

Запросы к методу get должны включать в себя следующие параметры, и быть перечислены в указанной последовательности:

?format/version/apikey/entity/method/callid

Запросы к методам set и delete должны включать в себя также параметр tagname, и быть перечислены в указанной последовательности:
?format/version/apikey/entity/method/callid/tagname

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

Формат ответа

Формат ответа представляет из себя массив объектов тегов в формате JSON

  1. [{"id":10408,"name":"mynewtag"},{"id":3611,"name":"test2"}]

Описание полей

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

Возвращаемые значения описаны в следующем порядке:

имя параметра - описание параметра (тип данных)

Формат ошибок

В случае неуспешного запроса, вернется ответ следующего формата:

  1. }
  2. inbound: {
  3. error: "No rows found",
  4. },
  5. info: {
  6. entities: {
  7. call: ["get"],
  8. callrole: ["get"],
  9. campaign: ["get"],
  10. phone: ["get"],
  11. tag: ["get"],
  12. user: ["get"],
  13. }
  14. },
  15. types: [
  16. 0: "json",
  17. 1: "plain",
  18. 2: "csv",
  19. 3: "xml",
  20. ],
  21. versions: [
  22. 0: "v1"
  23. ],
  24. payload: []
  25. }

В данном ответе поле "info" носит информационный характер, и во всех неуспешных запросах оно будет одинаковое. Поле "payload" также во всех неудачных запросах будет пустым, что означает, что данных в ответе нет.

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


Описание возможных ошибок при запросах к API

  1. Теги не найдены
    "error": "No rows found"
  2. Параметр format в запросе отсутствует либо неверный
    "error":"Type to return is not available"
  3. Параметр version в запросе отсутствует либо неверный
    "error":"Type to return is not available"
  4. Параметр apikey в запросе отсутствует либо неверный
    "error":"User is not recognized"
  5. Параметр entity в запросе отсутствует либо неверный
    "error":"Entity does not exist"
  6. Параметр method в запросе отсутствует либо неверный
    "error":"Method does not exist"
  7. Параметр callid в запросе отсутствует либо неверный
    "error":"Call with this id is not found"