Skip to main content
POST
Upload File
Upload a file to Open WebUI. The file can be processed in the background for content extraction and embedding generation.

Request

Headers

string
required
Bearer token for authentication

Body

file
required
The file to upload. File type must be allowed based on server configuration.
object | string
Optional metadata for the file. Can be a JSON object or JSON string.Properties:
  • channel_id (string): Associate file with a channel
  • language (string): Language hint for audio transcription
  • Additional custom metadata as needed
boolean
default:"true"
Whether to process the file for content extraction
boolean
default:"true"
Whether to process the file in the background. If false, processing happens synchronously.

Response

string
Unique identifier for the uploaded file
string
Original filename
string
Storage path of the file
string
ID of the user who uploaded the file
object
File metadata
string
File name
string
MIME type of the file
number
File size in bytes
object
Custom metadata provided during upload
object
Processing data
string
Processing status: pending, completed, or failed
string
Extracted text content (available after processing)
string
Error message if processing failed
boolean
Always true for successful uploads
number
Unix timestamp of when the file was created
number
Unix timestamp of when the file was last updated

Example

Response

File Processing

When process=true, the file is automatically processed based on its content type:
  • Audio files: Transcribed using configured STT engine
  • Documents: Text extracted for embedding and search
  • Images/Videos: Processed if external content extraction is enabled
Processing status can be monitored via GET /api/files/{id}/process/status.