RustPBX Configuration Overview
July 21, 2026 · View on GitHub
Configuration Sources
RustPBX loads configuration in the following order of precedence:
- Command Line arguments: e.g.
--conf my_config.toml - Main Config File:
rustpbx.toml(or custom path) - Partial Config Files: Loaded via glob patterns defined in main config (e.g.
trunks_files,routes_files). - Generated Configs: Automatically loaded from
generated_dirif present (managed by UI/API). - Database Configs: When
generated_db = true, generated configs (trunks, routes, queues, IVR, ACL, CC, SBC) are stored in theconfig_entriesdatabase table instead of files.
Storage Modes
File System Mode (default)
By default, the system assumes a config folder exists next to the binary:
[proxy]
# Root for generated configs (default: ./config)
generated_dir = "./config"
# Explicit overrides for file patterns
routes_files = ["config/routes/*.toml"]
trunks_files = ["config/trunks/*.toml"]
acl_files = ["config/acl/*.toml"]
Database Mode
Set generated_db = true to store all generated configs in the application database:
[proxy]
generated_db = true
In this mode, the system reads from and writes to the config_entries table instead of the filesystem. This includes:
- SIP trunks, routes, queues, and ACL rules
- IVR project definitions (when published)
- CC ACD config, skill groups, and agents
- SBC JSON-RPC config
File-based routes_files, trunks_files, etc. are ignored in DB mode — all config is managed through the database. The generated_dir path is also unused.
Reload Behavior
Changes to rustpbx.toml usually require a restart. However, Trunks, Queues, Routes, and ACLs can be reloaded at runtime without dropping active calls via the Admin Console or API. In DB mode, the same runtime reload applies — configs are loaded from the database.
Addon System
Addons (like Wholesale, Queue, Transcript) are enabled in the [proxy] section.
[proxy]
addons = ["wholesale", "queue"]
Configuration Reference
| # | File | Topics |
|---|---|---|
| 01 | Platform & Networking | HTTP/HTTPS, ports, TLS, external IP |
| 02 | Proxy Core | SIP stack, realms, locators, dialplan |
| 03 | Auth & Users | User accounts, passwords, RBAC |
| 04 | Routing | Route rules, pattern matching |
| 05 | Trunks & Queues | SIP trunks, call queues |
| 06 | Media & Recording | RTP proxy, codecs, call recording, CDR |
| 07 | Addons, Console & Storage | Web console, AMI, blob storage, cluster, licenses, RWI |
| 08 | SipFlow | SIP flow capture, RTP recording, storage backends, WAV export, REST API |