Get

[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
}