[
    {
        "DisplayName": "Voice IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "voice_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "File Transfer IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "filetransfer_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "query_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query SSH IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "query_ssh_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query HTTP IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "query_http_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query HTTPS IP",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$ApplicationIPBinding",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "query_https_ip",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Remote Admin Password",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$RemoteAdminPassword",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "serveradmin_password",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Default Voice Port",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$Voice",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "default_voice_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "File Transfer Port",
        "Description": "",
        "Category": "Hidden Settings",
        "Keywords": "",
        "FieldName": "$Filetransfer",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "filetransfer_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query Port (Telnet/RAW)",
        "Description": "",
        "Category": "Server Settings",
        "Keywords": "",
        "FieldName": "$ServerQueryRAW",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query Port (SSH)",
        "Description": "",
        "Category": "Server Settings",
        "Keywords": "",
        "FieldName": "$ServerQuerySSH",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_ssh_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query Port (HTTP)",
        "Description": "",
        "Category": "Server Settings",
        "Keywords": "",
        "FieldName": "$WebQueryHTTP",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_http_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Query Port (HTTPS)",
        "Description": "",
        "Category": "Server Settings",
        "Keywords": "",
        "FieldName": "$WebQueryHTTPS",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_https_port",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {},
        "Hidden": true
    },
    {
        "DisplayName": "Machine ID",
        "Description": "Optional name of this server process to identify a group of servers with the same ID.",
        "Category": "Server Settings",
        "Keywords": "machine,id",
        "FieldName": "machine_id",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "machine_id",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "License File Path",
        "Description": "The physical path where your license file is located.",
        "Category": "Server Settings",
        "Keywords": "license,path",
        "FieldName": "licensepath",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "licensepath",
        "IncludeInCommandLine": false,
        "DefaultValue": "teamspeak3-server_win64/",
        "EnumValues": {}
    },
    {
        "DisplayName": "Query Protocols",
        "Category": "Server Settings",
        "Description": "Protocols that can be used to connect to the ServerQuery. You must choose a Telnet option for AMP console to function fully.",
        "Keywords": "query,protocols",
        "FieldName": "query_protocols",
        "InputType": "enum",
        "IsFlagArgument": false,
        "ParamFieldName": "query_protocols",
        "IncludeInCommandLine": false,
        "DefaultValue": "raw",
        "EnumValues": {
            "": "none",
            "http": "HTTP",
            "raw": "Telnet", 
            "raw,http": "Telnet, HTTP",
            "raw,ssh": "Telnet, SSH",
            "raw,ssh,http": "Telnet, SSH, HTTP",
            "ssh": "SSH",
            "ssh,http": "SSH, HTTP"
        }
    },
    {
        "DisplayName": "Query Timeout",
        "Description": "Number of seconds before a query connection is disconnected because of user inactivity.",
        "Category": "Server Settings",
        "Keywords": "query,timeout",
        "FieldName": "query_timeout",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_timeout",
        "IncludeInCommandLine": false,
        "DefaultValue": "300",
        "Suffix": "seconds",
        "EnumValues": {}
    },
    {
        "DisplayName": "Query Pool Size (2-32)",
        "Description": "The number of threads to use for the query pool. Advanced users with large slot counts or high query usage may wish to try higher numbers here.",
        "Category": "Server Settings",
        "Keywords": "query,pool,size",
        "FieldName": "query_pool_size",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_pool_size",
        "IncludeInCommandLine": false,
        "DefaultValue": "2",
        "Suffix": "threads",
        "EnumValues": {}
    },
    {
        "DisplayName": "Query Buffer Size (1-20)",
        "Description": "Server Query connections have a combined maximum buffer size. When this limit is exceeded, the connection using the most memory is closed.",
        "Category": "Server Settings",
        "Keywords": "query,buffer,size,mb",
        "FieldName": "query_buffer_mb",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "query_buffer_mb",
        "IncludeInCommandLine": false,
        "DefaultValue": "20",
        "Suffix": "MB",
        "EnumValues": {}
    },
    {
      "DisplayName": "Permit Query Access",
      "Description": "A list of IP addresses permitted to access the query methods.",
      "Keywords": "permit,query,access",
      "FieldName": "query_ip_allowlist_list",
      "Category": "Server Settings",
      "InputType": "list",
      "Special": "listfile:./ts3/teamspeak3-server_win64/query_ip_allowlist.txt"
    },
    {
      "DisplayName": "Deny Query Access",
      "Description": "A list of IP addresses permitted to access the query methods.",
      "Keywords": "deny,query,access",
      "FieldName": "query_ip_denylist_list",
      "Category": "Server Settings",
      "InputType": "list",
      "Special": "listfile:./ts3/teamspeak3-server_win64/query_ip_denylist.txt"
    },
    {
        "DisplayName": "DB Plugin",
        "Category": "Server Settings",
        "Description": "Name of the database plugin library used by the server instance.",
        "Keywords": "db,database,plugin",
        "FieldName": "dbplugin",
        "InputType": "enum",
        "IsFlagArgument": false,
        "ParamFieldName": "dbplugin",
        "IncludeInCommandLine": false,
        "DefaultValue": "ts3db_sqlite3",
        "EnumValues": {
            "ts3db_mariadb": "MariaDB/MySQL",
            "ts3db_postgresql": "PostgreSQL",
            "ts3db_sqlite3": "SQLite3"
        }
    },
    {
        "DisplayName": "DB Plugin Parameter",
        "Description": "A custom parameter passed to the database plugin library. For example, the MariaDB database plugin supports a parameter to specify the physical path of the plugins configuration file.",
        "Category": "Server Settings",
        "Keywords": "db,database,plugin,parameter",
        "FieldName": "dbpluginparameter",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "dbpluginparameter",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "DB SQL Path",
        "Description": "The physical path where your SQL script files are located.",
        "Category": "Server Settings",
        "Keywords": "db,database,sql,path",
        "FieldName": "dbsqlpath",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "dbsqlpath",
        "IncludeInCommandLine": false,
        "DefaultValue": "sql/",
        "EnumValues": {}
    },
    {
        "DisplayName": "DB SQL Create Path",
        "Description": "The physical path where your SQL installation files are located. Note that this path will be added to the value of the 'dbsqlpath' parameter.",
        "Category": "Server Settings",
        "Keywords": "db,database,sql,path",
        "FieldName": "dbsqlcreatepath",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "dbsqlcreatepath",
        "IncludeInCommandLine": false,
        "DefaultValue": "create_sqlite/",
        "EnumValues": {}
    },
    {
        "DisplayName": "DB Connections (2-100)",
        "Description": "The number of database connections used by the server. Please note that changing this value can have an affect on your servers performance. Possible values are 2-100.",
        "Category": "Server Settings",
        "Keywords": "db,database,connections",
        "FieldName": "dbconnections",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "dbconnections",
        "IncludeInCommandLine": false,
        "DefaultValue": "10",
        "Suffix": "connections",
        "EnumValues": {}
    },
    {
        "DisplayName": "Log Path",
        "Description": "The physical path where the server will create logfiles.",
        "Category": "Server Settings",
        "Keywords": "log,path",
        "FieldName": "logpath",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "logpath",
        "IncludeInCommandLine": false,
        "DefaultValue": "logs/",
        "EnumValues": {}
    },
    {
        "DisplayName": "Log Query Commands",
        "Description": "The server will log every ServerQuery command executed by clients.",
        "Category": "Server Settings",
        "Keywords": "log,query,commands",
        "FieldName": "logquerycommands",
        "InputType": "checkbox",
        "IsFlagArgument": false,
        "ParamFieldName": "logquerycommands",
        "IncludeInCommandLine": false,
        "DefaultValue": "0",
        "EnumValues": {
            "True": "1",
            "False": "0"
        }
    },
    {
        "DisplayName": "Log Query Timing Interval",
        "Description": "Defines the number of seconds before ServerQuery command timing is reported.",
        "Category": "Server Settings",
        "Keywords": "db,client,keep,days",
        "FieldName": "logquerytiminginterval",
        "InputType": "checkbox",
        "IsFlagArgument": false,
        "ParamFieldName": "logquerytiminginterval",
        "IncludeInCommandLine": false,
        "DefaultValue": "0",
        "EnumValues": {
            "True": "1",
            "False": "0"
        }
    },
    {
        "DisplayName": "DB Client Keep Days",
        "Description": "Defines how many days to keep unused client identities. Auto-pruning is triggered on every start and on every new month while the server is running.",
        "Category": "Server Settings",
        "Keywords": "db,client,keep,days",
        "FieldName": "dbclientkeepdays",
        "InputType": "number",
        "IsFlagArgument": false,
        "ParamFieldName": "dbclientkeepdays",
        "IncludeInCommandLine": false,
        "DefaultValue": "90",
        "EnumValues": {}
    },
    {
        "DisplayName": "Log Append",
        "Description": "The server will not create a new logfile on every start. Instead, the log output will be appended to the previous logfile.",
        "Category": "Server Settings",
        "Keywords": "log,append",
        "FieldName": "logappend",
        "InputType": "checkbox",
        "IsFlagArgument": false,
        "ParamFieldName": "logappend",
        "IncludeInCommandLine": false,
        "DefaultValue": "0",
        "EnumValues": {
            "True": "1",
            "False": "0"
        }
    },
    {
        "DisplayName": "Skip Brute Force Check",
        "Description": "The server will skip and bruteforce protection for whitelisted Ip addresses for the ServerQuery interface.",
        "Category": "Server Settings",
        "Keywords": "disable,skip,brute,force,check",
        "FieldName": "query_skipbruteforcecheck",
        "InputType": "checkbox",
        "IsFlagArgument": false,
        "ParamFieldName": "query_skipbruteforcecheck",
        "IncludeInCommandLine": false,
        "DefaultValue": "0",
        "EnumValues": {
            "True": "1",
            "False": "0"
        }
    },
    {
        "DisplayName": "HTTP Proxy",
        "Description": "If set, the server will use the specified proxy to contact the accounting server over http.",
        "Category": "Server Settings",
        "Keywords": "http,proxy",
        "FieldName": "http_proxy",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "http_proxy",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {}
    },
    {
        "DisplayName": "Server Query Docs Path",
        "Description": "Physical location where the server is looking for the documents used for the help command in ServerQuery.",
        "Category": "Server Settings",
        "Keywords": "server,query,docs,path",
        "FieldName": "serverquerydocs_path",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "serverquerydocs_path",
        "IncludeInCommandLine": false,
        "DefaultValue": "serverquerydocs/",
        "EnumValues": {}
    },
    {
        "DisplayName": "MMDB Path",
        "Description": "Set to the path of an MMDB file to use this as a source for GeoIP lookups. Requires libmaxminddb installed, which can be found in most Linux distributions as a package. Windows users can use the .dll found in the redist folder.",
        "Category": "Server Settings",
        "Keywords": "mmdb,file,path,geoip,lookups",
        "FieldName": "mmdbpath",
        "InputType": "text",
        "IsFlagArgument": false,
        "ParamFieldName": "mmdbpath",
        "IncludeInCommandLine": false,
        "DefaultValue": "",
        "EnumValues": {}
    }
]