Найти чаты im.search.chat.list
Scope:
imКто может выполнять метод: любой пользователь
Метод im.search.chat.list выполняет поиск чатов, к которым текущий пользователь имеет доступ. Поиск выполняется по заголовку, имени и фамилии участников чата.
Результаты сортируются в порядке убывания идентификаторов.
Параметры метода
Обязательные параметры отмечены *
|
Название |
Описание |
|
FIND |
Поисковая фраза для поиска по индексируемым данным чата. Минимальное количество символов для поиска — |
|
FIND_LINES |
Поисковая фраза для поиска чатов среди Открытых линий. Минимальное количество символов для поиска — |
|
OFFSET |
Смещение выборки чатов. По умолчанию |
|
LIMIT |
Количество элементов в выборке. По умолчанию |
Нужно передать хотя бы один параметр: FIND или FIND_LINES.
Примеры кода
Как использовать примеры в документации
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"FIND":"Проект","FIND_LINES":"Линия","OFFSET":0,"LIMIT":10}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/im.search.chat.list
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"FIND":"Проект","FIND_LINES":"Линия","OFFSET":0,"LIMIT":10,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/im.search.chat.list
try {
const response = await $b24.callMethod('im.search.chat.list', {
FIND: 'Проект',
FIND_LINES: 'Линия',
OFFSET: 0,
LIMIT: 10,
});
const { result, total, next } = response.getData();
console.log(result, total, next);
} catch (error) {
console.error(error);
}
try {
$response = $b24Service->core->call(
'im.search.chat.list',
[
'FIND' => 'Проект',
'FIND_LINES' => 'Линия',
'OFFSET' => 0,
'LIMIT' => 10,
]
);
$result = $response->getResponseData()->getResult();
if ($result->error()) {
echo 'Error: ' . $result->error();
} else {
var_dump($result->data());
}
} catch (Throwable $exception) {
echo $exception->getMessage();
}
BX24.callMethod(
'im.search.chat.list',
{
FIND: 'Проект',
FIND_LINES: 'Линия',
OFFSET: 0,
LIMIT: 10,
},
function(result) {
if (result.error()) {
console.error(result.error().ex);
} else {
console.log(result.data(), result.total(), result.next());
}
}
);
require_once('crest.php');
$result = CRest::call(
'im.search.chat.list',
[
'FIND' => 'Проект',
'FIND_LINES' => 'Линия',
'OFFSET' => 0,
'LIMIT' => 10,
]
);
if (!empty($result['error'])) {
echo 'Error: ' . $result['error_description'];
} else {
var_dump($result['result']);
}
Обработка ответа
HTTP-код: 200
{
"result": [
{
"id": 1137,
"parent_chat_id": 0,
"parent_message_id": 0,
"name": "Проект: \"разработка шаблона\"",
"description": null,
"owner": 27,
"extranet": false,
"avatar": "",
"color": "#3e99ce",
"type": "sonetGroup",
"counter": 0,
"user_counter": 2,
"message_count": 4,
"unread_id": 0,
"restrictions": {
"avatar": false,
"rename": false,
"extend": false,
"call": true,
"mute": true,
"leave": false,
"leave_owner": false,
"send": true,
"user_list": true,
"path": "/workgroups/group/#ID#/",
"path_title": "Перейти в группу"
},
"last_message_id": 80461,
"last_id": 80461,
"marked_id": 0,
"disk_folder_id": 0,
"entity_type": "SONET_GROUP",
"entity_id": "121",
"entity_data_1": "",
"entity_data_2": "",
"entity_data_3": "",
"mute_list": [],
"date_create": "2024-07-26T15:28:02+03:00",
"message_type": "C",
"public": "",
"role": "owner",
"entity_link": {
"type": "SONET_GROUP",
"url": "/workgroups/group/121/",
"id": "121"
},
"text_field_enabled": true,
"background_id": null,
"permissions": {
"manage_users_add": "member",
"manage_users_delete": "manager",
"manage_ui": "member",
"manage_settings": "owner",
"manage_messages": "member",
"can_post": "member"
},
"is_new": false
},
... // описание для каждого чата
],
"total": 2,
"time": {
"start": 1772645157,
"finish": 1772645157.558317,
"duration": 0.5583169460296631,
"processing": 0,
"date_start": "2026-03-04T20:25:57+03:00",
"date_finish": "2026-03-04T20:25:57+03:00",
"operating_reset_at": 1772645757,
"operating": 0
}
}
Возвращаемые данные
|
Название |
Описание |
|
result |
Список найденных чатов. Структура объекта чата подробно описана ниже |
|
total |
Общее количество найденных чатов |
|
next |
Смещение следующей страницы. Поле возвращается, если есть следующая страница |
|
time |
Информация о времени выполнения запроса |
Объект чата
|
Название |
Описание |
|
id |
Идентификатор чата |
|
parent_chat_id |
Идентификатор родительского чата |
|
parent_message_id |
Идентификатор родительского сообщения |
|
name |
Название чата |
|
Описание чата |
|
|
owner |
Идентификатор владельца чата |
|
extranet |
Признак участия экстранет-пользователей |
|
Ссылка на аватар чата |
|
|
color |
Цвет чата в формате HEX |
|
type |
Тип чата |
|
counter |
Значение счетчика непрочитанных сообщений для текущего пользователя |
|
user_counter |
Количество участников чата |
|
message_count |
Количество сообщений чата |
|
unread_id |
Идентификатор первого непрочитанного сообщения |
|
restrictions |
Ограничения действий в чате. Структура объекта подробно описана ниже |
|
last_message_id |
Идентификатор последнего сообщения |
|
last_id |
Идентификатор последнего сообщения в чате, которое отмечено как прочитанное текущим пользователем |
|
marked_id |
Идентификатор помеченного сообщения |
|
disk_folder_id |
Идентификатор папки Диска, которая связана с чатом |
|
entity_type |
Тип объекта, к которому привязан чат |
|
entity_id |
Идентификатор объекта, к которому привязан чат |
|
entity_data_1 |
Дополнительные данные объекта чата — поле 1 |
|
entity_data_2 |
Дополнительные данные объекта чата — поле 2 |
|
entity_data_3 |
Дополнительные данные объекта чата — поле 3 |
|
Список пользователей с выключенными уведомлениями |
|
|
date_create |
Дата создания чата в формате ISO 8601 (RFC3339) |
|
message_type |
Тип сообщения чата из поля |
|
Публичные данные чата. Структура объекта подробно описана ниже |
|
|
role |
Роль текущего пользователя в чате |
|
entity_link |
Ссылка на связанный объект чата. Структура объекта подробно описана ниже |
|
text_field_enabled |
Признак доступности поля ввода текста |
|
Идентификатор фона чата |
|
|
permissions |
Права текущего пользователя. Структура объекта подробно описана ниже |
|
is_new |
Признак нового чата |
Объект restrictions
|
Название |
Описание |
|
avatar |
Разрешено менять аватар чата |
|
rename |
Разрешено менять название чата |
|
extend |
Разрешено расширять функциональность чата |
|
call |
Разрешены звонки в чате |
|
mute |
Разрешено отключать уведомления чата |
|
leave |
Разрешено выйти из чата |
|
leave_owner |
Разрешено выйти из чата владельцу |
|
send |
Разрешено отправлять сообщения |
|
user_list |
Доступен просмотр списка участников |
|
path |
Системный путь для перехода к связанному объекту, например к рабочей группе |
|
path_title |
Текст ссылки для перехода по |
Объект public
|
Название |
Описание |
|
code |
Публичный код чата |
|
link |
Публичная ссылка на чат |
Объект entity_link
|
Название |
Описание |
|
type |
Тип связанного объекта |
|
url |
URL связанного объекта |
|
Идентификатор связанного объекта |
Объект permissions
|
Название |
Описание |
|
manage_users_add |
Право добавлять пользователей |
|
manage_users_delete |
Право удалять пользователей |
|
manage_ui |
Право управлять интерфейсными настройками |
|
manage_settings |
Право управлять настройками чата |
|
manage_messages |
Право управлять сообщениями |
|
can_post |
Право писать сообщения |
Обработка ошибок
HTTP-статус: 400
{
"error": "FIND_SHORT",
"error_description": "Too short a search phrase."
}
|
Название |
Описание |
|
error |
Строковый код ошибки. Может состоять из цифр, латинских букв и знака подчеркивания |
|
error_description |
Текстовое описание ошибки. Описание не предназначено для показа конечному пользователю в необработанном виде |
Возможные коды ошибок
|
Код |
Описание |
Значение |
|
|
Too short a search phrase |
Не передан ни один поисковый параметр или фраза меньше трех символов |
Статусы и коды системных ошибок
HTTP-статус: 20x, 40x, 50x
Описанные ниже ошибки могут возникнуть при вызове любого метода
|
Статус |
Код |
Описание |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Возникла внутренняя ошибка сервера, обратитесь к администратору сервера или в техническую поддержку Битрикс24 |
|
|
|
Превышен лимит на интенсивность запросов |
|
|
|
Текущий метод не разрешен для вызова с помощью batch |
|
|
|
Превышена максимальная длина параметров, переданных в метод batch |
|
|
|
Неверный access-токен или код вебхука |
|
|
|
Для вызовов методов требуется использовать протокол HTTPS |
|
|
|
REST API заблокирован из-за перегрузки. Это ручная индивидуальная блокировка, для снятия необходимо обращаться в техническую поддержку Битрикс24 |
|
|
|
REST API доступен только на коммерческих планах |
|
|
|
У пользователя, с чьим access-токеном или вебхуком был вызван метод, не хватает прав |
|
|
|
Манифест недоступен |
|
|
|
Запрос требует более высоких привилегий, чем предоставляет токен вебхука |
|
|
|
Предоставленный access-токен доступа истек |
|
|
|
Пользователь не имеет доступа к приложению. Это означает, что приложение установлено, но администратор портала разрешил доступ к этому приложению только конкретным пользователям |
|
|
|
Публичная часть сайта закрыта. Чтобы открыть публичную часть сайта на коробочной установке отключите опцию «Временное закрытие публичной части сайта». Путь к настройке: Рабочий стол > Настройки > Настройки продукта > Настройки модулей > Главный модуль > Временное закрытие публичной части сайта |
Продолжите изучение
- Найти подразделения im.search.department.list
- Найти пользователей im.search.user.list
- Добавить запись в историю поиска im.search.last.add
- Получить историю поиска im.search.last.get
- Удалить запись из истории поиска im.search.last.delete