Configuration
MiniGateway stores configuration in a SQLite database. You can manage settings through:
- Admin API - RESTful endpoints at
/admin/ - Web Dashboard - Visual interface at
/ui/ - CLI Commands -
minigateway admincommand-line administration
Configuration Paths
Section titled “Configuration Paths”MiniGateway uses platform-specific directories for storing configuration and data files:
| Platform | Config Directory |
|---|---|
| macOS | ~/Library/Application Support/minigateway/ |
| Linux | ~/.config/minigateway/ |
| Windows | %APPDATA%/minigateway/ (e.g., C:\Users\...\AppData\Roaming\minigateway\) |
Key Files
Section titled “Key Files”| File | Description |
|---|---|
minigateway.db | SQLite database (services, routes, plugins, etc.) |
cli-config.json | CLI configuration (API URL, auth token) |
Initialize Configuration
Section titled “Initialize Configuration”Create a YAML configuration template:
# Default path (platform-specific config directory)minigateway init
# Custom pathminigateway init ./my-config.yaml
# Force overwrite existing fileminigateway init --forceDatabase Configuration
Section titled “Database Configuration”By default, MiniGateway stores its database in the platform-specific config directory.
Customize the database location:
minigateway start --db /custom/path/database.dbConfiguration Entities
Section titled “Configuration Entities”MiniGateway manages several interconnected entities:
| Entity | Description |
|---|---|
| Service | Top-level API service grouping |
| Route | Path matching rules for incoming requests |
| Upstream | Backend server pool with load balancing |
| Target | Individual backend server in an upstream |
| Consumer | API consumer/client identity |
| Credential | Authentication credentials for consumers |
| Plugin Binding | Plugin configurations attached to entities |
| LLM Provider | LLM API provider configuration |
| LLM Model | Model mapping and routing rules |
Entity Relationships
Section titled “Entity Relationships”The entities form a hierarchical structure:
Service├── Route (matches incoming requests)│ ├── Upstream (load balancing pool)│ │ └── Target (backend servers)│ └── Plugin Bindings (route-level plugins)├── Consumer (API client)│ └── Credential (authentication)└── Plugin Bindings (service-level plugins)Server Options
Section titled “Server Options”Port Configuration
Section titled “Port Configuration”# Default port (8080)minigateway start
# Custom portminigateway start --port 3000Logging Levels
Section titled “Logging Levels”CORS Configuration
Section titled “CORS Configuration”MiniGateway enables CORS by default for development. Configure in production:
Web UI Configuration
Section titled “Web UI Configuration”Enable/Disable UI
Section titled “Enable/Disable UI”# With UI (default)minigateway start
# Without UI (Admin API only)minigateway start --no-uiCustom UI Path
Section titled “Custom UI Path”minigateway start --ui-dist /path/to/custom/uiNext Steps
Section titled “Next Steps”- Services Configuration - Configure API services
- Routes Configuration - Set up routing rules
- Upstreams & Targets - Configure backend servers
- Plugins - Add functionality with plugins