[POST] .../v1/chatmessage/getfiles
Возвращает файлы сообщений выбранного чата с контекстом исходного сообщения.
Входные параметры
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| chat_id | String | Обязательный | UUID чата |
| author_entity_type | Enum | Необязательный | Тип автора сообщения (User, Client, ChatBot) |
| author_entity_id | Int64 | Необязательный | ID автора сообщения |
| kind | Enum | Необязательный | Тип файлов: All, Media, Image, Video, Audio, File. По умолчанию All |
| from_date | Int64 | Необязательный | Нижняя граница даты создания сообщения (Unix time, сек.) |
| to_date | Int64 | Необязательный | Верхняя граница даты создания сообщения (Unix time, сек.) |
| include_staff_private | Boolean | Необязательный | Включать Staff-ограниченные сообщения, если есть права |
| limit | Int32 | Необязательный | Лимит элементов выборки |
| offset | Int32 | Необязательный | Смещение выборки |
Ограничения и проверки
chat_id обязателен и должен быть корректным UUID чата.ChatMessage/Get.include_staff_private = true учитывается только для пользователей, которым разрешен просмотр Staff-ограниченных сообщений.author_entity_type и author_entity_id передаются только парой.author_entity_id допустимы только значения больше 0.kind = Media включает изображения, видео и аудио.kind = File возвращает файлы, которые не относятся к изображениям, видео или аудио.limit ограничивается серверным максимумом; при слишком большом значении используется допустимый предел.offset автоматически приводится к 0.CommonFile.Пример запроса
{
"chat_id": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef",
"author_entity_type": "User",
"author_entity_id": 123,
"kind": "Media",
"include_staff_private": true,
"limit": 30,
"offset": 0
}
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| result | Array of ChatMessageFile | Массив файлов сообщений |
| next_offset | Int32 | Смещение для следующей страницы |
| total | Int64 | Общее количество файлов по фильтру |
ChatMessageFile
| Название | Тип данных | Описание |
|---|---|---|
| message_id | String | UUID сообщения |
| chat_id | String | UUID чата |
| author_entity_type | Enum | Тип автора сообщения |
| author_entity_id | Int64 | ID автора сообщения |
| author_role | Enum | Роль автора в чате: Staff, Member или Bot |
| author_entity_name | String | Имя автора сообщения |
| author_entity_photo | String | Фото автора сообщения |
| message_type | Enum | Тип сообщения: Regular, System, Private |
| message_created_date | Int64 | Дата создания сообщения (Unix time, сек.) |
| file_order | Int32 | Порядковый номер файла внутри сообщения |
| file | Object | Файл сообщения (CommonFile) |
Пример ответа
{
"ok": true,
"result": [
{
"message_id": "9beec41f-6ef5-4e87-b4ea-05895cff2c54",
"chat_id": "6f6fdb2f-7d0b-4c34-b6fd-1fbcf40d37ef",
"author_entity_type": "User",
"author_entity_id": 123,
"author_role": "Member",
"author_entity_name": "Иван Петров",
"author_entity_photo": "https://example.com/photo.jpg",
"message_type": "Regular",
"message_created_date": 1762011120,
"file_order": 1,
"file": {
"id": 101,
"name": "photo",
"size": 123456,
"extension": "jpg",
"mime_type": "image/jpeg",
"date": 1762011110,
"url": "https://cdn.example/photo.jpg",
"last_update": 1762011110
}
}
],
"next_offset": 30,
"total": 128
}