Загрузить файл

Загрузка файла в хранилище

Загрузить файл

Загрузка файла в хранилище.

Способы загрузки

Storage API поддерживает два способа загрузки файлов:

  1. Multipart/form-data — загрузка файла напрямую
  2. Base64 — загрузка закодированного файла в JSON

Параметры

ПараметрТипОбязательныйОписание
filebinaryДа (multipart)Файл для загрузки (multipart/form-data)
base64stringДа (JSON)Файл в формате base64
mimeTypestringНетMIME-тип файла (определяется автоматически при multipart)
externalUserIdstringНетВнешний идентификатор пользователя (макс. 128 символов)
storagePolicystringНетПолитика хранения (по умолчанию TEMP_UPLOAD)

Политики хранения

ПолитикаСрок храненияОписание
TEMP_UPLOAD24 часаВременная загрузка пользователя (по умолчанию)
PERMANENTБессрочноПостоянное хранение

Политика TEMP_GENERATION (7 дней) применяется автоматически к результатам AI генераций через Media API и не может быть задана вручную.

Примеры

curl -X POST "https://api.usellm.ru/v1/storage/upload" \
  -H "Authorization: Bearer <USELLM_API_KEY>" \
  -F "file=@image.png" \
  -F "storagePolicy=PERMANENT"

Ответ (200)

{
  "id": "file_abc123",
  "fileType": "IMAGE",
  "mimeType": "image/png",
  "source": "USER_UPLOAD",
  "storagePolicy": "PERMANENT",
  "url": "https://cdn.usellm.ru/files/file_abc123.png",
  "size": 245760,
  "externalUserId": null,
  "expiresAt": null,
  "createdAt": "2025-01-15T10:30:00Z",
  "updatedAt": "2025-01-15T10:30:00Z"
}