These environment variables bound what users can upload through DIAL Chat — files, ZIP archives, skills, and project context files — and how long the BFF waits on DIAL Core file operations. Several of them must stay at or below a matching DIAL Core limit. This reference is for platform engineers who size Chat and DIAL Core together; it assumes you know how DIAL Chat is configured.
Files
| Variable | Default | Description |
|---|
FILE_UPLOAD_MAX_BYTES | 536870912 (512 MB) | The largest file a user can upload; a larger one answers 413. The browser also checks it before uploading. Keep it at or below DIAL Core's storage.maxUploadedFileSize. |
FILE_TRANSFER_TIMEOUT_MS | 30000 | The timeout of DIAL Core file downloads, listings, deletes, and other file operations, in milliseconds. For uploads it is an idle timeout: a slow upload that keeps moving data is not aborted. |
PUBLISH_ATTACHMENTS_MAX_FILES | 1000 | The most attachment files, including every file inside attached folders, published together with one conversation. A larger conversation answers 413. |
Uploads through POST /api/v1/files, used for conversation attachments, transcription, and import, are staged in the container's temporary directory until DIAL Core has them, so size its ephemeral storage for concurrent uploads. The BFF accepts a request body for up to 30 minutes; a reverse proxy in front of it must allow the same body size and duration.
Archives
| Variable | Default | Description |
|---|
ARCHIVE_UPLOAD_MAX_BYTES | 536870912 (512 MB) | The largest ZIP archive accepted for upload. |
ARCHIVE_UPLOAD_MAX_FILES | 1000 | The most files extracted from one archive. |
ARCHIVE_UPLOAD_MAX_UNCOMPRESSED_BYTES | 2147483648 (2 GB) | The largest total size of an archive's extracted files, checked during extraction. |
ARCHIVE_UPLOAD_TIMEOUT_MS | 300000 (5 min) | The time budget for extracting and uploading a whole archive. |
ARCHIVE_DOWNLOAD_CONCURRENCY | 32 | Parallel DIAL Core downloads while streaming a ZIP download, from 1 to 32. |
Skills
| Variable | Default | Description |
|---|
SKILL_UPLOAD_MAX_FILES | 100 | The most files in a skill, including SKILL.md. A larger skill answers 400. |
SKILL_FILE_UPLOAD_MAX_BYTES | 1048576 (1 MB) | The largest single file in a skill. A larger file answers 413. |
SKILL_UPLOAD_MAX_TOTAL_BYTES | 16777216 (16 MB) | The largest total size of a skill's files. |
SKILL_ARCHIVE_UPLOAD_MAX_BYTES | 20971520 (20 MB) | The largest compressed ZIP accepted for skill import, before extraction. |
SKILL_TRANSFER_TIMEOUT_MS | 60000 | The timeout of every skill request to DIAL Core, in milliseconds. |
These defaults equal DIAL Core's folder-like resource limits for skills.
Projects
| Variable | Default | Description |
|---|
PROJECT_CONTEXT_FILE_MAX_BYTES | 1048576 (1 MB) | The largest context file in a new project. Keep it at or below DIAL Core's limit for project files (5 MB by default). |
PROJECT_CONTEXT_TOTAL_MAX_BYTES | 10485760 (10 MB) | The largest total size of a project's context files. It must be at least PROJECT_CONTEXT_FILE_MAX_BYTES and at most 66060288 (63 MB), or Chat fails to start. Keep it at or below DIAL Core's total limit for projects (64 MB by default). |
PROJECT_CONTEXT_ALLOWED_EXTENSIONS | csv,pdf,xlsx | The allowed context file extensions, in lowercase without a dot. csv, pdf, and xlsx files are also checked by their content. |
Further reading