REST API

Файлы и хранилище

Загрузите файл через POST /api/files, получите input-ready объект и вставьте его прямо в input[].

Загрузка файла

POST /api/files

Тело — multipart/form-data с полем file.

bash
curl -X POST https://agent.aist-ai.com/api/files \
  -H "Authorization: Bearer <jwt>" \
  -H "Accept: application/json" \
  -F "file=@document.pdf"

Ответ — объект, готовый к вставке прямо в input[]:

ответ
{
  "type": "file",
  "file": {
    "id": "42",                        // всегда строка
    "name": "document.pdf",
    "mime_type": "application/pdf",
    "provider_data": { "path": "uploads/…/document.pdf" }
  }
}

Ограничения

ПараметрЗначение
Макс. размер1 024 000 КБ (~1 ГБ)
Форматыpng, jpg, webp, gif, txt, pdf, json, js, css, html, csv, xml, docx, xls, xlsx, mp3, wav, ogg, m4a, webm, mp4, mkv

Правила валидации совпадают с Aist Back — загрузка проксируется туда напрямую.

Базовый URL хранилища

GET /api/storage/base

Возвращает публичный базовый URL хранилища. Склейте его с provider_data.path, чтобы получить прямую ссылку на скачивание файла (например, сгенерированного изображения из output).

ответ
{ "url": "https://storage.aist.example" }
js
const downloadUrl = `${base.url}/${file.provider_data.path}`;
JWT нужен только для запроса GET /api/storage/base. Само скачивание файла по полученной ссылке авторизации не требует.