# Configuration Schema Complete reference for Fetch ML configuration options. ## Configuration File Structure Fetch ML uses YAML configuration files. The main configuration file is typically `config.yaml`. ### Full Schema ```yaml # Server Configuration server: address: ":9101" tls: enabled: false cert_file: "" key_file: "" # Database Configuration database: type: "sqlite" # sqlite, postgres, mysql connection: "fetch_ml.db" host: "localhost" port: 5432 username: "postgres" password: "" database: "fetch_ml" # Redis Configuration ## Quick Reference ### Database Types - **SQLite**: `type: sqlite, connection: file.db` - **PostgreSQL**: `type: postgres, host: localhost, port: 5432` ### Key Settings - `server.address: :9101` - `database.type: sqlite` - `redis.addr: localhost:6379` - `auth.enabled: true` - `logging.level: info` ### Environment Override ```bash export FETCHML_SERVER_ADDRESS=:8080 export FETCHML_DATABASE_TYPE=postgres ``` ### Validation ```bash make configlint ```