# Загрузить файл Загрузка файла в хранилище. purpose определяет назначение и ограничения по типу/размеру. Endpoint: POST /api/file/upload Version: 0.0.2 Security: bearerAuth, jwtCookie ## Request fields (multipart/form-data): - `file` (string, required) - `purpose` (string, required) Enum: "AVATAR", "VOICE", "MESSAGE" ## Response 200 fields (application/json): - `data` (object,null, required) Полезная нагрузка (может быть null) - `data.file_id` (string, required) Object key / идентификатор загруженного файла - `success` (boolean, required) - `message` (string, required) - `codeError` (any, required) Код ошибки (null в случае успеха) ## Response 400 fields (application/json): - `success` (boolean, required) - `message` (string, required) Example: "Error" - `codeError` (any, required) Код ошибки (null в случае успеха) Example: "invalid_body" - `data` (any,null, required) Полезная нагрузка (может быть null) ## Response 401 fields (application/json): - `success` (boolean, required) - `message` (string, required) Example: "Error" - `codeError` (any, required) Код ошибки (null в случае успеха) Example: "invalid_body" - `data` (any,null, required) Полезная нагрузка (может быть null) ## Response 429 fields (application/json): - `data` (object,null, required) Полезная нагрузка (может быть null) - `data.TTL` (integer, required) Секунды до следующей попытки - `success` (boolean, required) - `message` (string, required) - `codeError` (any, required) Код ошибки (null в случае успеха)