REST API определяет набор функций, с помощью которых разработчики могут совершать запросы с целью добавления, получения, изменения и удаления данных. Взаимодействие осуществляется по протоколу HTTP.

Вызов метода API - это HTTP-запрос к URL

  • http://api.comagic.ru

Различаются следующие виды HTTP-запросов:

  • GET - для получения данных
  • POST - для добавления данных
  • PUT - для изменения данных
  • DELETE - для удаления данных

В случае, если использование методов PUT и DELETE невозможно, а также если запрос GET предполагает передачу большого числа параметров, возможно сделать запрос методом POST и в параметр action передать нужный метод: GET, PUT или DELETE (детали см. ниже).

Для вызова метода необходимо сформировать запрос согласно спецификации вызываемого метода. В результате вызова метода будет возвращен результат. Спецификация метода и возвращаемого значения описана в документации метода. В качестве кодировки текстовых параметров и результата используется UTF-8. 

Каждый метод определяет набор обязательных и дополнительных параметров.

session_key - идентификатор сессии; обязательный параметр, возвращается при регистрации.

Формат возвращаемых данных определяется HTTP-заголовком Accept. Формат входных данных – заголовком Content-Type

Для авторизации используется метод login, куда передаются логин/пароль пользователя системы. В случае успешного вызова метода возвращается session_key, который будет использоваться при вызове остальных методов  API. Время жизни ключа сессии 3h.

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

Данные можно получать порциями, для этого следует использовать параметры limit, offset вызываемого метода.
Если limit, offset не заданы, то они будет выставлены в значения по умолчанию limit = 100, offset = 0 

При получении данных методом GET необходимо передавать заголовок "Accept" со значением "application/json" или "application/xml". Если заголовок не передан, то будет возвращена 502 ошибка.

Авторизация

Для авторизации в системе используется функция login.

Параметры функции

Название
Тип
Описание
login text Логин, обязательный параметр
password text Пароль, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/login/
login=login
password=password

или

GET http://api.comagic.ru/api/login/?login=login&password=password

Пример возвращаемого результата

Формат ответа для json-выдачи:

{
  "success": true,
  "data": {"session_key": "05e765dc1ac3901fe1b57b865924271d"}
}

и для xml-выдачи:

<?xml version="1.0" encoding="UTF-8" ?>
<root>
    <data type="dict">
        <session_key type="text">05e765dc1ac3901fe1b57b865924271d</session_key>
    </data>
    <success type="bool">true</success>
</root> 

Завершение сессии

Для завершения сессии используется функция logout.

Параметры функции

Название
Тип
Описание

session_key

text Идентификатор сессии, обязательный параметр

Пример вызова

GET http://api.comagic.ru/api/logout/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

{
    "data": {},
    "success": true
}

Функции, используемые только для агентского аккаунта   

Получение списка клиентов агента    

Для получения списка клиентов агента используется функция customer_list

Параметры функции

Название
Тип
Описание

session_key

text Идентификатор сессии, обязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/customer_list/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

 {
"data": [
{
"id": 1, //id клиента
"name": "Клиент агента 1", //имя клиента
"state": "waiting" //статус клиента (ожидание активации, активен, заблокирован, автозаблокирован)
},
{
"id": 2,
"name": "Клиент агента 2",
"state": "active"
}
],
"success": true
}

Получение списка тарифных планов клиентов агента 

Для получения списка возможных тарифных планов клиентов агента используется функция agent_tp.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр

Пример вызова

GET http://api.comagic.ru/api/v1/agent_tp/?session_key=d8304c4b13a7a2823a5e804a7c3f7759

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

 

{
    "data": [
        {
            "id": 125,
            "name": "Agent-Premium"
        },
        {
            "id": 124,
            "name": "Agent-Standart"
        }
    ],
    "success": true
}

Создание клиента агента

Для создания агентом клиентского аккаунта используется функция create_agent_customer. Клиент остается в статусе waiting. Что бы клиент мог начать работу с сервисом, его требуется активировать. Это можно сделать с помощью функции activate_agent_customer.

Параметры функции

Название
Тип
Описание

session_key

text Идентификатор сессии, обязательный параметр
customer_name text имя клиента, обязательный параметр
tp_id integer

id тарифного плана (можно получить с помощью agent_tp)обязательный параметр

monthly_base_limit
integer общий месячный лимит обязательный параметр
monthly_base_notify_limit
integer пороговое значение общего месячного лимита обязательный параметр
monthly_base_notify_email
text адрес для отправки уведомления о превышении общего месячного лимита или его порогового значения,обязательный параметр
monthly_calls_limit
integer месячный лимит по звонкам, обязательный параметр
monthly_calls_notify_limit
integer пороговое значение месячного лимита по звонкамобязательный параметр
monthly_calls_notify_email
text адрес для отправки уведомления о превышении месячного лимита по звонкам или его порогового значения обязательный параметр
daily_calls_limit
integer дневной лимит по звонкам обязательный параметр
daily_calls_notify_limit
integer пороговое значение дневного лимита по звонкамобязательный параметр
daily_calls_notify_email
text адрес для отправки уведомления о превышении дневного лимита по звонкам или его порогового значения,обязательный параметр
email text email клиента, обязательный параметр
password text пароль для клиента, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_agent_customer/
Accept: application/json
Content-Type: application/json
{
"session_key": "d8304c4b13a7a2823a5e804a7c3f7759",
"args": {"tp_id": 124, "customer_name": "text123", "monthly_base_limit": 10, "monthly_base_notify_limit": 10, "monthly_base_notify_email": "text@123.ru",
        "monthly_calls_limit": 10, "monthly_calls_notify_limit" : 10, "monthly_calls_notify_email" : "text@124.ru",
        "daily_calls_limit": 10, "daily_calls_notify_limit" :10, "daily_calls_notify_email": "text@125.ru", "email" :"text@126.ru", "password": "text1234"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
"data": {
    "customer_id": 5222 // id созданного клиента
},
"success": true
}

Активация клиентов

Для активации клиента используется функция activate_agent_customer. Сразу после активации с лицевого счета агента списывается плата за текущие сутки согласно тарифному плану клиента. 

Параметры функции

Название
Тип
Описание

session_key

text

Идентификатор сессии, обязательный параметр

customer_id integer

id клиента агента, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/activate_agent_customer/
                Accept: application/json
                Content-Type: application/json
                {
                "session_key": "d8304c4b13a7a2823a5e804a7c3f7759",
                "args": {
                "customer_id": 5222
                }
                }

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):
{
                    "success": true,
                    }

Управление клиентскими аккаунтами 

Для управления аккаунтами своих клиентом можно воспользоваться функциями, описанными в разделах ниже. Для этого не обязательно иметь учетную запись в аккаунте клиента, можно воспользоваться учетными данными агентского аккаунта и указать дополнительный параметр - уникальный идентификатор клиента customer_id   (получить этот идентификатор можно с помощью метода  customer_list ). Во всех функциях REST API, которые могут быть использованы таким образом, customer_id  указан в описании параметров. 

Функции получения настроек аккаунта и управления ими 

Получение списка сайтов

Для получения списка сайтов аккаунта используется функция site

Параметры функции

Название
Тип
Описание

session_key

text

Идентификатор сессии, обязательный параметр

customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/site/?session_key=05e765dc1ac3901fe1b57b865924271d

или

GET http://api.comagic.ru/api/v1/site/?session_key=2b53116eaf1767e050a55f8288bdcf6e&customer_id=3502

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
"success": true,
"data": [
{
"id": 523, // id сайта
"domain": "your.site.com" // Сайт
}
]
}

Создание сайта 

Для добавления нового сайта используется функция create_site.

Параметры функции

Название
Тип
Описание

session_key

text

Идентификатор сессии, обязательный параметр

domain text домен, обязательный параметр
user_phone text пользовательский телефон на сайте, обязательный параметр
target_call_min_duration integer минимальная длительность целевого звонка, необязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_site/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"domain": "www.testsite.com", "user_phone": "47988777574", "target_call_min_duration": 90}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {
    "data": {"id": 1175}, 
    "success": true
}

Получение списка рекламных кампаний 

Для получения списка рекламных кампаний используется функция ac .

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
site_id integer id сайта, необязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/ac/?session_key=05e765dc1ac3901fe1b57b865924271d

или при использовании необязательного параметра:

GET http://api.comagic.ru/api/v1/ac/?session_key=68c344b02d22f59294116f33fe100a60&site_id=2400

или для агента:

GET http://api.comagic.ru/api/v1/ac/?session_key=0274f6e2b618634c6a6b65dd18cc28fd&customer_id=2154

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
  "success": true,
  "data": [
    {
     "id": 128, // id рекламной кампании
     "name": "Поисковое продвижение" //Название рекламной кампании
    }
  ]
}
Возвращаемая ошибка в случае, когда сайт не принадлежит авторизованному пользователю:
{
    "message": "211400: Invalid customer for site 2400",
    "success": false
}

Создание рекламной кампании 

Для добавления новой рекламной кампании используется функция create_ac .

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

site_id integer id сайта обязательный параметр
name text наименование рекламной кампанииобязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_ac/
Accept: application/json
Content-Type: application/json
{
"session_key": "05e765dc1ac3901fe1b57b865924271d",
"args": {"customer_id": 1036, "site_id": 13421, "name": "Поисковое продвижение"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {
"data": {
"ac_id": 3941 // id созданной рекламной кампании
},
"success": true
}

В случае, когда сайт не принадлежит пользователю, возвращается следующая ошибка: 

{
"message": "100501:Database error",
"success": false
}

В случае, когда такая РК уже существует, возвращается следующая ошибка: 

{
"message": "100502:Duplicate ac name",
"success": false
}

Список условий рекламной кампании 

Возможные условия рекламной кампании:

Условие

Параметр условия

(используется в методах REST API)

OpenStat метки

  
ad-id os_ad_id
campaign-id os_campaign_id
service-name os_service_name
source-id os_source_id
UTM метки



Campaign utm_campaign
Content utm_content
Medium utm_medium
Source utm_source
Term utm_term
Другие метки

AdLense ef_id
GoogleAdwords gclid
Яндекс.Директ yclid
География Город town
Страна country
Поисковая система search_engine
Поисковый запрос search_query
Сайт referrer
Страница входа url

Получение настроек рекламной кампании 

Для получения настроек условий и привязанных номеров рекламной кампании  используется функция ac_condition .

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

id integer id рекламной кампании обязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/ac_condition/?session_key=d917c0b02081308ae3c6d932c4fd51ae&id=23342

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
"data": [
{
"ac_conditions": "[ // массив условий
 {
  \"ac_condition_group_id\":15681, // id группы условий
  \"ac_condition_group_name\":\"Группа условий 1\", // Название группы условий
  \"id\":37589, // id условия
  \"ac_parameter\":\"search_engine\", // Условие
  \"ac_operator\":\"=\", // Оператор
  \"value\":\"123\", // Значение условия
  \"is_negative\":true // Флаг: включать или исключать условие
 },
 {
  \"ac_condition_group_id\":15681,
  \"ac_condition_group_name\":\"Группа условий 1\",
  \"id\":37588,
  \"ac_parameter\":\"search_engine\",
  \"ac_operator\":\"=\",
  \"value\":\"124\",
  \"is_negative\":true
 },
 {
  \"ac_condition_group_id\":15674,
  \"ac_condition_group_name\":\"Группа условий 2\",
  \"id\":37587,
  \"ac_parameter\":\"town\",
  \"ac_operator\":\"=\",
  \"value\":\"fgfg\",
  \"is_negative\":true
 }
]",
"ac_id": 23342, // id рекламной кампании
"is_dt_enabled": true // Флаг, показывающий подключен ли динамический колл-треккинг: true - подключен хотя бы в одном из блоков; false - не подключен ни в одном из блоков

"site_blocks": "[ // Массив блоков номеров
 {
  \"id\":41338, // id блока
  \"name\":\"Блок номера 1\", // Название блока
  \"phone_type\":null, //Тип привязанного номера
  \"numb\":null, // Привязанный номер
  \"forward_numb\":null, // Номер для переадресации
  \"is_dt_enabled\":false, // Флаг, показывающий подключен ли динамический колл-треккинг для блока.
  \"dt_number_pool_numbers\":[null] // Массив номеров в пуле динамического колл-треккинг
 },
 {
  \"id\":41339,
  \"name\":\"Блок номера 2\",
  \"phone_type\":\"Comagic\",
  \"numb\":\"74951511691\",
  \"forward_numb\":null,
  \"is_dt_enabled\":true,
  \"dt_number_pool_numbers\":[
\"74951352687\",
\"74951352533\"
]
}
],
}
],
"success": true
}

Добавление группы условий в настройки рекламной кампании 

Для добавления новой группы условий в существующую рекламную кампанию используется функция  create_ac_condition_group.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

ac_id integer id рекламной кампании обязательный параметр
name text Название группы условий обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_ac_condition_group/
Accept: application/json
Content-Type: application/json
{
"session_key": "9dc5484d38838d0d10d3c08f4365413f",
"args": { "ac_id": 13039, "name" : "Группа условий 1"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
"data": {
    "ac_condition_group_id": 15764 // id созданной группы условий
},
"success": true
}

Добавление условия в настройки рекламной кампании 

Для добавления нового условия в существующую рекламную кампанию используется функция create_ac_condition .

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

ac_condition_group_id integer id группы условий рекламной кампанииобязательный параметр
ac_parameter text Параметр условия (например search_engine, search_query, ef_id и т.д.)обязательный параметр
ac_operator text Оператор условия (равно: = , регулярное выражение: ~, включает: sub)обязательный параметр
value text Значение условия обязательный параметр
is_negative boolean Флаг отрицания оператора (true - условие исключаем; false - условие включаем)обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_ac_condition/
Accept: application/json
Content-Type: application/json
{
"session_key": "9dc5484d38838d0d10d3c08f4365413fe",
"args": {"ac_condition_group_id": 15765, "ac_id": 13039, "ac_parameter": "search_engine", "ac_operator": "=", "value" : "test", "is_negative": "true"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
"data": {
    "ac_condition_id": 37777 // id созданного условия
},
"success": true
}

Удаление условия из настроек рекламной кампании 

Для удаления условия из настроек существующей рекламной кампании используется функция delete_ac_condition.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

ac_id integer id рекламной кампании обязательный параметр
ac_condition_id integer id условияобязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/delete_ac_condition/
Accept: application/json
Content-Type: application/json
{
"session_key": "1e7c9819032561638717e40b1de68849",
"args": {"ac_condition_id": 37777, "ac_id": 13039}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
"success": true
}

Получение списка тегов 

Для получения списка тегов используется функция tag .

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/tag/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "success": true,
 "data": [
   {
    "id": 87, // id тега
    "name": "Target visitor" // Название тега
   }
  ]
}

Получение списка виртуальных номеров 

Получить список виртуальных номеров можно с помощью функции virtual_numbers.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer id клиента агентаиспользуется только в агентских аккаунтах и является обязательным параметром для них
type text Фильтр по типу номеров
phone_number string Фильтр по конкретному номеру
status string Фильтр по статусу номера

Пример вызова функции

GET
http://api.comagic.ru/api/v1/virtual_numbers/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
    "success": true,
    "data": [
    {
        "phone_number": "number", //
        "activation_date": "string", //
        "category": "string", //
        "type": "string", // - VA, , Analytics ( )
        "monthly_charge": "number", //
        "status": "string", //
        "site": { //
            "site_id": "number",
            "site_domain_name": "string"
        },
        "campaign": { //
            "campaign_id": "number",
            "campaign_name": "string"
        }
    }]
}

Покупка номера 

Купить номер можно с помощью функции buy_number.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer id клиента обязательный параметр
region text код номерной ёмкости ('7495', '7499')обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/buy_number/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"customer_id": 1036, "region": "7495"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {
    "data": {
        "numb": "74952367991"
    }, 
    "success": true
}

Настройка переадресации  

Задать переадресацию на номер можно с помощью функции  create_dialing_operation.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
comagic_phone text номер из номерной ёмкости Comagic обязательный параметр
user_phone text пользовательский телефон, на который будет выполняться переадресацияобязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_dialing_operation/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"comagic_phone": "74955551111", "user_phone": "74955552222"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {"success": true}

Получение списка сценариев

Для получения списка сценариев используется функция scenarios.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer ID клиента, используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET
http://api.comagic.ru/api/v1/scenarios/?session_key=05e765dc1ac3901fe1b57b865924271d
Accept: application/json

Пример возвращаемого результата

{
    "success": true,
    "data": [
      {
        "id": "number",
        "name": "string",
        "virtual_number": [
            "virtual_phone_number" 
        ]
      }
    ]
}
        

Создание списка АОНов 

Для добавления нового списка АОНов используется функция  create_numa_list.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer

ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

name text Название списка АОНов, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/create_numa_list/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"customer_id": "1", "name": "test"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {
 "success": true, 
 "data": {
   "numa_list_id": 555 // id созданного списка АОНов
  }
}

Добавление номера в список АОНов 

Для того что бы добавить номер в список АОНов, используется функция add_number_to_numa_list.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer

ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

numa_list_id integer ID списка АОНов, обязательный параметр
number text АОН, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/add_number_to_numa_list/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"customer_id": "1", "numa_list_id": "1", "number": "74951234567"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {"success": true}

Удаление номера из списка АОНов 

Для удаления номера из списка АОНов используется функция  remove_number_from_numa_list.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer ID клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

numa_list_id integer ID списка АОНов, обязательный параметр
number text АОН, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/remove_number_from_numa_list/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"customer_id": "1", "numa_list_id": "123", "number": "74951234567"}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

 {"success": true}

Получение пользовательских звуковых файлов

Функция media_files возвращает список пользовательских звуковых файлов

Поля ресурса

Параметр
Тип
Обязательный
Описание
id integer - ID медиа-файла
customer_id integer - ID Клиента которому принадлежит медиа-файл
name string - Название медиа-файла. Уникально в рамках одного клиента.
duration string - Длительность медиа-файла
size integer - Размер медиа-файла в байтах.
modify_time integer - Таймстамп без учёта таймзоны. По умолчанию таймзона Europe/Moscow
is_normalize boolean - Нормализация файла.

JSON структура

{
    "data": [{
        "id": "integer",
        "customer_id": "integer",
        "name": "string",
        "duration": "string",
        "size": "integer",
        "modify_time": "integer",
        "is_normalize": "boolean"
    }],
    "success": true
}
      

Дополнительные критерии фильтрации

Название
Обязательный
Назначение
name НЕТ Название меди-файла. Поиск по названию префиксный.
customer_id НЕТ Уникальный идентификатор заказчика

Пример вызова функции

GET http://api.comagic.ru/api/v1/media_files?session_key=<session_id>

Пример возвращаемого результата

{
    "data": [
        {
            "id": "1",
            "customer_id": "52",
            "name": "Test",
            "duration": "00:00:10",
            "size": "200",
            "modify_time": "1234566778990",
            "is_normalize": "true"
        }, {
            "id": "2",
            "customer_id": "52",
            "name": "Test",
            "duration": "00:00:10",
            "size": "300",
            "modify_time": "1234566778990",
            "is_normalize": "true"
        }
    ],
    "success": true
}
      

Получение информации по одному пользовательскому звуковому файлу

Пример вызова функции

GET http://api.comagic.ru/api/v1/media_files?session_key=<session_id>&name=<name_mediaFile>

Пример возвращаемого результата

{
    "data": [
        {
            "id": "1",
            "customer_id": "52",
            "name": "Test",
            "duration": "00:00:10",
            "size": "200",
            "modify_time": "1234566778990",
            "is_normalize": "true"
        }
    ],
    "success": true
}

Получение системных звуковых файлов

Функция system_media_files используется для получения списка системных звуковых файлов

Поля ресурса

Параметр
Тип
Обязательный
Описание
id integer - ID медиа-файла
name string - Название медиа-файла
duration string - Длительность медиа-файла
modify_time integer - Таймстамп без учёта таймзоны. По умолчанию таймзона Europe/Moscow

JSON структура

{
    "data": [
         {
             "id": "integer",
             "name": "string",
             "duration": "string",
             "modify_time": "integer"
        }
    ],
    "success": true
}

Дополнительные критерии фильтрации

Название
Обязательный
Назначение
name НЕТ Название меди-файла. Поиск по названию префиксный.

Пример вызова функции

GET http://api.comagic.ru/api/v1/system_media_files?session_key=<session_id>

Пример возвращаемого результата

{
    "data": [
        {
            "id": "1",
            "name": "Test",
            "duration": "00:00:10",
            "modify_time": "1234566778990",
        }, {
            "id": "2",
            "name": "Test",
            "duration": "00:00:10",
            "modify_time": "1234566778990",
        }
    ],
    "success": true
}

Пример вызова функции

GET http://api.comagic.ru/api/v1/system_media_files?session_key=<session_id>&name=<name_mediaFile>

Пример возвращаемого результата

{
    "data": [
        {
             "id": "1",
             "name": "Test",
             "duration": "00:00:10",
             "modify_time": "1234566778990",
        }
    ],
    "success": true
}

Получение информации о сотруднике 

Для получения информации о сотруднике используется функция  employee.

Параметры функции

Название
Тип
Описание

session_key

text

Идентификатор сессии, обязательный параметр

id

integer

id сотрудника, необязательный параметр

sip_line text SIP-логин сотрудника, необязательный параметр
last_name text Фамилия сотрудника, необязательный параметр
first_name text Имя сотрудника, необязательный параметр
patronymic text Отчество сотрудника, необязательный параметр

customer_id

integer id клиента, используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/employee/?session_key=05e765dc1ac3901fe1b57b865924271d&id=5338

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):  

 {
    "data": [
        {
            "id": 5338,
            "last_name": "Иванов",
            "first_name": "Иван",
            "patronymic": "Петрович",
            "email": "ivanov@fake.com",
            "full_name": "Иванов Иван Петрович",
            "is_consultant_operator_active": true, 
            "extension": "43",
            "phones": ["74951119111", "060060"]
        }
    ],
    "success": true
 }

Получение списка SIP-линий клиента 

Для получения информации по SIP-линиям sip_lines.

Параметры функции

Название
Тип
Описание

session_key

text

Идентификатор сессии, обязательный параметр

phone

integer

Номер SIP-линии. Необязательный параметр.

customer_id

integer id клиента, используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/sip_lines/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):  

 {
    "data": [
       {
         "channels_count": 79, //Количество каналов в линии
         "employee_id": [1234], //Массив ID сотрудников, котором принадлежит SIP линия
         "protocol": "SIP", //Тип протокола. Возможные значения: SIP
         "logical_state": "Не авторизован", //Логическое состояние. Возможные значения: "Доступен", "Не беспокоить", "Не авторизован"
         "forwarding_timeout": 60, //Время дозвона по номеру
         "calls_count": 5, //Общее количество вызовов
         "sum_calls_duration": 201, //Общая продолжительность вызовов, в секундах
         "physical_state": "Не зарегистрирован", //Физическое состояние. Возможные значения: "Зарегистрирован", "Не зарегистрирован", "Не доступен"
         "phone": "0620", //Номер телефона sip-терминала
         "additional_calling_number": null, //АОН при исходящем вызове
         "customer_id": 1234, //ID Клиента которому пренадлежит SIP линия
         "type": "Рабочий", //Тип номера. Возможные значения: "Домашний", "Мобильный", "Рабочий", "Факс"
         "id": 10572, //ID SIP линии
         "billing_state": "active" //Состояние в биллинге. Возможные значения: "waiting", "active", "manual_lock", "limit_lock", "debt_lock", "archive",
          "freeze", "cleaning", "prereserved", "reserved", "free"
      }
    ],
    "success": true
 }

Функции для получения/изменения данных в отчетах 

Получение статистики по сайту 

Функция stat возвращает статистику по сайту.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
site_id integer id сайта обязательный параметр
date_from text

Дата и время начала периода выборки данных обязательный параметр.

Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

date_till text

Дата и время окончания периода выборки данных обязательный параметр.

Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

ac_id integer id рекламной кампании (-1 для получения данных без РК) , необязательный параметр
customer_id integer

id пользователя,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/stat/?session_key=05e765dc1ac3901fe1b57b865924271d&site_id=2400&date_from=2013-02-15%2000:00:00&date_till=2013-03-31%2023:59:59

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
 "success": true,
 "data": [
    {
     "url": "your.site.com",  // Сайт
     "visits_count": 48, // Количество посещений
     "calls_count": 10, // Количество звонков
     "sitephone_calls_count": 2, // Количество звонков через сайтфон
     "good_chats_count": 35, // Количество состоявшихся чатов
     "offline_messages_count": 3 // Количество заявок
     "goals_count": 10 // Количество достигнутых целей
    }          
   ]
}

Получение списка обращений 

Для получения списка всех обращений используется функция communication

Параметры функции

Название
Тип
Описание
session_key Идентификатор сессии, обязательный параметр
customer_id integer

id клиента,

используется только в агентских аккаунтах и является обязательным параметром для них

site_id integer id сайта обязательный параметр
date_from text

Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

date_till text Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
ac_id integer

id рекламной кампании  (-1 для получения данных без РК),необязательный параметр

tag_id integer id метки ,необязательный параметр
show_not_goal boolean

true - возвращает все обращения (по умолчанию);

false - возвращает только те обращения, которые не отмечены тегом "Нецелевой контакт";

необязательный параметр

only_first boolean

true - возвращает только первичные коммуникации;

false - возвращает все обращения (по умолчанию);

необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/communication/?session_key=05e765dc1ac3901fe1b57b865924271d&site_id=2400&ac_id=513&date_from=2013-05-13%2000:00:00&date_till=2013-06-01%2023:59:59

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
    "data": [
        {
            "communication_type": "chats",          // тип коммуникации(calls, chats, offline_massages, goals)
            "date_time": "2014-08-04 10:47:29",     // дата и время обращения
            "id": 1747129                           // id обращения 
        },
        {
            "communication_type": "calls",
            "date_time": "2014-08-04 14:19:55.763",
            "id": 2063059
        },
    ],
    "success": true
}

Получение информации о достигнутых целях 

Функция goal возвращает информацию о достигнутых целях.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
site_id integer Id сайта обязательный параметр
date_from timestamp

Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

date_till timestamp Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
customer_id integer id пользователя,

используется только в агентских аккаунтах и является обязательным параметром для них

id integer id цели , необязательный параметр
ac_id integer id рекламной кампании  (-1 для получения данных без РК) , необязательный параметр
tag_id integer id тега , необязательный параметр
visitor_id integer id посетителя, необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/goal/?session_key=614c6619c516539664baede995bfa94f&site_id=2400&date_from=2014-12-01%2000:00:00&date_till=2014-12-23%2023:59:59

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
 "data": [
   {
    "id": 7074425, // id обращения
    "name": "chat", // имя цели
    "start_time": "2014-12-22 13:43:44", // Время начала события
    "tag_id_array": [ // Массив id установленных тегов
      1555
     ], 
    "communication_number": 14, // Номер обращения (рассчитывается в пределах персоны по всем типам коммуникаций)
    "site_id": 2400, // id сайта
    "ac_id": null, // id рекламной кампании
    "visitor_id": 76183561, // id посетителя
    "new_visitor": true, // тип посетителя
    "visits_count": 1, / Общее количество посещений посетителя 
    "other_adv_contacts": false, // Флаг показывает заходил ли посетитель (в пределах персоны) по другим рекламным кампаниям
    "country": null, // Страна
    "region": null, // Регион
    "city": null, // Город
    "first_ac_name": null, // id первой рекламной кампании
    "search_engine": null, // Поисковая система
    "search_query": null, // Поисковый запрос
    "enter_page": "http://siteapp.web.dev.uiscom.ru/", // Адрес посадочной страницы
    "referrer_domain": null, // Домен, с которого был сделан переход
    "referrer": null, // Адрес страницы, с которой был сделан переход
    "ua_client_id": null, // User ID Universal Analytics
    "utm_campaign": null, // Значения меток utm
    "utm_content": null,
    "utm_medium": null,
    "utm_source": null,
    "utm_term": null,
    "os_ad_id": null, // Значения меток OpenStat
    "os_campaign_id": null,
    "os_service_name": null,
    "os_source_id": null,
    "gclid": null, // Значения метки gclid
    "yclid": null, // Значения метки yclid
    "ef_id": null, // Значение метки ef_id
    "session_id": 117136827, // id сессии
    "sale_date": null, // Дата сделки
    "sale_cost": null, // Сумма сделки
    "last_query": null // Подтянутый поисковый запрос
   }
}

Получение информации о всех звонках

Функция call возвращает информацию по звонкам.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
direction text Направление звонка, необязательный параметр
Возможные значения: in - Входящие звонки, out - Исходящие звонки Если параметр не передан, то будут получены как входящие, так и исходящие звонки.
date_from text Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till text Дата и время окончания периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
id integer id звонка, необязательный параметр
site_id integer id сайта , необязательный параметр
ac_id integer

id рекламной кампании  (-1 для получения данных без РК), необязательный параметр

tag_id integer id метки , необязательный параметр
visitor_id integer id посетителя, необязательный параметр
numa text Номер, с которого совершили звонок , необязательный параметр
numb text Номер, на который совершили звонок , необязательный параметр
customer_id integer id пользователя,

используется только в агентских аккаунтах и является обязательным параметром для них

Пример вызова функции

GET http://api.comagic.ru/api/v1/call/?session_key=05e765dc1ac3901fe1b57b865924271d&date_from=2014-12-10%2017:10:00&date_till=2014-12-10%2017:20:00

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "data": [
   {
    "id": 805338, // id обращения
    "call_date": "2014-12-10 17:17:14.055", // Время звонка
    "session_start": null, // Время начала сессии, связанной со звонком
    "communication_type": "call", // Тип звонка: call - обычный звонок, sitephone - звонок с сайтфона
    "status": "normal", // Статус звонка (принятый(normal)/пропущенный(lost))
    "numa": "79201212122", // С какого номера звонили (АОН)
    "numb": "74993343434", // На какой номер звонили (номер услуги)
    "wait_time": 0, // Время ожидания
    "duration": 13, // Продолжительность разговора
    "file_link": [], // Ссылка на запись разговора,
    "operator_name": "Сидоров", // Оператор
    "coach_name": null, // Тренер
    "scenario_name": "Действующий клиент", // Название сценария 
    "is_transfer": false, // Трансфер
    "tags": [ // Массив id установленных тегов
      88,
      212
     ],
    "communication_number": 18, // Номер обращения (рассчитывается в пределах персоны по всем типам коммуникаций)
    "site_id": 2111, // id сайта
    "ac_id": 2346, // id рекламной кампании
    "visitor_id": 5913594, // id посетителя
    "visitor_type": "Вернувшийся", // Тип посетителя
    "visits_count": 3, // Общее количество посещений посетителя
    "other_adv_contacts": false, // Флаг показывает заходил ли посетитель (в пределах персоны) по другим рекламным кампаниям
    "country": "Россия", // Страна
    "region": "Москва", // Регион
    "city": null, // Город
    "visitor_first_ac": 2305, // id первой рекламной кампании
    "search_engine": null, // Поисковая система
    "search_query": null, // Поисковый запрос
    "page_url": null, // Адрес посадочной страницы
    "referrer_domain": null, // Домен, с которого был сделан переход
    "referrer": null, // Адрес страницы, с которой был сделан переход
    "ua_client_id": null, // User ID Universal Analytics
    "utm_campaign": null, // Значения меток utm
    "utm_content": null,
    "utm_medium": null,
    "utm_source": null,
    "utm_term": null,
    "os_ad_id": null, // Значения меток OpenStat
    "os_campaign_id": null,
    "os_service_name": null,
    "os_source_id": null,
    "gclid": null, // Значение метки gclid
    "yclid": null, // Значение метки yclid
    "ef_id": null, // Значение метки ef_id
    "session_id": 117136827, // id сессии
    "sale_date": null, // Дата сделки
    "sale_cost": null, // Сумма сделки
    "direction": in, // Направление звонка. in - Входящий, out - Исходящий
    "last_query": null, // Подтянутый поисковый запрос
    "is_visitor_by_numa": false // Флаг показывает подтянута сессия или нет: true - сессия подтянута с предыдущего посещения, false - сессия не была подтянута
   }
  ],
 "success": true
}

Получение информации о входящих плечах звонка 

Функция get_cdr_in возвращает входящие звонки и связанные с ними исходящие звонки за заданный интервал времени.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

call_session_id number Идентификатор сессии звонка, необязательный параметр. См метод Получение информации о звонках и параметр "id"
date_from text Дата и время начала периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till text Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
id integer id плеча звонка, необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/get_cdr_in/?session_key=1e7c9819032561638717e40b1de68849&date_from=2014-11-27%2000:00:00&date_till=2014-11-28%2023:59:59

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

 {
    "data": [
               {
            "cdr_id": 21852403,                         // id соответствующей записи для входящего вызова; если null, то это входящий звонок
            "connect_time": "2014-11-27 22:38:13",      // момент установления соединения –
          дата и время московское, с точностью до секунд. Для несостоявшихся вызовов, атрибут принимает значение null
            "duration": 75,                             // Продолжительность разговора, в секундах
            "file_link": "http://app.comagic.ru/system/media/talk/?key=9179a62fa2448e46ecf71122b73459e4&cdr_id=21852403",   //Ссылка на запись разговора
            "id": 21852404,                             // id разговора
            "is_lost": false,                           // статус звонка (пропущенный, состоявшийся)
            "numa": "74954220786",                      // С какого номера звонили
            "numb": "79265564454",                      // На какой номер звонили
            "setup_time": "2014-11-27 22:38:04"         // момент поступления сигнализации о вызове – дата и время московское, с точностью до секунд
        },
        {
            "cdr_id": null,                             // входящий звонок
            "connect_time": "2014-11-27 22:38:13",
            "duration": 75,
            "file_link": "http://app.comagic.ru/system/media/talk/?key=9179a62fa2448e46ecf71122b73459e4&cdr_id=21852403",
            "id": 21852403,
            "is_lost": false,
            "numa": "74954220786",
            "numb": "74951252116",
            "setup_time": "2014-11-27 22:38:04"
        }
]
}

Получение информации об исходящих плечах звонка 

Функция get_cdr_out возвращает исходящие звонки за заданный интервал времени.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

call_session_id number Идентификатор сессии звонка, необязательный параметр. См метод Получение информации о звонках и параметр "id"
date_from text Дата и время начала периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till text Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

Пример вызова функции

GET http://api.comagic.ru/api/v1/get_cdr_out/?session_key=05e765dc1ac3901fe1b57b865924271d&date_from=2013-07-10%2008:00:00&date_till=2013-07-20%2023:59:59

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

 {
 "data": [
   {
    "id": 284430, // id разговора
    "cdr_id": null, // id соответствующей записи для исходящего вызова; если null, то это исходящий звонок
    "sip_line": "060406", // Номер SIP-линии
    "numa": "74950000000", // Номер абонента (АОН)
    "numb": "7495000000", // Номер услуги
    "setup_time": "2014-09-01 15:00:03", // Момент поступления сигнализации о вызове – дата и время московское, с точностью до секунд
    "connect_time": "2014-09-01 15:00:33", // Момент установления соединения – дата и время московское, с точностью до секунд. Для несостоявшихся вызовов, атрибут принимает значение null
    "duration": 1, // Продолжительность разговора, в секундах
    "is_lost": false, // Статус звонка (пропущенный, состоявшийся)
    "file_link": "http://app.comagic.ru/system/media/talk/?key=f444a6b5c8e8fc11f5832416dc176a97&cdr_id=284430" //Ссылка на запись разговора
   }, 
   {
    "id": 284434,
    "cdr_id": 284430,
    "sip_line": "060401",
    "numa": "74950000000",
    "numb": "79200000000",
    "setup_time": "2014-09-01 15:00:26",
    "connect_time": "2014-09-01 15:00:33",
    "duration": 1,
    "is_lost": false,
    "file_link": "http://app.comagic.ru/system/media/talk/?key=dr44ad45c8e8fc11f5790416dc176s34&cdr_id=284434"
   }
  ],
 "success": true
}

Получение информации о чатах 

Функция chat возвращает информацию по чатам.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

site_id integer id сайта, необязательный параметр
tag_id integer id метки, необязательный параметр
visitor_id integer id посетителя, необязательный параметр
user_id integer id оператора, необязательный параметр
date_from text Дата и время начала периода выборки данных, необязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till text Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
ac_id integer Идентификатор рекламной кампании, необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/chat/?session_key=05e765dc1ac3901fe1b57b865924271d&date_from=2013-06-14%2012:00:00&date_till=2013-06-14%2013:00:00&ac_id=123

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "success": true,
 "data": [
   {
    "id": 6134, // id чата,
    "status": "succeed", // Статус чата: lost - потерянный, succeed - состоявшийся, refused - отклоненный
    "initiator": "Посетитель", // Инициатор чата: Посетитель, Оператор, Автоприглашение
    "start_time": "2013-06-14 12:52:32", // Время начала чата
    "answer_interval": "00:00:00", // Интервал ответа
    "duration": 644, // Продолжительность чата
    "employee_id": 734, // id сотрудника
    "operator_name": "Иванов Пётр",
    "tags": [ // Массив установленных тегов 
      {
       "id", 143, 
       "tag": "target call"
      }
     ], 
    "communication_number": 1, // Номер обращения (рассчитывается в пределах персоны)
    "messages_count": 3, // Количество сообщений в чате
    "operator_message_count": 2, // Количество сообщений оператора в чате
    "visitor_message_count": 1, // Количество сообщений посетителя в чате
    "site_id": 71, // id сайта
    "ac_id": 123, // Идентификатор рекламной кампании
    "visitor_id": 9781, // id посетителя
    "visitor_type": "Вернувшийся", // Тип посетителя
    "visits_count": 2, // общее количество посещений посетителя
    "other_adv_contacts": true, // Флаг показывает заходил ли посетитель (в пределах персоны) по другим рекламным кампаниям
    "country": "Россия", // Страна
    "region": "Москва", // Регион
    "city": "Москва", // Город
    "visitor_first_ac": -1, // id первой рекламной кампании (-1 - без рекламной кампании)
    "search_engine": "google", // Поисковая система
    "search_query": "The best service", // Поисковый запрос
    "page_url": "http://siteapp2.web.dev.uiscom.ru/", // Адрес посадочной страницы
    "referrer_domain": null, //Домен, с которого был сделан переход
    "referrer": "", // Адрес страницы, с которой был сделан переход
    "ua_client_id": "", // User ID Universal Analytics
    "utm_source": "", // utm-метки
    "utm_medium": "",
    "utm_term": "",
    "utm_content": "",
    "utm_campaign": "",
    "os_ad_id": null, // Значения меток OpenStat
    "os_campaign_id": null,
    "os_service_name": null,
    "os_source_id": null,
    "gclid": null, // Значение метки gclid
    "yclid": null, // Значение метки yclid
    "ef_id": "", // Значение метки ef_id
    "session_id",: 117136827 // id сессии
    "sale_date": null, // Дата сделки
    "sale_cost": null, // Сумма сделки
    "last_query": null // Подтянутый поисковый запрос
   }
  ]
}

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

Функция chat_messages  возвращает сообщения чата.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии,  обязательный  параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

chat_id integer  id чата обязательный  параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/chat_messages/?session_key=05e765dc1ac3901fe1b57b865924271d&chat_id=3774711

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "success": true,
 "data": [
   {
    "id": 90021, // id сообщения
    "sourse": "Оператор", // От кого сообщение (оператор/посетитель)
    "user_id": 612, // id оператора
    "message": "Can I help you?", // Сообщение
    "date_time": "2013-09-01 12:36:24" // Время отправки сообщения
   },
   {
    "id": 90022, 
    "sourse": "Посетитель", 
    "message": "I believe you can.", 
    "date_time": "2013-09-01 12:36:26"
   }
}

Получение информации о заявках 

Функция offline_message возвращает информацию по заявкам.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии,  обязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

site_id integer id сайта , необязательный параметр
tag_id integer id метки , необязательный параметр
visitor_id integer id посетителя, необязательный параметр
date_from text Дата и время начала периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till text Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
ac_id integer Идентификатор рекламной кампании, необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/offline_message/?session_key=05e765dc1ac3901fe1b57b865924271d&date_from=2014-12-09%2008:00:00&date_till=2014-12-09%2020:00:00&ac_id=123

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "success": true,
 "data": [
   {
    "id": 6134, // Id заявки,
    "date_time": "2014-12-09 14:26:49", // Дата и время получения заявки
    "phone": "79129812850", // Телефон, оставленный посетителем в заявке
    "email": "Ms_oksana@inbox.ru", // E-mail адрес, оставленный посетителем в заявке
    "message": "Help us...", // Текст заявки
    "status": "Не обработано" // Статус заявки
    "operator_name": null, // Оператор, обработавший заявку
    "operator_comment": null, // Комментарий, оставленный оператором при закрытии заявки
    "tags": [  // Массив установленных тегов
      {
       "id", 143, // id тега
       "tag": "target chat" // Название тега
      }
     ],
    "communication_number": 1, // Номер обращения (рассчитывается в пределах персоны)
    "site_id": 71, // Id сайта
    "ac_id": 123, // Идентификатор рекламной кампании
    "visitor_id": 9781, // Id посетителя
    "visitor_type": "Новый", // Тип посетителя
    "visits_count": 1, // общее количество посещений посетителя
    "other_adv_contacts": true, // Флаг показывает заходил ли посетитель (в пределах персоны) по другим рекламным кампаниям
    "country": "Россия", // Страна
    "region": "Москва", // Регион
    "city": null, // Город
    "visitor_first_ac": 147, // id первой рекламной кампании
    "search_engine": "google", // Поисковая система
    "search_query": "The best service", // Поисковый запрос
    "page_url": "", // Полный адрес посадочной страницы
    "referrer_domain": null, //Домен, с которого был сделан переход
    "referrer": "", // Полный адрес страницы, с которой был сделан переход
    "ua_client_id": "", // User ID Universal Analytics
    "utm_source": null, // utm-метки
    "utm_medium": null,
    "utm_term": null,
    "utm_content": null,
    "utm_campaign": null,
    "os_ad_id": null, // Значения меток OpenStat
    "os_campaign_id": null,
    "os_service_name": null,
    "os_source_id": null,
    "gclid": null, // Значение метки gclid
    "yclid": null, // Значение метки yclid
    "ef_id": "", // Значение метки ef_id
    "session_id": 117136827, // id сессии
    "sale_date": null, // Дата сделки
    "sale_cost": null, // Сумма сделки
    "name": "test", // Имя посетителя
    "last_query": null // Подтянутый поисковый запрос

   }
  ]
}

Установка тега обращению 

С помощью функции tag_communication можно установить обращению определенный тег. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

object_id integer id коммуникации, обязательный параметр
object_type text тип коммуникации ('cdr_in', 'sitephone', 'offline_message', 'chat', 'goal'),  обязательный параметр
mark_id integer id тэга, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/tag_communication/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"object_id": 1234, "object_type":"chat", "mark_id": 234}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

 {"success": true}

 Установка тега "Продажа" 

Функция tag_communication_sale устанавливает для обращения тег Продажа, а так же дату и сумму сделки.

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

object_id integer id коммуникации, обязательный параметр
object_type text тип коммуникации ('cdr_in', 'sitephone', 'offline_message', 'chat', 'goal'),  обязательный параметр
cost float сумма сделки, обязательный параметр
date_time timestamp дата/время сделки,  обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/tag_communication_sale/
Accept: application/json
Content-Type: application/json
{
 "session_key": "05e765dc1ac3901fe1b57b865924271d",
 "args": {
   "object_id": 1234, 
   "object_type":"cdr_in", 
   "cost": 500, 
   "date_time": "2014-12-11"
  }
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{"success": true}

Удаление тега у обращения 

Функция untag_communication удаляет у обращения проставленный ранее тег. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессииобязательный параметр
customer_id integer

id клиента агента,

используется только в агентских аккаунтах и является обязательным параметром для них

object_id integer id коммуникации, обязательный параметр
object_type text тип коммуникации ('cdr_in', 'sitephone', 'offline_message', 'chat', 'goal'),  обязательный параметр
mark_id integer id тэга, обязательный параметр

Пример вызова функции

POST http://api.comagic.ru/api/v1/untag_communication/
Accept: application/json
Content-Type: application/json
{
   "session_key": "05e765dc1ac3901fe1b57b865924271d",
   "args": {"object_id": 1234, "object_type":"chat", "mark_id": 234}
}

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{"success": true}

Получение id персоны по id посетителя 

Функция person_by_visitor возвращает всех посетителей, которые были объединены в одну группу с указанным в параметрах вызова функции посетителем. Объединение посетителей в одну персону происходит автоматически, если они звонили с одного номера или авторизовались под одним логином.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

id integer Id посетителяобязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/person_by_visitor/?session_key=8acaa78da17444d0dc38914a91a71e35&id=66203752

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
    "data": [  
    {
        "result": 11359606 // id персоны
    }],
    "success": true
}

Получение списка посетителей, объединенных в персону 

Функция visitors_by_person возвращает список всех посетителей, объединенных в указанную персону.

Параметры функции

Название
Тип
Описание
session_key  text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

id integer Id персоны обязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/visitors_by_person/?session_key=8acaa78da17444d0dc38914a91a71e35&id=11359606

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
    "data": [  
    {
        "result": "[10935474,11391486,11391591,11392693,11709128,32808441,33401301,50752236,55269300,61647580,61647891,61648464,61653017,66203752]" // Массив id посетителей
    }],
    "success": true
}

Получение информации по посетителю 

Функция visitor/<visitor_id> возвращает информацию по посетителю: имя, компанию, номера телефонов, адреса электронной почты, установленные свойства, список рекламных кампаний, по которым были переходы, и общее количество посещений. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

visitor_id integer Id посетителяобязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/visitor/123456/?session_key=05e765dc1ac3901fe1b57b865924271d

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):

{
 "success": true,
 "data": [
   {
    "id": 123456, // Id посетителя
    "name": "Smith", // ФИО посетителя
    "phone": [ // Список телефонов
       "74952222222",
       "74951111111"
      ],                                 
     "email": [ // Список E-mail адресов
       "vasya@babaevich.ru",
       "vasya@job.ru"
      ],
    "company": "Oil Ltd", // Компания
    "commentary": "Nice guy", // Комментарий
    "custom_fields": "{ // свойства посетителя
       "name": "value", // название и значение свойства
       "name2": "value2", 
       "name3": "value3"
      }",
    "site_id": 2400 // id сайта
    "acs": "[ / Массив рекламных кампаний, по которым были заходы у посетителя
       {
        \"id\":9598, // id рекламной кампании
        \"name\":\"Посещение\", // имя рекламной кампании
        \"is_removed\":false // флаг, показывает была ли удалена рекламная кампания или она действующая
       }
      ]", 
    "visits_count": 15, // Количество посещений
    "visitor_first_ac": 147, // id первой рекламной кампании
    "session_ids": [ // Список id сессий посетителя
       9860507,
       9858425,
       9857195,
       9856608,
       9856273
      ],
  }
  ]
}

 Получение информации о сессии посетителя

Функция  session_info возвращает информацию о посещении посетителя: дату и время посещения, страну, город, ip-адрес посетителя, его браузер, операционную систему, рекламную кампанию, поисковые запрос и систему, источник перехода, метки, информацию о посещенных страницах и об обращениях.

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

session_id integer Id сессии обязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/session_info/?session_key=1540714a17fd6e2053ed00f55df98f3d&session_id=9860507

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
 "data": [
   {
    "start_time": "2015-02-20 17:49:09", //Время начала сессии
    "browser_name": "Chrome", // Браузер
    "browser_version": "40.0", // Версия браузера
    "country": "Россия", // Страна
    "region": "Москва", // Регион
    "city": "Москва", // Город
    "ip": "123.456.78.91", // IP-адрес посетителя
    "referrer": null, // Источник перехода
    "search_engine": "yandex", // Поисковая система
    "search_query": "бесплатный звонок с компьютера на телефон", // Поисковый запрос
    "entrance_page": "http://comagic.ru/services/sitephone/index_new.php?k50id=010000002557372301_&cm_id1=test", // Страница входа
    "hits": "[ // Список посещенных страниц
      {
       \"hit_time\":\"2015-02-20 17:49:09\", //Время перехода на страницу
       \"duration\":\"00:02:03\", // Длительность посещения страницы
       \"url\":\"http://comagic.ru/services/sitephone/index_new.php?k50id=010000002557372301_&cm_id1=test\" //Адрес страницы
      },
      {
       \"hit_time\":\"2015-02-20 17:51:12\",
       \"duration\":\"00:02:55\",
       \"url\":\"http://comagic.ru/prices/\"
      }
     ]",
    "ua_client_id": null, // User ID Universal Analytics
    "utm_campaign": "CoMagic_Moskva_Spets|8996856", // utm-метки
    "utm_content": "k50id|010000002557372301_|cid|8996856|gid|433383468|aid|515102165|adp|no|kw|бесплатный звонок|pos|premium2|main",
    "utm_medium": "cpc",
    "utm_source": "yandex",
    "utm_term": "бесплатный звонок",
    "os_ad_id": "515102165", // Open-stat метки
    "os_campaign_id": "8996856",
    "os_name": "Windows",
    "os_service_name": "direct.yandex.ru",
    "os_source_id": "yandex.ru:premium",
    "os_version": "7",
    "yclid": "5834521583638743150", // Значение метки yclid
    "gclid": null, // Значение метки gclid
    "ef_id": null, // Значение метки ef_id
    "communications": "[ // Список обращений
      {
       \"id\":1090347, // id обращения
       \"communication_type\":\"chat\", // Тип обращения
       \"start_time\":\"2015-02-20 17:51:15\" //Время обращения
      },
      {
       \"id\":1090342,
       \"communication_type\":\"chat\",
       \"start_time\":\"2015-02-20 17:49:46\"
      }
     ]"
   }
  ],
 "success": true
}

Получение первичной информации для формирования отчета о ROI

Функция  advertising_sales возвращает первичную информацию для формирования отчета: количество посещений, обращений, продаж, сумму продаж и, если кампания интегрирована с Яндекс.Директом или Google AdWords, расходы. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является  обязательным параметром для них

site_id integer id сайтаобязательный параметр
date_from timestamp Дата и время начала периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till timestamp Дата и время окончания периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
only_first boolean

true - возвращает только первичные обращения(по умолчанию);

false - возвращает все обращения;

необязательный параметр

only_quality boolean

true - возвращает только качественные обращения (по умолчанию);

false - возвращает все обращения;

необязательный параметр

Пример вызова функции

GET http://api.comagic.ru/api/v1/advertising_sales/?session_key=adc0bd243815644eb17fd7bbc1ca6ef8&date_from=2014-12-15%2000:00:00&date_till=2015-02-03%2023:59:59&site_id=2400&only_first=false&only_quality=false

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
 "data": [
   {
    "ac_id": -1, // id рекламной кампании (id = -1 - без рекламной кампании)
    "name": "Без рекламной кампании", // Имя рекламной кампании
    "ac_cost": 0, // Расходы на рекламу (ненулевые данные возвращаются только по интегрированным рекламным кампаниям (ЯД/GA)
    "sessions_count": 25, // Количество посещений
    "communications_count": 113, // Количество коммуникаций
    "sales_count": 6, // Количество продаж
    "avg_days_before_sale": 8, // Среднее количество дней, прошедших с обращения до продажи. 
    "revenue": 3400  // Выручка по рекламной кампании (сумма продаж по всем обращениям)
   },
   {
    "ac_id": 9598,
    "name": "Google AdWords",
    "ac_cost": 5622.06,
    "sessions_count": 1,
    "communications_count": 1,
    "avg_days_before_sale": 0,
    "sales_count": 0,
    "revenue": 0
   }
  ],
 "success": true
}

Получение информации по запросам к CallAPI

Функция  callapi_request возвращает информацию по запросам к Call API. Данные будут попадать в отчёт, если прошла валидация JSON и IP с которого идёт запрос находится в белом списке

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является  обязательным параметром для них

date_from timestamp Дата и время начала периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till timestamp Дата и время окончания периода выборки данных,  обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
method text

Название метода, обязательный параметр.

call_session_id number Идентификатор сессии звонка, необязательный параметр. См метод Получение информации о звонках и параметр "id"

Пример вызова функции

GET http://api.comagic.ru/api/v1/callapi_request/?session_key=adc0bd243815644eb17fd7bbc1ca6ef8&date_from=2014-12-15%2000:00:00&date_till=2015-02-03%2023:59:59&&

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 

{
   "data":    [
            {
         "ip": "192.168.12.145",
         "start_time": "2016-05-04 01:35:02.42",
         "error": null,
         "api_user_id": 1234,
         "id": 119,
         "numa": null,
         "numb": null,
         "numc": null,
         "customer_id": 123,
         "method": "authenticate",
         "result": {"session_key": "fad1aaa122ccebfc6a5ffdde98942e436093562c"}
      },
   {
         "ip": "192.168.12.158",
         "start_time": "2016-05-04 13:21:00.642",
         "error": null,
         "api_user_id": 1234,
         "id": 1038,
         "numa": "79262444393",
         "numb": "74951250391",
         "numc": "79262444394",
         "customer_id": 123,
         "method": "place_calls",
         "result":          {
            "call_session_id": 167550752,
            "result": "success"
         }
      }
  ],
 "success": true
}

Функции получения информации о списаниях

Получение истории списаний

Функция daily_sdr возвращает историю списаний за заданный период времени. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

date_from timestamp Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till timestamp Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

Пример вызова функции

GET http://api.comagic.ru/api/v1/daily_sdr/?session_key=4d85e1b8bcb5ffa0b8ca708399a120bd&date_from=2015-01-01&date_till=2015-12-31

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 
{
 "data": [
  {
   "charge_tp": 7180.2, // Абонентская плата за тарифный план
   "charge_number": 9577.68, // Абонентская плата за номера
   "charge_physical_limit": 0, // Абонентская плата за расширение лимитов
   "charge_call": 0, // Плата за звонки
   "charge_activation_number": 9000 // Плата за подключение номеров
  }
 ],
 "success": true
}

Получение детализации списаний по входящим звонкам

Функция cdr_in_cost возвращает детализацию списаний по входящим звонкам за заданный период времени. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
call_session_id number Идентификатор сессии звонка, необязательный параметр. См метод Получение информации о звонках и параметр "id"
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

date_from timestamp Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till timestamp Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

numa

text

С какого номера был совершен звонок.

Допускается указание фрагмента или номер полностью.

По умолчанию возвращаются списания все номерам.

Это необязательный параметр.

numb text

На какой номер был совершен звонок.

Допускается указание фрагмента или номер полностью.

По умолчанию возвращаются списания все номерам.

Это необязательный параметр.

prefix_type text

Тип звонка, необязательный параметр.

Возможные значения:

  • internal - внутрисетевой звонок;
  • local - местный звонок;
  • country - междугородний звонок;
  • international - международный звонок;
  • zone - зоновый звонок.

Пример вызова функции

GET http://api.comagic.ru/api/v1/cdr_in_cost/?session_key=8206a52de288e3fa96bdccca36958f97&date_from=2015-01-01&date_till=2015-12-31

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен): 
{     
 "data": [ 
  {            
   "id": 1234, // id звонка
   "start_time": "2015-06-03 11:59:41", // начало звонка
   "numa": "74951112233", // С какого номера был совершен звонок
   "numb": "74954445566", // На какой номер был совершен звонок
   "duration": 65, // Продолжительность звонка   
   "prefix_type": "local", // тип звонка (internal, local, country, international, zone)
   "prefix_type_name": "Местный", // Тип звонка
   "customer_id": 1, // id клиента
   "cost": 2, // общая стоимость звонка
   "virtual_cost": 0, // списано с бонусного счета
   "real_cost": 2, // списано со счета
  }
 ]
 "success": true
}

Получение детализации списаний по исходящим звонкам

Функция cdr_out_cost возвращает детализацию списаний по исходящим звонкам за заданный период времени. 

Примечание: звонки с форм консультанта и сайтфона считаются исходящими звонками. 

Параметры функции

Название
Тип
Описание
session_key text Идентификатор сессии, обязательный параметр
call_session_id number Идентификатор сессии звонка, необязательный параметр. См метод Получение информации о звонках и параметр "id"
customer_id integer Id аккаунта,

используется только в агентских аккаунтах и является обязательным параметром для них

date_from timestamp Дата и время начала периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).
date_till timestamp Дата и время окончания периода выборки данных, обязательный параметр.
Если в параметре передать только дату (например, 2014-01-31), то время будет считаться равным 00:00:00 (т.е. параметр будет приведет к виду 2014-01-31 00:00:00).

numa

text

С какого номера был совершен звонок.

Допускается указание фрагмента или номер полностью.

По умолчанию возвращаются списания все номерам.

Это необязательный параметр.

numb text

На какой номер был совершен звонок.

Допускается указание фрагмента или номер полностью.

По умолчанию возвращаются списания все номерам.

Это необязательный параметр.

prefix_type text

Тип звонка, необязательный параметр.

Возможные значения:

  • internal - внутрисетевой звонок;
  • local - местный звонок;
  • country - междугородний звонок;
  • international - международный звонок;
  • zone - зоновый звонок.

Пример вызова функции

GET http://api.comagic.ru/api/v1/cdr_out_cost/?session_key=8206a52de288e3fa96bdccca36958f97&date_from=2015-01-01&date_till=2015-12-31

Пример возвращаемого результата

Формат ответа для json-выдачи (результат для xml аналогичен):
{     
 "data": [ 
  {            
   "id": 41079657, // id звонка
   "start_time": "2015-06-03 11:00:41", // начало звонка
   "numa": "74951112233", // С какого номера был совершен звонок
   "numb": "74954445566", // На какой номер был совершен звонок
   "duration": 198, // Продолжительность звонка   
   "prefix_type": "local", // тип звонка (internal, local, country, international, zone)
   "prefix_type_name": "Местный", // Тип звонка
   "customer_id": 1, // id клиента
   "cost": 6, // общая стоимость звонка
   "virtual_cost": 2, // списано с бонусного счета
   "real_cost": 4, // списано со счета
  }
 ]
 "success": true
}