[POST] …/v1/File/Get
Возвращает список файлов, доступных текущему пользователю, с учётом уровня доступа и прав.
Входные параметры
| Название | Тип данных | Обязательность | Описание |
|---|---|---|---|
| ids | Array of Int64 | Необязательный | Массив ID файлов. Если задан, выборка ограничивается указанными файлами (с учётом остальных фильтров и прав доступа) |
| user_id | Int64 | Необязательный | Фильтр по владельцу файла (ID пользователя, который загрузил файл). Если не задан, возвращаются файлы всех пользователей (в пределах прав доступа текущего пользователя) |
| folder_id | Int64 | Необязательный | Фильтр по виртуальной папке. Если не задан, возвращаются файлы из всех папок |
| access_level | Enum | Необязательный | Уровень доступа к файлу |
| search | String | Необязательный | Строка поиска по имени файла (name) |
| sort_orders | Array of SortOrders | Необязательный | Сортировка выходных параметров |
| limit | Int32 | Необязательный | Лимит возвращаемых данных при запросе |
| offset | Int32 | Необязательный | Смещение от начала выборки (для постраничной выборки) |
Поля, доступные для сортировки (sort_orders):
id, date, name, size, extension, user_id, access_level, last_update
Пример запроса
{
"ids": [101, 102],
"user_id": 501,
"folder_id": 1,
"access_level": "personal",
"search": "invoice",
"sort_orders": [
{
"column": "date",
"direction": "desc"
},
{
"column": "name",
"direction": "asc"
}
],
"limit": 20,
"offset": 0
}
Выходные параметры
| Название | Тип данных | Описание |
|---|---|---|
| result | Array of File | Массив файлов |
| next_offset | Int32 | Смещение для следующей выборки данных |
| total | Int32 | Количество элементов выборки |
Пример ответа
{
"ok": true,
"result": [
{
"id": 101,
"name": "invoice_2025_01.pdf",
"size": 34567,
"extension": "pdf",
"mime_type": "application/pdf",
"date": 1733827200,
"user_id": 501,
"access_level": "personal",
"hash": "ab52f8ce4f4e9f8b7f1d4b9d3c12e6a8b0f1e2345f6a7b8c9d0e1f2a3b4c5d6e",
"folder_id": 1,
"url": "https://cdn.example.com/files/101",
"last_update": 1733913600
}
],
"next_offset": 1,
"total": 1
}