Skip to content

Загрузка чатов

Метод upload.chats
Описание Загрузка чатов
Кому доступен Агент, Клиент
Необходимые компоненты для работы с методом Data API, Загрузка офлайн-заявок из внешней системы
Максимальное количество заявок в одном запросе 500 шт

Параметры, обязательные для заполнения:
- visitor_session_id, campaign_id или site_id (если указанны несколько параметров, то данные должны быть консистентные)
- phone или email

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

Название Тип Обязательный Допустимые значения Описание
access_token string да Ключ сессии аутентификации
user_id number нет Уникальный идентификатор пользователя клиента агента от имени которого делается запрос
Является обязательным для агента
Для получения списка пользователей клиента необходимо использовать метод "get.customer_users"
chats array да Список чатов.
Максимально 500
start_date_time iso8601 да YYYY-MM-DD hh:mm:ss Дата и время создания чата
Не может быть в будущем.
Должна быть позже чем у переданной сессии посетителя.
name string нет Имя посетителя
phone string нет Телефон посетителя в формате E164
email string нет Email посетителя
status enum да lost,succeed, refused Статус чата
lost (Потерянный);
succeed (Состоявшийся);
refused (Отклоненный)
Если инициатор visitor и нет сообщений message от оператора или визитора, то переданное значение в status игнорируется и ставится значение lost
initiator enum нет operator, visitor,autoinvite Инициатор чата
autoinvite (Автоприглашение),
visitor (Посетитель),
operator(Оператор)
Если параметр не передан то будет взят первый источник сообщения ("source")
visitor_session_id number нет Уникальный идентификатор сессии посетителя полученной из CoMagic. Для получения ID необходимо использовать метод JS API Comagic.getSessionId()
campaign_id number нет Уникальный идентификатор рекламной кампании в CoMagic. Для получения campaign_id можно использовать метод Data API "get.campaigns". Нельзя передавать campaign_id = -1.
source_id number нет Уникальный идентификатор источника. Возможно передать только неудаленный источник в разрезе клиента. Если передан visitor_session_id, то определим source_id по параметрам сессии.
site_id number нет Уникальный идентификатор сайта. Обязательно передавать если хотите чтобы чат попал в Рекламную кампанию "Посетители без РК"
messages array да Список сообщений чата
date_time iso8601 да YYYY-MM-DD hh:mm:ss Дата и время отправки сообщения
Не может быть в будущем.
Должна быть позже чем start_date_time.
Если параметр не передан, то проставится время вызова
source enum да operator, visitor,system Источник сообщения
system (Автоприглашение),
visitor (Посетитель),
operator(Оператор)
employee_id number нет Уникальный идентификатор сотрудника, обязательный параметр если source = operator(Оператор)
За последним сотрудником, отправившим сообщение, будет закреплен чат
message string да Сообщение
ext_id string нет Уникальный идентификатор чата в вашей системе

JSON структура запроса

{
    "jsonrpc": "2.0",
    "id": "number",
    "method": "upload.chats",
    "params": {
        "access_token": "string",
        "user_id": "number",
        "chats": [
            {
                "start_date_time": "iso8601",
                "name": "string",
                "phone": "string",
                "email": "string",
                "status": "enum [lost,succeed, refused]",
                "initiator": "enum [operator, visitor,autoinvite]",
                "visitor_session_id": "number",
                "campaign_id": "number",
                "source_id": "number",
                "site_id": "number",
                "messages": [
                    {
                        "date_time": "iso8601",
                        "source": "enum [operator, visitor, system]",
                        "employee_id": "number",
                        "message": "string"
                    }
                ],
                "ext_id": "string"
            }
        ]
    }
}

JSON структура ответа

{
    "jsonrpc": "2.0",
    "id": "number",
    "result": {
        "data": [
            {
                "id": "number"
            }
        ],
        "metadata": "object"
    }
}

Список возвращаемых ошибок

Смотрим раздел "Список ошибок для методов с глаголом upload"