.. _other-full-config:


Config file and command line options
====================================

The Jupyter Server can be run with a variety of command line arguments.
A list of available options can be found below in the :ref:`options section
<options>`.

Defaults for these options can also be set by creating a file named
``jupyter_server_config.py`` in your Jupyter folder. The Jupyter
folder is in your home directory, ``~/.jupyter``.

To create a ``jupyter_server_config.py`` file, with all the defaults
commented out, you can use the following command line::

  $ jupyter server --generate-config


.. _options:

Options
-------

This list of options can be generated by running the following and hitting
enter::

  $ jupyter server --help-all




Application.log_datefmt : Unicode
    Default: ``'%Y-%m-%d %H:%M:%S'``

    The date format used by logging formatters for %(asctime)s

Application.log_format : Unicode
    Default: ``'[%(name)s]%(highlevel)s %(message)s'``

    The Logging format template

Application.log_level : any of ``0``|``10``|``20``|``30``|``40``|``50``|``'DEBUG'``|``'INFO'``|``'WARN'``|``'ERROR'``|``'CRITICAL'``
    Default: ``30``

    Set the log level by value or name.

Application.logging_config : Dict
    Default: ``{}``


    Configure additional log handlers.

    The default stderr logs handler is configured by the
    log_level, log_datefmt and log_format settings.

    This configuration can be used to configure additional handlers
    (e.g. to output the log to a file) or for finer control over the
    default handlers.

    If provided this should be a logging configuration dictionary, for
    more information see:
    https://docs.python.org/3/library/logging.config.html#logging-config-dictschema

    This dictionary is merged with the base logging configuration which
    defines the following:

    * A logging formatter intended for interactive use called
      ``console``.
    * A logging handler that writes to stderr called
      ``console`` which uses the formatter ``console``.
    * A logger with the name of this application set to ``DEBUG``
      level.

    This example adds a new handler that writes to a file:

    .. code-block:: python

       c.Application.logging_config = {
           "handlers": {
               "file": {
                   "class": "logging.FileHandler",
                   "level": "DEBUG",
                   "filename": "<path/to/file>",
               }
           },
           "loggers": {
               "<application-name>": {
                   "level": "DEBUG",
                   # NOTE: if you don't list the default "console"
                   # handler here then it will be disabled
                   "handlers": ["console", "file"],
               },
           },
       }



Application.show_config : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout

Application.show_config_json : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout (as JSON)

JupyterApp.answer_yes : Bool
    Default: ``False``

    Answer yes to any prompts.

JupyterApp.config_file : Unicode
    Default: ``''``

    Full path of a config file.

JupyterApp.config_file_name : Unicode
    Default: ``''``

    Specify a config file to load.

JupyterApp.generate_config : Bool
    Default: ``False``

    Generate default config file.

JupyterApp.log_datefmt : Unicode
    Default: ``'%Y-%m-%d %H:%M:%S'``

    The date format used by logging formatters for %(asctime)s

JupyterApp.log_format : Unicode
    Default: ``'[%(name)s]%(highlevel)s %(message)s'``

    The Logging format template

JupyterApp.log_level : any of ``0``|``10``|``20``|``30``|``40``|``50``|``'DEBUG'``|``'INFO'``|``'WARN'``|``'ERROR'``|``'CRITICAL'``
    Default: ``30``

    Set the log level by value or name.

JupyterApp.logging_config : Dict
    Default: ``{}``


    Configure additional log handlers.

    The default stderr logs handler is configured by the
    log_level, log_datefmt and log_format settings.

    This configuration can be used to configure additional handlers
    (e.g. to output the log to a file) or for finer control over the
    default handlers.

    If provided this should be a logging configuration dictionary, for
    more information see:
    https://docs.python.org/3/library/logging.config.html#logging-config-dictschema

    This dictionary is merged with the base logging configuration which
    defines the following:

    * A logging formatter intended for interactive use called
      ``console``.
    * A logging handler that writes to stderr called
      ``console`` which uses the formatter ``console``.
    * A logger with the name of this application set to ``DEBUG``
      level.

    This example adds a new handler that writes to a file:

    .. code-block:: python

       c.Application.logging_config = {
           "handlers": {
               "file": {
                   "class": "logging.FileHandler",
                   "level": "DEBUG",
                   "filename": "<path/to/file>",
               }
           },
           "loggers": {
               "<application-name>": {
                   "level": "DEBUG",
                   # NOTE: if you don't list the default "console"
                   # handler here then it will be disabled
                   "handlers": ["console", "file"],
               },
           },
       }



JupyterApp.show_config : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout

JupyterApp.show_config_json : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout (as JSON)

ServerApp.allow_credentials : Bool
    Default: ``False``

    Set the Access-Control-Allow-Credentials: true header

ServerApp.allow_external_kernels : Bool
    Default: ``False``

    Whether or not to allow external kernels, whose connection files are placed in external_connection_dir.

ServerApp.allow_origin : Unicode
    Default: ``''``

    Set the Access-Control-Allow-Origin header

            Use '*' to allow any origin to access your server.

            Takes precedence over allow_origin_pat.


ServerApp.allow_origin_pat : Unicode
    Default: ``''``

    Use a regular expression for the Access-Control-Allow-Origin header

            Requests from an origin matching the expression will get replies with:

                Access-Control-Allow-Origin: origin

            where `origin` is the origin of the request.

            Ignored if allow_origin is set.


ServerApp.allow_password_change : Bool
    Default: ``True``

    DEPRECATED in 2.0. Use PasswordIdentityProvider.allow_password_change

ServerApp.allow_remote_access : Bool
    Default: ``False``

    Allow requests where the Host header doesn't point to a local server

           By default, requests get a 403 forbidden response if the 'Host' header
           shows that the browser thinks it's on a non-local domain.
           Setting this option to True disables this check.

           This protects against 'DNS rebinding' attacks, where a remote web server
           serves you a page and then changes its DNS to send later requests to a
           local IP, bypassing same-origin checks.

           Local IP addresses (such as 127.0.0.1 and ::1) are allowed as local,
           along with hostnames configured in local_hostnames.


ServerApp.allow_root : Bool
    Default: ``False``

    Whether to allow the user to run the server as root.

ServerApp.allow_unauthenticated_access : Bool
    Default: ``True``

    Allow unauthenticated access to endpoints without authentication rule.

            When set to `True` (default in jupyter-server 2.0, subject to change
            in the future), any request to an endpoint without an authentication rule
            (either `@tornado.web.authenticated`, or `@allow_unauthenticated`)
            will be permitted, regardless of whether user has logged in or not.

            When set to `False`, logging in will be required for access to each endpoint,
            excluding the endpoints marked with `@allow_unauthenticated` decorator.

            This option can be configured using `JUPYTER_SERVER_ALLOW_UNAUTHENTICATED_ACCESS`
            environment variable: any non-empty value other than "true" and "yes" will
            prevent unauthenticated access to endpoints without `@allow_unauthenticated`.


ServerApp.answer_yes : Bool
    Default: ``False``

    Answer yes to any prompts.

ServerApp.authenticate_prometheus : Bool
    Default: ``True``

    "
            Require authentication to access prometheus metrics.


ServerApp.authorizer_class : Type
    Default: ``'jupyter_server.auth.authorizer.AllowAllAuthorizer'``

    The authorizer class to use.

ServerApp.autoreload : Bool
    Default: ``False``

    Reload the webapp when changes are made to any Python src files.

ServerApp.base_url : Unicode
    Default: ``'/'``

    The base URL for the Jupyter server.

                           Leading and trailing slashes can be omitted,
                           and will automatically be added.


ServerApp.browser : Unicode
    Default: ``''``

    Specify what command to use to invoke a web
                          browser when starting the server. If not specified, the
                          default browser will be determined by the `webbrowser`
                          standard library module, which allows setting of the
                          BROWSER environment variable to override it.


ServerApp.certfile : Unicode
    Default: ``''``

    The full path to an SSL/TLS certificate file.

ServerApp.client_ca : Unicode
    Default: ``''``

    The full path to a certificate authority certificate for SSL/TLS client authentication.

ServerApp.config_file : Unicode
    Default: ``''``

    Full path of a config file.

ServerApp.config_file_name : Unicode
    Default: ``''``

    Specify a config file to load.

ServerApp.config_manager_class : Type
    Default: ``'jupyter_server.services.config.manager.ConfigManager'``

    The config manager class to use

ServerApp.contents_manager_class : Type
    Default: ``'jupyter_server.services.contents.largefilemanager.AsyncLarge...``

    The content manager class to use.

ServerApp.cookie_options : Dict
    Default: ``{}``

    DEPRECATED. Use IdentityProvider.cookie_options

ServerApp.cookie_secret : Bytes
    Default: ``b''``

    The random bytes used to secure cookies.
            By default this is generated on first start of the server and persisted across server
            sessions by writing the cookie secret into the `cookie_secret_file` file.
            When using an executable config file you can override this to be random at each server restart.

            Note: Cookie secrets should be kept private, do not share config files with
            cookie_secret stored in plaintext (you can read the value from a file).


ServerApp.cookie_secret_file : Unicode
    Default: ``''``

    The file where the cookie secret is stored.

ServerApp.custom_display_url : Unicode
    Default: ``''``

    Override URL shown to users.

            Replace actual URL, including protocol, address, port and base URL,
            with the given value when displaying URL to the users. Do not change
            the actual connection URL. If authentication token is enabled, the
            token is added to the custom URL automatically.

            This option is intended to be used when the URL to display to the user
            cannot be determined reliably by the Jupyter server (proxified
            or containerized setups for example).

ServerApp.default_url : Unicode
    Default: ``'/'``

    The default URL to redirect to from `/`

ServerApp.disable_check_xsrf : Bool
    Default: ``False``

    Disable cross-site-request-forgery protection

            Jupyter server includes protection from cross-site request forgeries,
            requiring API requests to either:

            - originate from pages served by this server (validated with XSRF cookie and token), or
            - authenticate with a token

            Some anonymous compute resources still desire the ability to run code,
            completely without authentication.
            These services can disable all authentication and security checks,
            with the full knowledge of what that implies.


ServerApp.external_connection_dir : Unicode
    Default: ``None``

    The directory to look at for external kernel connection files, if allow_external_kernels is True. Defaults to Jupyter runtime_dir/external_kernels. Make sure that this directory is not filled with left-over connection files, that could result in unnecessary kernel manager creations.

ServerApp.extra_services : List
    Default: ``[]``

    handlers that should be loaded at higher priority than the default services

ServerApp.extra_static_paths : List
    Default: ``[]``

    Extra paths to search for serving static files.

            This allows adding javascript/css to be available from the Jupyter server machine,
            or overriding individual files in the IPython

ServerApp.extra_template_paths : List
    Default: ``[]``

    Extra paths to search for serving jinja templates.

            Can be used to override templates from jupyter_server.templates.

ServerApp.file_to_run : Unicode
    Default: ``''``

    Open the named file when the application is launched.

ServerApp.file_url_prefix : Unicode
    Default: ``'notebooks'``

    The URL prefix where files are opened directly.

ServerApp.generate_config : Bool
    Default: ``False``

    Generate default config file.

ServerApp.get_secure_cookie_kwargs : Dict
    Default: ``{}``

    DEPRECATED. Use IdentityProvider.get_secure_cookie_kwargs

ServerApp.identity_provider_class : Type
    Default: ``'jupyter_server.auth.identity.PasswordIdentityProvider'``

    The identity provider class to use.

ServerApp.iopub_data_rate_limit : Float
    Default: ``0.0``

    DEPRECATED. Use ZMQChannelsWebsocketConnection.iopub_data_rate_limit

ServerApp.iopub_msg_rate_limit : Float
    Default: ``0.0``

    DEPRECATED. Use ZMQChannelsWebsocketConnection.iopub_msg_rate_limit

ServerApp.ip : Unicode
    Default: ``'localhost'``

    The IP address the Jupyter server will listen on.

ServerApp.jinja_environment_options : Dict
    Default: ``{}``

    Supply extra arguments that will be passed to Jinja environment.

ServerApp.jinja_template_vars : Dict
    Default: ``{}``

    Extra variables to supply to jinja templates when rendering.

ServerApp.jpserver_extensions : Dict
    Default: ``{}``

    Dict of Python modules to load as Jupyter server extensions.Entry values can be used to enable and disable the loading ofthe extensions. The extensions will be loaded in alphabetical order.

ServerApp.kernel_manager_class : Type
    Default: ``'jupyter_server.services.kernels.kernelmanager.MappingKernelM...``

    The kernel manager class to use.

ServerApp.kernel_spec_manager_class : Type
    Default: ``'builtins.object'``


    The kernel spec manager class to use. Should be a subclass
    of `jupyter_client.kernelspec.KernelSpecManager`.

    The Api of KernelSpecManager is provisional and might change
    without warning between this version of Jupyter and the next stable one.


ServerApp.kernel_websocket_connection_class : Type
    Default: ``'jupyter_server.services.kernels.connection.base.BaseKernelWe...``

    The kernel websocket connection class to use.

ServerApp.kernel_ws_protocol : Unicode
    Default: ``''``

    DEPRECATED. Use ZMQChannelsWebsocketConnection.kernel_ws_protocol

ServerApp.keyfile : Unicode
    Default: ``''``

    The full path to a private key file for usage with SSL/TLS.

ServerApp.limit_rate : Bool
    Default: ``False``

    DEPRECATED. Use ZMQChannelsWebsocketConnection.limit_rate

ServerApp.local_hostnames : List
    Default: ``['localhost']``

    Hostnames to allow as local when allow_remote_access is False.

           Local IP addresses (such as 127.0.0.1 and ::1) are automatically accepted
           as local as well.


ServerApp.log_datefmt : Unicode
    Default: ``'%Y-%m-%d %H:%M:%S'``

    The date format used by logging formatters for %(asctime)s

ServerApp.log_format : Unicode
    Default: ``'[%(name)s]%(highlevel)s %(message)s'``

    The Logging format template

ServerApp.log_level : any of ``0``|``10``|``20``|``30``|``40``|``50``|``'DEBUG'``|``'INFO'``|``'WARN'``|``'ERROR'``|``'CRITICAL'``
    Default: ``30``

    Set the log level by value or name.

ServerApp.logging_config : Dict
    Default: ``{}``


    Configure additional log handlers.

    The default stderr logs handler is configured by the
    log_level, log_datefmt and log_format settings.

    This configuration can be used to configure additional handlers
    (e.g. to output the log to a file) or for finer control over the
    default handlers.

    If provided this should be a logging configuration dictionary, for
    more information see:
    https://docs.python.org/3/library/logging.config.html#logging-config-dictschema

    This dictionary is merged with the base logging configuration which
    defines the following:

    * A logging formatter intended for interactive use called
      ``console``.
    * A logging handler that writes to stderr called
      ``console`` which uses the formatter ``console``.
    * A logger with the name of this application set to ``DEBUG``
      level.

    This example adds a new handler that writes to a file:

    .. code-block:: python

       c.Application.logging_config = {
           "handlers": {
               "file": {
                   "class": "logging.FileHandler",
                   "level": "DEBUG",
                   "filename": "<path/to/file>",
               }
           },
           "loggers": {
               "<application-name>": {
                   "level": "DEBUG",
                   # NOTE: if you don't list the default "console"
                   # handler here then it will be disabled
                   "handlers": ["console", "file"],
               },
           },
       }



ServerApp.login_handler_class : Type
    Default: ``'jupyter_server.auth.login.LegacyLoginHandler'``

    The login handler class to use.

ServerApp.logout_handler_class : Type
    Default: ``'jupyter_server.auth.logout.LogoutHandler'``

    The logout handler class to use.

ServerApp.max_body_size : Int
    Default: ``536870912``


    Sets the maximum allowed size of the client request body, specified in
    the Content-Length request header field. If the size in a request
    exceeds the configured value, a malformed HTTP message is returned to
    the client.

    Note: max_body_size is applied even in streaming mode.


ServerApp.max_buffer_size : Int
    Default: ``536870912``


    Gets or sets the maximum amount of memory, in bytes, that is allocated
    for use by the buffer manager.


ServerApp.min_open_files_limit : Int
    Default: ``0``


    Gets or sets a lower bound on the open file handles process resource
    limit. This may need to be increased if you run into an
    OSError: [Errno 24] Too many open files.
    This is not applicable when running on Windows.


ServerApp.notebook_dir : Unicode
    Default: ``''``

    DEPRECATED, use root_dir.

ServerApp.open_browser : Bool
    Default: ``False``

    Whether to open in a browser after starting.
                            The specific browser used is platform dependent and
                            determined by the python standard library `webbrowser`
                            module, unless it is overridden using the --browser
                            (ServerApp.browser) configuration option.


ServerApp.password : Unicode
    Default: ``''``

    DEPRECATED in 2.0. Use PasswordIdentityProvider.hashed_password

ServerApp.password_required : Bool
    Default: ``False``

    DEPRECATED in 2.0. Use PasswordIdentityProvider.password_required

ServerApp.port : Int
    Default: ``0``

    The port the server will listen on (env: JUPYTER_PORT).

ServerApp.port_retries : Int
    Default: ``50``

    The number of additional ports to try if the specified port is not available (env: JUPYTER_PORT_RETRIES).

ServerApp.preferred_dir : Unicode
    Default: ``''``

    Preferred starting directory to use for notebooks and kernels. ServerApp.preferred_dir is deprecated in jupyter-server 2.0. Use FileContentsManager.preferred_dir instead

ServerApp.pylab : Unicode
    Default: ``'disabled'``


    DISABLED: use %pylab or %matplotlib in the notebook to enable matplotlib.


ServerApp.quit_button : Bool
    Default: ``True``

    If True, display controls to shut down the Jupyter server, such as menu items or buttons.

ServerApp.rate_limit_window : Float
    Default: ``0.0``

    DEPRECATED. Use ZMQChannelsWebsocketConnection.rate_limit_window

ServerApp.reraise_server_extension_failures : Bool
    Default: ``False``

    Reraise exceptions encountered loading server extensions?

ServerApp.root_dir : Unicode
    Default: ``''``

    The directory to use for notebooks and kernels.

ServerApp.session_manager_class : Type
    Default: ``'builtins.object'``

    The session manager class to use.

ServerApp.show_config : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout

ServerApp.show_config_json : Bool
    Default: ``False``

    Instead of starting the Application, dump configuration to stdout (as JSON)

ServerApp.shutdown_no_activity_timeout : Int
    Default: ``0``

    Shut down the server after N seconds with no kernelsrunning and no activity. This can be used together with culling idle kernels (MappingKernelManager.cull_idle_timeout) to shutdown the Jupyter server when it's not in use. This is not precisely timed: it may shut down up to a minute later. 0 (the default) disables this automatic shutdown.

ServerApp.sock : Unicode
    Default: ``''``

    The UNIX socket the Jupyter server will listen on.

ServerApp.sock_mode : Unicode
    Default: ``'0600'``

    The permissions mode for UNIX socket creation (default: 0600).

ServerApp.ssl_options : Dict
    Default: ``{}``

    Supply SSL options for the tornado HTTPServer.
                See the tornado docs for details.

ServerApp.static_immutable_cache : List
    Default: ``[]``


    Paths to set up static files as immutable.

    This allow setting up the cache control of static files as immutable.
    It should be used for static file named with a hash for instance.


ServerApp.terminado_settings : Dict
    Default: ``{}``

    Supply overrides for terminado. Currently only supports "shell_command".

ServerApp.terminals_enabled : Bool
    Default: ``False``

    Set to False to disable terminals.

             This does *not* make the server more secure by itself.
             Anything the user can in a terminal, they can also do in a notebook.

             Terminals may also be automatically disabled if the terminado package
             is not available.


ServerApp.token : Unicode
    Default: ``'<DEPRECATED>'``

    DEPRECATED. Use IdentityProvider.token

ServerApp.tornado_settings : Dict
    Default: ``{}``

    Supply overrides for the tornado.web.Application that the Jupyter server uses.

ServerApp.trust_xheaders : Bool
    Default: ``False``

    Whether to trust or not X-Scheme/X-Forwarded-Proto and X-Real-Ip/X-Forwarded-For headerssent by the upstream reverse proxy. Necessary if the proxy handles SSL

ServerApp.use_redirect_file : Bool
    Default: ``True``

    Disable launching browser by redirect file
         For versions of notebook > 5.7.2, a security feature measure was added that
         prevented the authentication token used to launch the browser from being visible.
         This feature makes it difficult for other users on a multi-user system from
         running code in your Jupyter session as you.
         However, some environments (like Windows Subsystem for Linux (WSL) and Chromebooks),
         launching a browser using a redirect file can lead the browser failing to load.
         This is because of the difference in file structures/paths between the runtime and
         the browser.

         Disabling this setting to False will disable this behavior, allowing the browser
         to launch by using a URL and visible token (as before).


ServerApp.webbrowser_open_new : Int
    Default: ``2``

    Specify where to open the server on startup. This is the
            `new` argument passed to the standard library method `webbrowser.open`.
            The behaviour is not guaranteed, but depends on browser support. Valid
            values are:

             - 2 opens a new tab,
             - 1 opens a new window,
             - 0 opens in an existing window.

            See the `webbrowser.open` documentation for details.


ServerApp.websocket_compression_options : Any
    Default: ``None``


    Set the tornado compression options for websocket connections.

    This value will be returned from :meth:`WebSocketHandler.get_compression_options`.
    None (default) will disable compression.
    A dict (even an empty one) will enable compression.

    See the tornado docs for WebSocketHandler.get_compression_options for details.


ServerApp.websocket_ping_interval : Int
    Default: ``0``


    Configure the websocket ping interval in seconds.

    Websockets are long-lived connections that are used by some Jupyter
    Server extensions.

    Periodic pings help to detect disconnected clients and keep the
    connection active. If this is set to None, then no pings will be
    performed.

    When a ping is sent, the client has ``websocket_ping_timeout``
    seconds to respond. If no response is received within this period,
    the connection will be closed from the server side.


ServerApp.websocket_ping_timeout : Int
    Default: ``0``


    Configure the websocket ping timeout in seconds.

    See ``websocket_ping_interval`` for details.


ServerApp.websocket_url : Unicode
    Default: ``''``

    The base URL for websockets,
            if it differs from the HTTP server (hint: it almost certainly doesn't).

            Should be in the form of an HTTP origin: ws[s]://hostname[:port]


ConnectionFileMixin.connection_file : Unicode
    Default: ``''``

    JSON file in which to store connection info [default: kernel-<pid>.json]

        This file will contain the IP, ports, and authentication key needed to connect
        clients to this kernel. By default, this file will be created in the security dir
        of the current profile, but can be specified by absolute path.


ConnectionFileMixin.control_port : Int
    Default: ``0``

    set the control (ROUTER) port [default: random]

ConnectionFileMixin.hb_port : Int
    Default: ``0``

    set the heartbeat port [default: random]

ConnectionFileMixin.iopub_port : Int
    Default: ``0``

    set the iopub (PUB) port [default: random]

ConnectionFileMixin.ip : Unicode
    Default: ``''``

    Set the kernel's IP address [default localhost].
            If the IP address is something other than localhost, then
            Consoles on other machines will be able to connect
            to the Kernel, so be careful!

ConnectionFileMixin.shell_port : Int
    Default: ``0``

    set the shell (ROUTER) port [default: random]

ConnectionFileMixin.stdin_port : Int
    Default: ``0``

    set the stdin (ROUTER) port [default: random]

ConnectionFileMixin.transport : any of ``'tcp'``|``'ipc'`` (case-insensitive)
    Default: ``'tcp'``

    No description

KernelManager.autorestart : Bool
    Default: ``True``

    Should we autorestart the kernel if it dies.

KernelManager.cache_ports : Bool
    Default: ``False``

    True if the MultiKernelManager should cache ports for this KernelManager instance

KernelManager.connection_file : Unicode
    Default: ``''``

    JSON file in which to store connection info [default: kernel-<pid>.json]

        This file will contain the IP, ports, and authentication key needed to connect
        clients to this kernel. By default, this file will be created in the security dir
        of the current profile, but can be specified by absolute path.


KernelManager.control_port : Int
    Default: ``0``

    set the control (ROUTER) port [default: random]

KernelManager.hb_port : Int
    Default: ``0``

    set the heartbeat port [default: random]

KernelManager.iopub_port : Int
    Default: ``0``

    set the iopub (PUB) port [default: random]

KernelManager.ip : Unicode
    Default: ``''``

    Set the kernel's IP address [default localhost].
            If the IP address is something other than localhost, then
            Consoles on other machines will be able to connect
            to the Kernel, so be careful!

KernelManager.shell_port : Int
    Default: ``0``

    set the shell (ROUTER) port [default: random]

KernelManager.shutdown_wait_time : Float
    Default: ``5.0``

    Time to wait for a kernel to terminate before killing it, in seconds. When a shutdown request is initiated, the kernel will be immediately sent an interrupt (SIGINT), followedby a shutdown_request message, after 1/2 of `shutdown_wait_time`it will be sent a terminate (SIGTERM) request, and finally at the end of `shutdown_wait_time` will be killed (SIGKILL). terminate and kill may be equivalent on windows.  Note that this value can beoverridden by the in-use kernel provisioner since shutdown times mayvary by provisioned environment.

KernelManager.stdin_port : Int
    Default: ``0``

    set the stdin (ROUTER) port [default: random]

KernelManager.transport : any of ``'tcp'``|``'ipc'`` (case-insensitive)
    Default: ``'tcp'``

    No description

Session.buffer_threshold : Int
    Default: ``1024``

    Threshold (in bytes) beyond which an object's buffer should be extracted to avoid pickling.

Session.check_pid : Bool
    Default: ``True``

    Whether to check PID to protect against calls after fork.

            This check can be disabled if fork-safety is handled elsewhere.


Session.copy_threshold : Int
    Default: ``65536``

    Threshold (in bytes) beyond which a buffer should be sent without copying.

Session.debug : Bool
    Default: ``False``

    Debug output in the Session

Session.digest_history_size : Int
    Default: ``65536``

    The maximum number of digests to remember.

            The digest history will be culled when it exceeds this value.


Session.item_threshold : Int
    Default: ``64``

    The maximum number of items for a container to be introspected for custom serialization.
            Containers larger than this are pickled outright.


Session.key : CBytes
    Default: ``b''``

    execution key, for signing messages.

Session.keyfile : Unicode
    Default: ``''``

    path to file containing execution key.

Session.metadata : Dict
    Default: ``{}``

    Metadata dictionary, which serves as the default top-level metadata dict for each message.

Session.packer : DottedObjectName
    Default: ``'json'``

    The name of the packer for serializing messages.
                Should be one of 'json', 'pickle', or an import name
                for a custom callable serializer.

Session.session : CUnicode
    Default: ``''``

    The UUID identifying this session.

Session.signature_scheme : Unicode
    Default: ``'hmac-sha256'``

    The digest scheme used to construct the message signatures.
            Must have the form 'hmac-HASH'.

Session.unpacker : DottedObjectName
    Default: ``'json'``

    The name of the unpacker for unserializing messages.
            Only used with custom functions for `packer`.

Session.username : Unicode
    Default: ``'sbuild'``

    Username for the Session. Default is your system username.

MultiKernelManager.default_kernel_name : Unicode
    Default: ``'python3'``

    The name of the default kernel to start

MultiKernelManager.kernel_manager_class : DottedObjectName
    Default: ``'jupyter_client.ioloop.IOLoopKernelManager'``

    The kernel manager class.  This is configurable to allow
            subclassing of the KernelManager for customized behavior.


MultiKernelManager.shared_context : Bool
    Default: ``True``

    Share a single zmq.Context to talk to all my kernels

MappingKernelManager.allow_tracebacks : Bool
    Default: ``True``

    Whether to send tracebacks to clients on exceptions.

MappingKernelManager.allowed_message_types : List
    Default: ``[]``

    White list of allowed kernel message types.
            When the list is empty, all message types are allowed.


MappingKernelManager.buffer_offline_messages : Bool
    Default: ``True``

    Whether messages from kernels whose frontends have disconnected should be buffered in-memory.

            When True (default), messages are buffered and replayed on reconnect,
            avoiding lost messages due to interrupted connectivity.

            Disable if long-running kernels will produce too much output while
            no frontends are connected.


MappingKernelManager.cull_busy : Bool
    Default: ``False``

    Whether to consider culling kernels which are busy.
            Only effective if cull_idle_timeout > 0.

MappingKernelManager.cull_connected : Bool
    Default: ``False``

    Whether to consider culling kernels which have one or more connections.
            Only effective if cull_idle_timeout > 0.

MappingKernelManager.cull_idle_timeout : Int
    Default: ``0``

    Timeout (in seconds) after which a kernel is considered idle and ready to be culled.
            Values of 0 or lower disable culling. Very short timeouts may result in kernels being culled
            for users with poor network connections.

MappingKernelManager.cull_interval : Int
    Default: ``300``

    The interval (in seconds) on which to check for idle kernels exceeding the cull timeout value.

MappingKernelManager.default_kernel_name : Unicode
    Default: ``'python3'``

    The name of the default kernel to start

MappingKernelManager.kernel_info_timeout : Float
    Default: ``60``

    Timeout for giving up on a kernel (in seconds).

            On starting and restarting kernels, we check whether the
            kernel is running and responsive by sending kernel_info_requests.
            This sets the timeout in seconds for how long the kernel can take
            before being presumed dead.
            This affects the MappingKernelManager (which handles kernel restarts)
            and the ZMQChannelsHandler (which handles the startup).


MappingKernelManager.kernel_manager_class : DottedObjectName
    Default: ``'jupyter_client.ioloop.IOLoopKernelManager'``

    The kernel manager class.  This is configurable to allow
            subclassing of the KernelManager for customized behavior.


MappingKernelManager.root_dir : Unicode
    Default: ``''``

    No description

MappingKernelManager.shared_context : Bool
    Default: ``True``

    Share a single zmq.Context to talk to all my kernels

MappingKernelManager.traceback_replacement_message : Unicode
    Default: ``'An exception occurred at runtime, which is not shown due to ...``

    Message to print when allow_tracebacks is False, and an exception occurs

MappingKernelManager.untracked_message_types : List
    Default: ``['comm_info_request', 'comm_info_reply', 'kernel_info_request...``

    List of kernel message types excluded from user activity tracking.

            This should be a superset of the message types sent on any channel other
            than the shell channel.

KernelSpecManager.allowed_kernelspecs : Set
    Default: ``set()``

    List of allowed kernel names.

            By default, all installed kernels are allowed.


KernelSpecManager.ensure_native_kernel : Bool
    Default: ``True``

    If there is no Python kernelspec registered and the IPython
            kernel is available, ensure it is added to the spec list.


KernelSpecManager.kernel_spec_class : Type
    Default: ``'jupyter_client.kernelspec.KernelSpec'``

    The kernel spec class.  This is configurable to allow
            subclassing of the KernelSpecManager for customized behavior.


KernelSpecManager.whitelist : Set
    Default: ``set()``

    Deprecated, use `KernelSpecManager.allowed_kernelspecs`


AsyncMultiKernelManager.default_kernel_name : Unicode
    Default: ``'python3'``

    The name of the default kernel to start

AsyncMultiKernelManager.kernel_manager_class : DottedObjectName
    Default: ``'jupyter_client.ioloop.AsyncIOLoopKernelManager'``

    The kernel manager class.  This is configurable to allow
            subclassing of the AsyncKernelManager for customized behavior.


AsyncMultiKernelManager.shared_context : Bool
    Default: ``True``

    Share a single zmq.Context to talk to all my kernels

AsyncMultiKernelManager.use_pending_kernels : Bool
    Default: ``False``

    Whether to make kernels available before the process has started.  The
            kernel has a `.ready` future which can be awaited before connecting

AsyncMappingKernelManager.allow_tracebacks : Bool
    Default: ``True``

    Whether to send tracebacks to clients on exceptions.

AsyncMappingKernelManager.allowed_message_types : List
    Default: ``[]``

    White list of allowed kernel message types.
            When the list is empty, all message types are allowed.


AsyncMappingKernelManager.buffer_offline_messages : Bool
    Default: ``True``

    Whether messages from kernels whose frontends have disconnected should be buffered in-memory.

            When True (default), messages are buffered and replayed on reconnect,
            avoiding lost messages due to interrupted connectivity.

            Disable if long-running kernels will produce too much output while
            no frontends are connected.


AsyncMappingKernelManager.cull_busy : Bool
    Default: ``False``

    Whether to consider culling kernels which are busy.
            Only effective if cull_idle_timeout > 0.

AsyncMappingKernelManager.cull_connected : Bool
    Default: ``False``

    Whether to consider culling kernels which have one or more connections.
            Only effective if cull_idle_timeout > 0.

AsyncMappingKernelManager.cull_idle_timeout : Int
    Default: ``0``

    Timeout (in seconds) after which a kernel is considered idle and ready to be culled.
            Values of 0 or lower disable culling. Very short timeouts may result in kernels being culled
            for users with poor network connections.

AsyncMappingKernelManager.cull_interval : Int
    Default: ``300``

    The interval (in seconds) on which to check for idle kernels exceeding the cull timeout value.

AsyncMappingKernelManager.default_kernel_name : Unicode
    Default: ``'python3'``

    The name of the default kernel to start

AsyncMappingKernelManager.kernel_info_timeout : Float
    Default: ``60``

    Timeout for giving up on a kernel (in seconds).

            On starting and restarting kernels, we check whether the
            kernel is running and responsive by sending kernel_info_requests.
            This sets the timeout in seconds for how long the kernel can take
            before being presumed dead.
            This affects the MappingKernelManager (which handles kernel restarts)
            and the ZMQChannelsHandler (which handles the startup).


AsyncMappingKernelManager.kernel_manager_class : DottedObjectName
    Default: ``'jupyter_client.ioloop.AsyncIOLoopKernelManager'``

    The kernel manager class.  This is configurable to allow
            subclassing of the AsyncKernelManager for customized behavior.


AsyncMappingKernelManager.root_dir : Unicode
    Default: ``''``

    No description

AsyncMappingKernelManager.shared_context : Bool
    Default: ``True``

    Share a single zmq.Context to talk to all my kernels

AsyncMappingKernelManager.traceback_replacement_message : Unicode
    Default: ``'An exception occurred at runtime, which is not shown due to ...``

    Message to print when allow_tracebacks is False, and an exception occurs

AsyncMappingKernelManager.untracked_message_types : List
    Default: ``['comm_info_request', 'comm_info_reply', 'kernel_info_request...``

    List of kernel message types excluded from user activity tracking.

            This should be a superset of the message types sent on any channel other
            than the shell channel.

AsyncMappingKernelManager.use_pending_kernels : Bool
    Default: ``False``

    Whether to make kernels available before the process has started.  The
            kernel has a `.ready` future which can be awaited before connecting

ContentsManager.allow_hidden : Bool
    Default: ``False``

    Allow access to hidden files

ContentsManager.checkpoints : Instance
    Default: ``None``

    No description

ContentsManager.checkpoints_class : Type
    Default: ``'jupyter_server.services.contents.checkpoints.Checkpoints'``

    No description

ContentsManager.checkpoints_kwargs : Dict
    Default: ``{}``

    No description

ContentsManager.event_logger : Instance
    Default: ``None``

    No description

ContentsManager.files_handler_class : Type
    Default: ``'jupyter_server.files.handlers.FilesHandler'``

    handler class to use when serving raw file requests.

            Default is a fallback that talks to the ContentsManager API,
            which may be inefficient, especially for large files.

            Local files-based ContentsManagers can use a StaticFileHandler subclass,
            which will be much more efficient.

            Access to these files should be Authenticated.


ContentsManager.files_handler_params : Dict
    Default: ``{}``

    Extra parameters to pass to files_handler_class.

            For example, StaticFileHandlers generally expect a `path` argument
            specifying the root directory from which to serve files.


ContentsManager.hide_globs : List
    Default: ``['__pycache__', '*.pyc', '*.pyo', '.DS_Store', '*.so', '*.dyl...``


    Glob patterns to hide in file and directory listings.


ContentsManager.post_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            to be called on the path of a file just saved.

            This can be used to process the file on disk,
            such as converting the notebook to a script or HTML via nbconvert.

            It will be called as (all arguments passed by keyword)::

                hook(os_path=os_path, model=model, contents_manager=instance)

            - path: the filesystem path to the file just written
            - model: the model representing the file
            - contents_manager: this ContentsManager instance


ContentsManager.pre_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            To be called on a contents model prior to save.

            This can be used to process the structure,
            such as removing notebook outputs or other side effects that
            should not be saved.

            It will be called as (all arguments passed by keyword)::

                hook(path=path, model=model, contents_manager=self)

            - model: the model to be saved. Includes file contents.
              Modifying this dict will affect the file that is stored.
            - path: the API path of the save destination
            - contents_manager: this ContentsManager instance


ContentsManager.preferred_dir : Unicode
    Default: ``''``

    Preferred starting directory to use for notebooks. This is an API path (`/` separated, relative to root dir)

ContentsManager.root_dir : Unicode
    Default: ``'/'``

    No description

ContentsManager.untitled_directory : Unicode
    Default: ``'Untitled Folder'``

    The base name used when creating untitled directories.

ContentsManager.untitled_file : Unicode
    Default: ``'untitled'``

    The base name used when creating untitled files.

ContentsManager.untitled_notebook : Unicode
    Default: ``'Untitled'``

    The base name used when creating untitled notebooks.

FileManagerMixin.hash_algorithm : any of ``'md5'``|``'sha224'``|``'sha3_512'``|``'sha1'``|``'sha512_224'``|``'sha512'``|``'md5-sha1'``|``'shake_256'``|``'sha3_256'``|``'sha384'``|``'sha3_384'``|``'blake2s'``|``'sm3'``|``'blake2b'``|``'shake_128'``|``'sha256'``|``'ripemd160'``|``'sha512_256'``|``'sha3_224'``
    Default: ``'sha256'``

    Hash algorithm to use for file content, support by hashlib

FileManagerMixin.use_atomic_writing : Bool
    Default: ``True``

    By default notebooks are saved on disk on a temporary file and then if successfully written, it replaces the old ones.
          This procedure, namely 'atomic_writing', causes some bugs on file system without operation order enforcement (like some networked fs).
          If set to False, the new notebook is written directly on the old one which could fail (eg: full filesystem or quota )

FileContentsManager.allow_hidden : Bool
    Default: ``False``

    Allow access to hidden files

FileContentsManager.always_delete_dir : Bool
    Default: ``False``

    If True, deleting a non-empty directory will always be allowed.
            WARNING this may result in files being permanently removed; e.g. on Windows,
            if the data size is too big for the trash/recycle bin the directory will be permanently
            deleted. If False (default), the non-empty directory will be sent to the trash only
            if safe. And if ``delete_to_trash`` is True, the directory won't be deleted.

FileContentsManager.checkpoints : Instance
    Default: ``None``

    No description

FileContentsManager.checkpoints_class : Type
    Default: ``'jupyter_server.services.contents.checkpoints.Checkpoints'``

    No description

FileContentsManager.checkpoints_kwargs : Dict
    Default: ``{}``

    No description

FileContentsManager.delete_to_trash : Bool
    Default: ``True``

    If True (default), deleting files will send them to the
            platform's trash/recycle bin, where they can be recovered. If False,
            deleting files really deletes them.

FileContentsManager.event_logger : Instance
    Default: ``None``

    No description

FileContentsManager.files_handler_class : Type
    Default: ``'jupyter_server.files.handlers.FilesHandler'``

    handler class to use when serving raw file requests.

            Default is a fallback that talks to the ContentsManager API,
            which may be inefficient, especially for large files.

            Local files-based ContentsManagers can use a StaticFileHandler subclass,
            which will be much more efficient.

            Access to these files should be Authenticated.


FileContentsManager.files_handler_params : Dict
    Default: ``{}``

    Extra parameters to pass to files_handler_class.

            For example, StaticFileHandlers generally expect a `path` argument
            specifying the root directory from which to serve files.


FileContentsManager.hash_algorithm : any of ``'md5'``|``'sha224'``|``'sha3_512'``|``'sha1'``|``'sha512_224'``|``'sha512'``|``'md5-sha1'``|``'shake_256'``|``'sha3_256'``|``'sha384'``|``'sha3_384'``|``'blake2s'``|``'sm3'``|``'blake2b'``|``'shake_128'``|``'sha256'``|``'ripemd160'``|``'sha512_256'``|``'sha3_224'``
    Default: ``'sha256'``

    Hash algorithm to use for file content, support by hashlib

FileContentsManager.hide_globs : List
    Default: ``['__pycache__', '*.pyc', '*.pyo', '.DS_Store', '*.so', '*.dyl...``


    Glob patterns to hide in file and directory listings.


FileContentsManager.max_copy_folder_size_mb : Int
    Default: ``500``

    The max folder size that can be copied

FileContentsManager.post_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            to be called on the path of a file just saved.

            This can be used to process the file on disk,
            such as converting the notebook to a script or HTML via nbconvert.

            It will be called as (all arguments passed by keyword)::

                hook(os_path=os_path, model=model, contents_manager=instance)

            - path: the filesystem path to the file just written
            - model: the model representing the file
            - contents_manager: this ContentsManager instance


FileContentsManager.pre_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            To be called on a contents model prior to save.

            This can be used to process the structure,
            such as removing notebook outputs or other side effects that
            should not be saved.

            It will be called as (all arguments passed by keyword)::

                hook(path=path, model=model, contents_manager=self)

            - model: the model to be saved. Includes file contents.
              Modifying this dict will affect the file that is stored.
            - path: the API path of the save destination
            - contents_manager: this ContentsManager instance


FileContentsManager.preferred_dir : Unicode
    Default: ``''``

    Preferred starting directory to use for notebooks. This is an API path (`/` separated, relative to root dir)

FileContentsManager.root_dir : Unicode
    Default: ``''``

    No description

FileContentsManager.untitled_directory : Unicode
    Default: ``'Untitled Folder'``

    The base name used when creating untitled directories.

FileContentsManager.untitled_file : Unicode
    Default: ``'untitled'``

    The base name used when creating untitled files.

FileContentsManager.untitled_notebook : Unicode
    Default: ``'Untitled'``

    The base name used when creating untitled notebooks.

FileContentsManager.use_atomic_writing : Bool
    Default: ``True``

    By default notebooks are saved on disk on a temporary file and then if successfully written, it replaces the old ones.
          This procedure, namely 'atomic_writing', causes some bugs on file system without operation order enforcement (like some networked fs).
          If set to False, the new notebook is written directly on the old one which could fail (eg: full filesystem or quota )

AsyncContentsManager.allow_hidden : Bool
    Default: ``False``

    Allow access to hidden files

AsyncContentsManager.checkpoints : Instance
    Default: ``None``

    No description

AsyncContentsManager.checkpoints_class : Type
    Default: ``'jupyter_server.services.contents.checkpoints.AsyncCheckpoints'``

    No description

AsyncContentsManager.checkpoints_kwargs : Dict
    Default: ``{}``

    No description

AsyncContentsManager.event_logger : Instance
    Default: ``None``

    No description

AsyncContentsManager.files_handler_class : Type
    Default: ``'jupyter_server.files.handlers.FilesHandler'``

    handler class to use when serving raw file requests.

            Default is a fallback that talks to the ContentsManager API,
            which may be inefficient, especially for large files.

            Local files-based ContentsManagers can use a StaticFileHandler subclass,
            which will be much more efficient.

            Access to these files should be Authenticated.


AsyncContentsManager.files_handler_params : Dict
    Default: ``{}``

    Extra parameters to pass to files_handler_class.

            For example, StaticFileHandlers generally expect a `path` argument
            specifying the root directory from which to serve files.


AsyncContentsManager.hide_globs : List
    Default: ``['__pycache__', '*.pyc', '*.pyo', '.DS_Store', '*.so', '*.dyl...``


    Glob patterns to hide in file and directory listings.


AsyncContentsManager.post_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            to be called on the path of a file just saved.

            This can be used to process the file on disk,
            such as converting the notebook to a script or HTML via nbconvert.

            It will be called as (all arguments passed by keyword)::

                hook(os_path=os_path, model=model, contents_manager=instance)

            - path: the filesystem path to the file just written
            - model: the model representing the file
            - contents_manager: this ContentsManager instance


AsyncContentsManager.pre_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            To be called on a contents model prior to save.

            This can be used to process the structure,
            such as removing notebook outputs or other side effects that
            should not be saved.

            It will be called as (all arguments passed by keyword)::

                hook(path=path, model=model, contents_manager=self)

            - model: the model to be saved. Includes file contents.
              Modifying this dict will affect the file that is stored.
            - path: the API path of the save destination
            - contents_manager: this ContentsManager instance


AsyncContentsManager.preferred_dir : Unicode
    Default: ``''``

    Preferred starting directory to use for notebooks. This is an API path (`/` separated, relative to root dir)

AsyncContentsManager.root_dir : Unicode
    Default: ``'/'``

    No description

AsyncContentsManager.untitled_directory : Unicode
    Default: ``'Untitled Folder'``

    The base name used when creating untitled directories.

AsyncContentsManager.untitled_file : Unicode
    Default: ``'untitled'``

    The base name used when creating untitled files.

AsyncContentsManager.untitled_notebook : Unicode
    Default: ``'Untitled'``

    The base name used when creating untitled notebooks.

AsyncFileManagerMixin.hash_algorithm : any of ``'md5'``|``'sha224'``|``'sha3_512'``|``'sha1'``|``'sha512_224'``|``'sha512'``|``'md5-sha1'``|``'shake_256'``|``'sha3_256'``|``'sha384'``|``'sha3_384'``|``'blake2s'``|``'sm3'``|``'blake2b'``|``'shake_128'``|``'sha256'``|``'ripemd160'``|``'sha512_256'``|``'sha3_224'``
    Default: ``'sha256'``

    Hash algorithm to use for file content, support by hashlib

AsyncFileManagerMixin.use_atomic_writing : Bool
    Default: ``True``

    By default notebooks are saved on disk on a temporary file and then if successfully written, it replaces the old ones.
          This procedure, namely 'atomic_writing', causes some bugs on file system without operation order enforcement (like some networked fs).
          If set to False, the new notebook is written directly on the old one which could fail (eg: full filesystem or quota )

AsyncFileContentsManager.allow_hidden : Bool
    Default: ``False``

    Allow access to hidden files

AsyncFileContentsManager.always_delete_dir : Bool
    Default: ``False``

    If True, deleting a non-empty directory will always be allowed.
            WARNING this may result in files being permanently removed; e.g. on Windows,
            if the data size is too big for the trash/recycle bin the directory will be permanently
            deleted. If False (default), the non-empty directory will be sent to the trash only
            if safe. And if ``delete_to_trash`` is True, the directory won't be deleted.

AsyncFileContentsManager.checkpoints : Instance
    Default: ``None``

    No description

AsyncFileContentsManager.checkpoints_class : Type
    Default: ``'jupyter_server.services.contents.checkpoints.AsyncCheckpoints'``

    No description

AsyncFileContentsManager.checkpoints_kwargs : Dict
    Default: ``{}``

    No description

AsyncFileContentsManager.delete_to_trash : Bool
    Default: ``True``

    If True (default), deleting files will send them to the
            platform's trash/recycle bin, where they can be recovered. If False,
            deleting files really deletes them.

AsyncFileContentsManager.event_logger : Instance
    Default: ``None``

    No description

AsyncFileContentsManager.files_handler_class : Type
    Default: ``'jupyter_server.files.handlers.FilesHandler'``

    handler class to use when serving raw file requests.

            Default is a fallback that talks to the ContentsManager API,
            which may be inefficient, especially for large files.

            Local files-based ContentsManagers can use a StaticFileHandler subclass,
            which will be much more efficient.

            Access to these files should be Authenticated.


AsyncFileContentsManager.files_handler_params : Dict
    Default: ``{}``

    Extra parameters to pass to files_handler_class.

            For example, StaticFileHandlers generally expect a `path` argument
            specifying the root directory from which to serve files.


AsyncFileContentsManager.hash_algorithm : any of ``'md5'``|``'sha224'``|``'sha3_512'``|``'sha1'``|``'sha512_224'``|``'sha512'``|``'md5-sha1'``|``'shake_256'``|``'sha3_256'``|``'sha384'``|``'sha3_384'``|``'blake2s'``|``'sm3'``|``'blake2b'``|``'shake_128'``|``'sha256'``|``'ripemd160'``|``'sha512_256'``|``'sha3_224'``
    Default: ``'sha256'``

    Hash algorithm to use for file content, support by hashlib

AsyncFileContentsManager.hide_globs : List
    Default: ``['__pycache__', '*.pyc', '*.pyo', '.DS_Store', '*.so', '*.dyl...``


    Glob patterns to hide in file and directory listings.


AsyncFileContentsManager.max_copy_folder_size_mb : Int
    Default: ``500``

    The max folder size that can be copied

AsyncFileContentsManager.post_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            to be called on the path of a file just saved.

            This can be used to process the file on disk,
            such as converting the notebook to a script or HTML via nbconvert.

            It will be called as (all arguments passed by keyword)::

                hook(os_path=os_path, model=model, contents_manager=instance)

            - path: the filesystem path to the file just written
            - model: the model representing the file
            - contents_manager: this ContentsManager instance


AsyncFileContentsManager.pre_save_hook : Any
    Default: ``None``

    Python callable or importstring thereof

            To be called on a contents model prior to save.

            This can be used to process the structure,
            such as removing notebook outputs or other side effects that
            should not be saved.

            It will be called as (all arguments passed by keyword)::

                hook(path=path, model=model, contents_manager=self)

            - model: the model to be saved. Includes file contents.
              Modifying this dict will affect the file that is stored.
            - path: the API path of the save destination
            - contents_manager: this ContentsManager instance


AsyncFileContentsManager.preferred_dir : Unicode
    Default: ``''``

    Preferred starting directory to use for notebooks. This is an API path (`/` separated, relative to root dir)

AsyncFileContentsManager.root_dir : Unicode
    Default: ``''``

    No description

AsyncFileContentsManager.untitled_directory : Unicode
    Default: ``'Untitled Folder'``

    The base name used when creating untitled directories.

AsyncFileContentsManager.untitled_file : Unicode
    Default: ``'untitled'``

    The base name used when creating untitled files.

AsyncFileContentsManager.untitled_notebook : Unicode
    Default: ``'Untitled'``

    The base name used when creating untitled notebooks.

AsyncFileContentsManager.use_atomic_writing : Bool
    Default: ``True``

    By default notebooks are saved on disk on a temporary file and then if successfully written, it replaces the old ones.
          This procedure, namely 'atomic_writing', causes some bugs on file system without operation order enforcement (like some networked fs).
          If set to False, the new notebook is written directly on the old one which could fail (eg: full filesystem or quota )

NotebookNotary.algorithm : any of ``'md5'``|``'blake2s'``|``'sha3_384'``|``'sha224'``|``'sha3_512'``|``'blake2b'``|``'sha3_224'``|``'sha3_256'``|``'sha1'``|``'sha512'``|``'sha384'``|``'sha256'``
    Default: ``'sha256'``

    The hashing algorithm used to sign notebooks.

NotebookNotary.data_dir : Unicode
    Default: ``''``

    The storage directory for notary secret and database.

NotebookNotary.db_file : Unicode
    Default: ``''``

    The sqlite file in which to store notebook signatures.
            By default, this will be in your Jupyter data directory.
            You can set it to ':memory:' to disable sqlite writing to the filesystem.


NotebookNotary.secret : Bytes
    Default: ``b''``

    The secret key with which notebooks are signed.

NotebookNotary.secret_file : Unicode
    Default: ``''``

    The file where the secret key is stored.

NotebookNotary.store_factory : Callable
    Default: ``traitlets.Undefined``

    A callable returning the storage backend for notebook signatures.
             The default uses an SQLite database.

GatewayMappingKernelManager.allow_tracebacks : Bool
    Default: ``True``

    Whether to send tracebacks to clients on exceptions.

GatewayMappingKernelManager.allowed_message_types : List
    Default: ``[]``

    White list of allowed kernel message types.
            When the list is empty, all message types are allowed.


GatewayMappingKernelManager.buffer_offline_messages : Bool
    Default: ``True``

    Whether messages from kernels whose frontends have disconnected should be buffered in-memory.

            When True (default), messages are buffered and replayed on reconnect,
            avoiding lost messages due to interrupted connectivity.

            Disable if long-running kernels will produce too much output while
            no frontends are connected.


GatewayMappingKernelManager.cull_busy : Bool
    Default: ``False``

    Whether to consider culling kernels which are busy.
            Only effective if cull_idle_timeout > 0.

GatewayMappingKernelManager.cull_connected : Bool
    Default: ``False``

    Whether to consider culling kernels which have one or more connections.
            Only effective if cull_idle_timeout > 0.

GatewayMappingKernelManager.cull_idle_timeout : Int
    Default: ``0``

    Timeout (in seconds) after which a kernel is considered idle and ready to be culled.
            Values of 0 or lower disable culling. Very short timeouts may result in kernels being culled
            for users with poor network connections.

GatewayMappingKernelManager.cull_interval : Int
    Default: ``300``

    The interval (in seconds) on which to check for idle kernels exceeding the cull timeout value.

GatewayMappingKernelManager.default_kernel_name : Unicode
    Default: ``'python3'``

    The name of the default kernel to start

GatewayMappingKernelManager.kernel_info_timeout : Float
    Default: ``60``

    Timeout for giving up on a kernel (in seconds).

            On starting and restarting kernels, we check whether the
            kernel is running and responsive by sending kernel_info_requests.
            This sets the timeout in seconds for how long the kernel can take
            before being presumed dead.
            This affects the MappingKernelManager (which handles kernel restarts)
            and the ZMQChannelsHandler (which handles the startup).


GatewayMappingKernelManager.kernel_manager_class : DottedObjectName
    Default: ``'jupyter_client.ioloop.AsyncIOLoopKernelManager'``

    The kernel manager class.  This is configurable to allow
            subclassing of the AsyncKernelManager for customized behavior.


GatewayMappingKernelManager.root_dir : Unicode
    Default: ``''``

    No description

GatewayMappingKernelManager.shared_context : Bool
    Default: ``True``

    Share a single zmq.Context to talk to all my kernels

GatewayMappingKernelManager.traceback_replacement_message : Unicode
    Default: ``'An exception occurred at runtime, which is not shown due to ...``

    Message to print when allow_tracebacks is False, and an exception occurs

GatewayMappingKernelManager.untracked_message_types : List
    Default: ``['comm_info_request', 'comm_info_reply', 'kernel_info_request...``

    List of kernel message types excluded from user activity tracking.

            This should be a superset of the message types sent on any channel other
            than the shell channel.

GatewayMappingKernelManager.use_pending_kernels : Bool
    Default: ``False``

    Whether to make kernels available before the process has started.  The
            kernel has a `.ready` future which can be awaited before connecting

GatewayKernelSpecManager.allowed_kernelspecs : Set
    Default: ``set()``

    List of allowed kernel names.

            By default, all installed kernels are allowed.


GatewayKernelSpecManager.ensure_native_kernel : Bool
    Default: ``True``

    If there is no Python kernelspec registered and the IPython
            kernel is available, ensure it is added to the spec list.


GatewayKernelSpecManager.kernel_spec_class : Type
    Default: ``'jupyter_client.kernelspec.KernelSpec'``

    The kernel spec class.  This is configurable to allow
            subclassing of the KernelSpecManager for customized behavior.


GatewayKernelSpecManager.whitelist : Set
    Default: ``set()``

    Deprecated, use `KernelSpecManager.allowed_kernelspecs`


SessionManager.database_filepath : Unicode
    Default: ``':memory:'``

    The filesystem path to SQLite Database file (e.g. /path/to/session_database.db). By default, the session database is stored in-memory (i.e. `:memory:` setting from sqlite3) and does not persist when the current Jupyter Server shuts down.

GatewaySessionManager.database_filepath : Unicode
    Default: ``':memory:'``

    The filesystem path to SQLite Database file (e.g. /path/to/session_database.db). By default, the session database is stored in-memory (i.e. `:memory:` setting from sqlite3) and does not persist when the current Jupyter Server shuts down.

BaseKernelWebsocketConnection.kernel_ws_protocol : Unicode
    Default: ``None``

    Preferred kernel message protocol over websocket to use (default: None). If an empty string is passed, select the legacy protocol. If None, the selected protocol will depend on what the front-end supports (usually the most recent protocol supported by the back-end and the front-end).

BaseKernelWebsocketConnection.session : Instance
    Default: ``None``

    No description

GatewayWebSocketConnection.kernel_ws_protocol : Unicode
    Default: ``''``

    No description

GatewayWebSocketConnection.session : Instance
    Default: ``None``

    No description

GatewayClient.accept_cookies : Bool
    Default: ``False``

    Accept and manage cookies sent by the service side. This is often useful
            for load balancers to decide which backend node to use.
            (JUPYTER_GATEWAY_ACCEPT_COOKIES env var)

GatewayClient.allowed_envs : Unicode
    Default: ``''``

    A comma-separated list of environment variable names that will be included, along with
    their values, in the kernel startup request.  The corresponding `client_envs` configuration
    value must also be set on the Gateway server - since that configuration value indicates which
    environmental values to make available to the kernel. (JUPYTER_GATEWAY_ALLOWED_ENVS env var)

GatewayClient.auth_header_key : Unicode
    Default: ``''``

    The authorization header's key name (typically 'Authorization') used in the HTTP headers. The
    header will be formatted as::

    {'{auth_header_key}': '{auth_scheme} {auth_token}'}

    If the authorization header key takes a single value, `auth_scheme` should be set to None and
    'auth_token' should be configured to use the appropriate value.

    (JUPYTER_GATEWAY_AUTH_HEADER_KEY env var)

GatewayClient.auth_scheme : Unicode
    Default: ``''``

    The auth scheme, added as a prefix to the authorization token used in the HTTP headers.
    (JUPYTER_GATEWAY_AUTH_SCHEME env var)

GatewayClient.auth_token : Unicode
    Default: ``None``

    The authorization token used in the HTTP headers. The header will be formatted as::

    {'{auth_header_key}': '{auth_scheme} {auth_token}'}

    (JUPYTER_GATEWAY_AUTH_TOKEN env var)

GatewayClient.ca_certs : Unicode
    Default: ``None``

    The filename of CA certificates or None to use defaults.  (JUPYTER_GATEWAY_CA_CERTS env var)


GatewayClient.client_cert : Unicode
    Default: ``None``

    The filename for client SSL certificate, if any.  (JUPYTER_GATEWAY_CLIENT_CERT env var)


GatewayClient.client_key : Unicode
    Default: ``None``

    The filename for client SSL key, if any.  (JUPYTER_GATEWAY_CLIENT_KEY env var)


GatewayClient.connect_timeout : Float
    Default: ``40.0``

    The time allowed for HTTP connection establishment with the Gateway server.
    (JUPYTER_GATEWAY_CONNECT_TIMEOUT env var)

GatewayClient.env_whitelist : Unicode
    Default: ``''``

    Deprecated, use `GatewayClient.allowed_envs`

GatewayClient.event_logger : Instance
    Default: ``None``

    No description

GatewayClient.gateway_retry_interval : Float
    Default: ``1.0``

    The time allowed for HTTP reconnection with the Gateway server for the first time.
    Next will be JUPYTER_GATEWAY_RETRY_INTERVAL multiplied by two in factor of numbers of retries
    but less than JUPYTER_GATEWAY_RETRY_INTERVAL_MAX.
    (JUPYTER_GATEWAY_RETRY_INTERVAL env var)

GatewayClient.gateway_retry_interval_max : Float
    Default: ``30.0``

    The maximum time allowed for HTTP reconnection retry with the Gateway server.
    (JUPYTER_GATEWAY_RETRY_INTERVAL_MAX env var)

GatewayClient.gateway_retry_max : Int
    Default: ``5``

    The maximum retries allowed for HTTP reconnection with the Gateway server.
    (JUPYTER_GATEWAY_RETRY_MAX env var)

GatewayClient.gateway_token_renewer_class : Type
    Default: ``'jupyter_server.gateway.gateway_client.GatewayTokenRenewerBase'``

    The class to use for Gateway token renewal. (JUPYTER_GATEWAY_TOKEN_RENEWER_CLASS env var)

GatewayClient.headers : Unicode
    Default: ``'{}'``

    Additional HTTP headers to pass on the request.  This value will be converted to a dict.
              (JUPYTER_GATEWAY_HEADERS env var)


GatewayClient.http_pwd : Unicode
    Default: ``None``

    The password for HTTP authentication.  (JUPYTER_GATEWAY_HTTP_PWD env var)


GatewayClient.http_user : Unicode
    Default: ``None``

    The username for HTTP authentication. (JUPYTER_GATEWAY_HTTP_USER env var)


GatewayClient.kernels_endpoint : Unicode
    Default: ``'/api/kernels'``

    The gateway API endpoint for accessing kernel resources (JUPYTER_GATEWAY_KERNELS_ENDPOINT env var)

GatewayClient.kernelspecs_endpoint : Unicode
    Default: ``'/api/kernelspecs'``

    The gateway API endpoint for accessing kernelspecs (JUPYTER_GATEWAY_KERNELSPECS_ENDPOINT env var)

GatewayClient.kernelspecs_resource_endpoint : Unicode
    Default: ``'/kernelspecs'``

    The gateway endpoint for accessing kernelspecs resources
    (JUPYTER_GATEWAY_KERNELSPECS_RESOURCE_ENDPOINT env var)

GatewayClient.launch_timeout_pad : Float
    Default: ``2.0``

    Timeout pad to be ensured between KERNEL_LAUNCH_TIMEOUT and request_timeout
    such that request_timeout >= KERNEL_LAUNCH_TIMEOUT + launch_timeout_pad.
    (JUPYTER_GATEWAY_LAUNCH_TIMEOUT_PAD env var)

GatewayClient.request_timeout : Float
    Default: ``42.0``

    The time allowed for HTTP request completion. (JUPYTER_GATEWAY_REQUEST_TIMEOUT env var)

GatewayClient.url : Unicode
    Default: ``None``

    The url of the Kernel or Enterprise Gateway server where
    kernel specifications are defined and kernel management takes place.
    If defined, this Notebook server acts as a proxy for all kernel
    management and kernel specification retrieval.  (JUPYTER_GATEWAY_URL env var)


GatewayClient.validate_cert : Bool
    Default: ``True``

    For HTTPS requests, determines if server's certificate should be validated or not.
    (JUPYTER_GATEWAY_VALIDATE_CERT env var)

GatewayClient.ws_url : Unicode
    Default: ``None``

    The websocket url of the Kernel or Enterprise Gateway server.  If not provided, this value
    will correspond to the value of the Gateway url with 'ws' in place of 'http'.  (JUPYTER_GATEWAY_WS_URL env var)



EventLogger.handlers : Handlers
    Default: ``None``

    A list of logging.Handler instances to send events to.

            When set to None (the default), all events are discarded.


ZMQChannelsWebsocketConnection.iopub_data_rate_limit : Float
    Default: ``1000000``

    (bytes/sec)
            Maximum rate at which stream output can be sent on iopub before they are
            limited.

ZMQChannelsWebsocketConnection.iopub_msg_rate_limit : Float
    Default: ``1000``

    (msgs/sec)
            Maximum rate at which messages can be sent on iopub before they are
            limited.

ZMQChannelsWebsocketConnection.kernel_ws_protocol : Unicode
    Default: ``None``

    Preferred kernel message protocol over websocket to use (default: None). If an empty string is passed, select the legacy protocol. If None, the selected protocol will depend on what the front-end supports (usually the most recent protocol supported by the back-end and the front-end).

ZMQChannelsWebsocketConnection.limit_rate : Bool
    Default: ``True``

    Whether to limit the rate of IOPub messages (default: True). If True, use iopub_msg_rate_limit, iopub_data_rate_limit and/or rate_limit_window to tune the rate.

ZMQChannelsWebsocketConnection.rate_limit_window : Float
    Default: ``3``

    (sec) Time window used to
            check the message and data rate limits.

ZMQChannelsWebsocketConnection.session : Instance
    Default: ``None``

    No description
