{
    watch: false            # Watch for changes (dev only)
    debug: false            # Debug mode
    pretty_json: false      # prettify json response
    return_stack: true      # return stack trace on error
    log_calls: true         # Log API Calls

    # if 'return_stack' is true and error contains a status code, return stack trace only for these status codes
    # valid values are:
    #  - an integer number, specifying a status code
    #  - a tuple of (code, subcode or list of subcodes)
    return_stack_on_code: [
        [500, 0]  # raise on internal server error with no subcode
    ]

    listen {
        ip : "0.0.0.0"
        port: 8008
    }

    version {
        required: false
        default: 1.0
        # if set then calls to endpoints with the version
        # greater that the current max version will be rejected
        check_max_version: false
    }

    pre_populate {
        enabled: false
        zip_files: ["/path/to/export.zip"]
        fail_on_error: false
        # artifacts_path: "/mnt/fileserver"
    }

    # time in seconds to take an exclusive lock to init es and mongodb
    # not including the pre_populate
    db_init_timout: 120

    mongo {
        # controls whether FieldDoesNotExist exception will be raised for any extra attribute existing in stored data
        # but not declared in a data model
        strict: false

        aggregate {
            allow_disk_use: true
        }
    }

    elastic {
        probing {
            # settings for inital probing of elastic connection
            max_retries: 4
            timeout: 30
        }
        upgrade_monitoring {
            v16_migration_verification: true
        }
    }

    auth {
        # verify user tokens
        verify_user_tokens: false

        # max token expiration timeout in seconds (1 year)
        max_expiration_sec: 31536000

        # default token expiration timeout in seconds (30 days)
        default_expiration_sec: 2592000

        # cookie containing auth token, for requests arriving from a web-browser
        session_auth_cookie_name: "clearml_token_basic"

        # cookie configuration for authorization cookies generated by auth.login
        cookies {
            httponly: true  # allow only http to access the cookies (no JS etc)
            secure: false   # not using HTTPS
            domain: null    # Limit to localhost is not supported
            max_age: 99999999999
        }

#        # A list of fixed users
#        fixed_users {
#            enabled: true
#            users: [
#                {
#                    username: "john"
#                    password: "123456"
#                    name: "john doe"
#                }
#
#            ]
#        }
    }

    cors {
        origins: "*"

        # Not supported when origins is "*"
        supports_credentials: true
    }

    default_company: "d1bd92a3b039400cbafc60a7a5b1e52b"

    workers {
        # Auto-register unknown workers on status reports and other calls
        auto_register: true
        # Timeout in seconds on task status update. If exceeded
        # then task can be stopped without communicating to the worker
        task_update_timeout: 600
    }

    check_for_updates {
        enabled: true

        # Check for updates every 24 hours
        check_interval_sec: 86400

        url: "https://updates.clear.ml/updates"

        component_name: "clearml-server"

        # GET request timeout
        request_timeout_sec: 3.0
    }

    statistics {
        # Note: statistics are sent ONLY if the user has actively opted-in
        supported: true

        url: "https://updates.clear.ml/stats"

        report_interval_hours: 24
        agent_relevant_threshold_days: 30

        max_retries: 5
        max_backoff_sec: 5
    }

}