Пользователи

Методы для управления пользователями, агентами и администраторами.


Запрос


get-user

Возвращает данные о пользователе.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-user.
user_id
Обязательно*
ID пользователя.
extra
Установите значение true, для получения дополнительных сведений о пользователе. По умолчанию: false.

Ответ

{
"success": true,
"response": {
"id": "123456",
"first_name": "Иван",
"last_name": "Иванов",
"email": "[email protected]",
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-12 14:28:57",
"last_activity": "2023-05-12 14:28:57",
"department": null,
"token": "a521773c5a566a251c3fb00e93162b20ff955b12",
"password": "",
"details": [
{
"slug": "location",
"name": "Location",
"value": "Moscow, Russia"
},
{
"slug": "country_code",
"name": "Country code",
"value": "Russia/Moscow"
}
...
]
}
}

Возвращает {"success":true, "response":false}, если пользователь не найден.


Запрос


get-user-by

Находит пользователя по указанным данным.


Параметры

by
Обязательно*
Название атрибута пользователя. Допустимые значения: email, first_name, last_name, phone, [extra] (замените [extra] на имя любого дополнительного атрибута пользователя).
value
Значение поля.

Ответ

{
"id": "881",
"first_name": "Иван",
"last_name": "Иванов",
"email": "[email protected]",
"user_type": "visitor",
"department": null
}

Возвращает {"success":true, "response":false}, если пользователь не найден.


Запрос


get-user-extra

Возвращает дополнительные сведения о пользователе.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-userp-extra.
user_id
Обязательно*
ID пользователя.
slug
Настройки получения данных. Если данный аргумент не задан, то возвращаются все данные о пользователе. По умолчанию false.
default
Значение которое будет возвращено, если данные пользователя не найдены. По умолчанию: false.

Ответ

{
"success": true,
"response": [
{
"slug": "browser",
"name": "Browser",
"value": "Chrome"
},
{
"slug": "current_url",
"name": "Current URL",
"value": "https://stepchat.io/"
},
{
"slug": "os",
"name": "OS",
"value": "Windows 10"
},
{
"slug": "phone",
"name": "Phone",
"value": "79191231212"
}
...
]
}

Возвращает {"success": true, "response": []}, если пользователь не найден.


Запрос


get-user-language

Возвращает язык браузера пользователя.


Параметры

user_id
Обязательно*
ID пользователя языкр браузера которого желаете получить.

Ответ

Пример: en. Возвращает true, если код языка - en.


Запрос


get-users

Возвращает информацию о всех пользователей.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-users.
sorting
Установите порядок возвращаемых значений. Введите ["column", "order"] и замените столбец одним из следующих значений: first_name, last_name, email, profile_image, user_type, creation_time, last_activity, department. Замените порядок на ASC или DESC.
user_types
Массив в формате JSON с типами пользователей. Синтаксис массива: ["", "", "", ...]. Принимаемые значения: visitor, lead, user, agent, admin. По умолчанию: все.
search
Поисковая строка.
pagination
Целое число от 1 до N для ограничения количества результатов. Введите 1, чтобы получить первые 100 результатов, 2 для получения результатов с 101 по 200 и так далее.
extra
Установите true, чтобы также активировать получение дополнительные сведения о пользователях. По умолчанию: false.
user_ids
Массив идентификаторов. Возвращает всех пользователей с идентификатором. Синтаксис массива: ["", "", "", ...]. По умолчанию: false.

Ответ

{
"success": true,
"response": [
{
"id": "880",
"first_name": "User",
"last_name": "#29938",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 08:58:18",
"last_activity": "2023-05-13 09:07:39",
"department": null,
"token": "6d969f64f5ed6263714b9b39f3d3700b66f16820"
},
{
"id": "879",
"first_name": "User",
"last_name": "#86773",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 08:38:41",
"last_activity": "2023-05-13 08:58:12",
"department": null,
"token": "2e5064670707d06b661d04353f4a462ec927f19a"
}
...
]
}


Запрос


get-new-users

Возвращает пользователей, созданных после указанной даты или ID.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-new-users.
datetime
Обязательно*
Идентификатор пользователя или дата и время в следующем формате: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Например, 2023-11-27 14:02:59. Вы можете убрать время и оставить только дату. Даты, хранящиеся в базе данных, представлены в формате UTC+0.

Ответ

{
"success": true,
"response": [
{
"id": "880",
"first_name": "User",
"last_name": "#29938",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-11-27 08:58:18",
"last_activity": "2023-11-27 09:07:39",
"department": null,
"token": "6d969f64f5ed6263714b9b39f3d3700b66f16820"
},
{
"id": "879",
"first_name": "User",
"last_name": "#86773",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-11-27 08:38:41",
"last_activity": "2023-11-27 08:58:12",
"department": null,
"token": "2e5064670707d06b661d04353f4a462ec927f19a"
} ... ] }


Запрос


get-online-users

Возвращает онлайн пользователей, в том числе и агентов.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-online-users.
exclude_id
Массив идентификаторов пользователей в формате JSON, которые следует исключить из возвращаемых значений. Синтаксис массива: [123, 123, 123, ...].
sorting
Имя таблицы базы данных, используемой для сортировки. По умолчанию: creation_time.
agents
Установите true, чтобы возвращать только агентов и администраторов. По умолчанию: false.

Ответ

{
"success": true,
"response": [
{
"id": "881",
"first_name": "Иван",
"last_name": "Иванов",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 09:18:59",
"last_activity": "2023-05-13 09:32:34",
"department": null,
"token": "e435a5c67f4276cdb9c6fc19b7c015990ffc3268"
},
{
"id": "880",
"first_name": "User",
"last_name": "#29938",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 08:58:18",
"last_activity": "2023-05-13 09:32:28",
"department": null,
"token": "6d969f64f5ed6263714b9b39f3d3700b66f16820"
}
...
]
}


Запрос


get-users-with-details

Возвращает массив с идентификаторами пользователей и сведениями о пользователях, у которых есть запрошенные данные.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-users-with-details.
details
Обязательно*
Массив деталей пользователя. Например, [ "email", "phone" ].
user_ids
Массив или строка с разделенными запятыми идентификаторов пользователей. Если этот аргумент установлен, возвращаются пользователи с указанными идентификатором. Установите >all или false, чтобы получить всех пользователей, установите agents, чтобы искать только агентов и администраторов. По умолчанию: false.

Ответ

{
"email": [
{
"id": 4561,
"value": "[email protected]"
},
{
"id": 98436,
"value": "[email protected]"
},
...
],
"phone": [
{
"id": 12563,
"value": "+79191231212"
},
{
"id": 778956,
"value": "+79193213232"
},
...
],
...
}


Запрос


get-agent

Возвращает данные об агенте или администраторе.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-agent.
agent_id
Обязательно*
ID агента или администратора.

Ответ

{
"success": true,
"response": {
"id": "123456",
"first_name": "Иван",
"last_name": "Иванов",
"email": "[email protected]",
"profile_image": "https://stepchat.io/user.svg",
"user_type": "agent",
"creation_time": "2023-05-12 14:28:57",
"last_activity": "2023-05-12 14:28:57",
"department": null,
"token": "a521773c5a566a251c3fb00e93162b20ff955b12",
"password": "",
"details": [
{
"slug": "location",
"name": "Location",
"value": "Moscow, Russia"
},
{
"slug": "country_code",
"name": "Country code",
"value": "Russia/Moscow"
}
...
]
}
}


Запрос


get-agents-ids

Возвращает массив с идентификаторами агентов.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-agents-ids.
admins
Установите false, чтобы исключить администраторов. По умолчанию: true.

Ответ

[
881,
153,
...
]


Запрос


get-user-from-conversation

Возвращает ID и email пользователя или последнего агента из диалога.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-user-from-conversation.
conversation_id
Обязательно*
ID диалога.
agent
Установите true, чтобы получить ID последнего агента, который ответил в диалоге. По умолчанию: false.

Ответ

{
"id": "123456",
"email": "[email protected]"
}


Запрос


agents-online

Проверяет, есть ли хотя бы один агент или администратор в сети.

Ответ

{
"success": true,
"response": true
}

Возвращает true, если есть агенты или администраторы в сети, или false, если все агенты не в сети.


Запрос


search-users

Возвращает список пользователей которые соответствуют поиску.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите search-users.
search
Обязательно*
Строка для поиска. Также поддерживаются дополнительные сведения о пользователе.

Ответ

{
"success": true,
"response": [
{
"id": "881",
"first_name": "Иван",
"last_name": "Иванов",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 09:18:59",
"last_activity": "2023-05-13 09:32:34",
"department": null,
"token": "e435a5c67f4276cdb9c6fc19b7c015990ffc3268"
},
{
"id": "880",
"first_name": "User",
"last_name": "#29938",
"email": null,
"profile_image": "https://stepchat.io/user.svg",
"user_type": "visitor",
"creation_time": "2023-05-13 08:58:18",
"last_activity": "2023-05-13 09:32:28",
"department": null,
"token": "6d969f64f5ed6263714b9b39f3d3700b66f16820"
}
...
]
}

Возвращает {"success": true, "response": []}, если пользователи не найдены.


Запрос


add-user

Создает нового пользователя.


Параметры

b>, если не указана электронная почта, в противном случае user.
token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите add-user.
first_name
Имя пользователя. По умолчанию: Пользователь.
last_name
Фамилия пользователя. По умолчанию: #RANDOM-NUMBER.
email
Электронная почта пользователя. По умолчанию: пусто.
profile_image
Аватар пользователя. По умолчанию: пусто.
password
Пароль пользователя. По умолчанию: пусто.
user_tyoe
Тип пользователя. Принимаемые значения: visitor, lead, user, agent, admin. По умолчанию: visitor
extra
Массив дополнительных сведений о пользователе в формате JSON. Принимаются любые детали: phone, city, language, country, birthday, company, facebook, twitter, linkedin, website, ip, country_code, browser, currency, location, os, time_zone, current_url. Синтаксис массива: {"ID": ["значение", "Имя"], "ID": ["значение", "Имя"], ...}

Ответ

{
"success": true,
"response": 123456
}

Другие возможные ответы: ID нового пользователя в случае успеха, в противном случае duplicate-email, invalid-user-type, сообщение об ошибке MySQL.


Запрос


update-user

Обновляет данные существующего пользователя.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите update-user.
user_id
Обязательно*
ID пользователя.
first_name
Имя пользователя.
last_name
Фамилия пользователя.
email
Электронная почта пользователя. Введите NULL, чтобы удалить адрес электронной почты.
profile_image
Аватар пользователя.
password
Пароль пользователя.
user_tyoe
Тип пользователя. Принимаемые значения: visitor, lead, user, agent, admin.
settings_extra
Массив дополнительных сведений о пользователе в формате JSON. Синтаксис массива: {"ID": ["значение", "Имя"], "ID": ["значение", "Имя"], ...}.

Ответ

{
"success": true,
"response": true
}

Другие возможные ответы: duplicate-email, invalid-user-type, сообщение об ошибке MySQL.


Запрос


delete-user

Удаляет пользователя, а также все его сообщения и диалоги связанный с ним.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите delete-user.
user_id
Обязательно*
ID пользователя.

Ответ

{
"success": true,
"response": true
}


Запрос


delete-users


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите delete-users.
user_ids
Обязательно*
Массив идентификаторов пользователей для удаления. Синтаксис массива: [123, 123, 123, ...].

Ответ

{
"success": true,
"response": true
}


Запрос


is-online

Проверяет, находится ли пользователь в сети.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите is-online.
user_id
Обязательно*
ID пользователя.

true, если пользователь в сети, false, если пользователь не в сети.


Запрос


current-url

Получает текущий или последний посещенный URL пользователя.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите current-url.
user_id
ID пользователя.
url
URL, который нужно установить как Текущий URL. Если аргумент установлен, то функция установит значение, если не установлен, то вернет какой-либо URL.

Ответ

{
"success": true,
"response": "https://stepchat.io.io"
}

Возвращает {"success":true,"response":false}, если URL не найден. Возвращает {"success":true,"response":true}, если аргумент url установлен.


Запрос


count-users

Возвращает общее количество пользователей, сгруппированных по типами.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите count-users.

Ответ

{
"success": true,
"response": {
"all": "335",
"lead": "288",
"user": "15",
"visitor": "28"
}
}


Запрос


update-user-to-lead

Изменяет тип пользователя на lead.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите update-user-to-lead.

Ответ

{
"success": true,
"response": true
}


Запрос


get-avatar


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите get-avatar.
first_name
Обязательно*
Имя пользователя.
last_name
Фамилия пользователя.

Ответ

https://example.com/stepchat/uploads/13-04-23/9455859.png


Запрос


get-bot-id

Возвращает ID StepChat бота.

Ответ

123


Запрос


is-typing

Проверяет, печатает ли пользователь или агент сообщение в диалоге.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите is-typing.
user_id
Обязательно*
ID пользователя или агента.
conversation_id
ID диалога.

Ответ

Возвращает true, если пользователь печатает, в противном случае возвращает false.


Запрос


is-agent-typing

Проверяет, печатает ли агент сообщение в диалоге и возвращает результат.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите is-agent-typing.
conversation_id
Обязательно*
ID диалога.

Ответ

{
"id": "",
"first_name": "",
"last_name": ""
}

Возвращает false, если агент не печатает.


Запрос


set-typing

Устанавливает статус печати для пользователя или агента во время диалога.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите set-typing.
user_id
Обязательно*
ID пользователя или агента.
conversation_id
Обязательно*
ID диалога.

Ответ

{
"success": true,
"response": true
}


Запрос


login

Выполняет вход пользователя или агента. Можно войти двумя способами: с использованием электронной почты и пароля или с использованием идентификатора и токена.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите login.
email
Электронная почта пользователя для входа. Если атрибут задан, необходимо также установить пароль. По умолчанию: пусто.
password
Пароль пользователя для входа. Если атрибут задан, необходимо также установить электронную почту. По умолчанию: пусто.
user_id
Идентификатор пользователя для входа. Если атрибут задан, необходимо также установить токен. По умолчанию: пусто.
token
Токен пользователя для входа. Если атрибут задан, необходимо также установить идентификатор пользователя. Вы можете получить токен из раздела Пользователи, открыв профиль пользователя. По умолчанию: пусто.

Ответ

[
{
"id": "913",
"profile_image": "https://stepchat.io/user.svg",
"first_name": "User",
"last_name": "#29902",
"email": null,
"user_type": "visitor",
"token": "9b25351047ee758aa97ee4868d130cc1ceb8decf"
},
"YXNkWGNSeTdtRTdDYVkxVG8wckN4YWF6V2s0Tk1mczBSVHdQbHBpOWdmejVUTTdOUUxEUENhdUVoYmROWn..."
]

Последнее значение представляет собой зашифрованные данные для входа, готовые для сохранения в файл cookie sb-login. Используйте функцию SBF.loginCookie(response[1]); для сохранения данных. Возвращает false, если вход не удался.


Запрос


logout

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


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите logout.

Ответ

{
"success": true,
"response": true
}

Также можно удалить файл cookie из браузера пользователя с помощью sb-login.


Запрос


update-login

Обновляет сведения о вошедшем пользователе. Если какие-либо сведения не установлены, они будут удалены из базы данных.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите update-login.
profile_image
Изображения профиля пользователя. По умолчанию: пусто.
first_name
Имя пользователя. По умолчанию: пусто.
last_name
Фамилия пользователя. По умолчанию: пусто.
email
Электронная почта пользователя. По умолчанию: пусто.
department
Обновите отдел пользователя. Эта настройка используется в административной области. По умолчанию: пусто.

Ответ

YXNkWGNSeTdtRTdDYVkxVG8wckN4YWF6V2s0Tk1mczBSVHdQbHBpOWdmejVUTTdOUUxEUENhdUVoYmROWn...

Ответ необходимо сохранить в файле cookie sb-login.


Запрос


delete-leads

Удаляет все лиды, включая все связанные диалоги и сообщения.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите delete-leads.

Ответ

{
"success": true,
"response": true
}


Запрос


update-bot

Обновляет сведения профиля бота. Если чат-бот не найден, создается новый профиль чат-бота.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите update-bot.
name
Имя бота.
profile_image
Изображение профиля бота.

Ответ

{
"success": true,
"response": true
}

Возвращает true в случае успеха, в противном случае false.


Запрос


csv-users

Экспортирует всех пользователей в файл CSV и возвращает URL.


Параметры

token
Обязательно*
Токен администратора.
function
Обязательно*
Укажите csv-users.
user_ids
Массив идентификаторов пользователей. Если установлен, возвращает только пользователей с указанными идентификаторами. По умолчанию: false.

Ответ

{
"success": true,
"response": "https://stepchat.io/uploads/users.csv"
}