[POST] .../v1/chatmessage/search
Ищет сообщения в чате по текстовому запросу.
Входные параметры
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| chat_id | String | Обязательный | UUID чата |
| query | String | Обязательный | Поисковая строка |
| from_date | Int64 | Необязательный | Нижняя граница даты создания (Unix time, сек.) |
| to_date | Int64 | Необязательный | Верхняя граница даты создания (Unix time, сек.) |
| limit | Int32 | Необязательный | Лимит элементов выборки |
| offset | Int32 | Необязательный | Смещение выборки |
| include_staff_private | Boolean | Необязательный | Включать приватные Staff-сообщения (если есть права) |
Ограничения и проверки
chat_id и query обязательны.chat_id должен быть корректным UUID чата.limit ограничивается серверным максимумом; при превышении применяется допустимый предел.offset автоматически приводится к 0.include_staff_private = true учитывается только для пользователей, которым разрешен просмотр приватных сообщений.Пример запроса
{
"chat_id": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef",
"query": "договор",
"from_date": 1762000000,
"to_date": 1762100000,
"limit": 20,
"offset": 0,
"include_staff_private": false
}
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| result | Array of ChatMessage | Массив сообщений, соответствующих запросу |
| next_offset | Int32 | Смещение для следующей страницы |
| total | Int64 | Общее количество элементов |
Пример ответа
{
"ok": true,
"result": [
{
"id": "9beec41f-6ef5-4e87-b4ea-05895cff2c54",
"chat_id": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef",
"author_entity_type": "User",
"author_entity_id": 15,
"author_role": "Member",
"message_type": "Regular",
"text": "Отправьте, пожалуйста, договор",
"created_date": 1762011120,
"last_update": 1762011120
}
],
"next_offset": 20,
"total": 1
}