Web API Service

The Web API Service is the HTTPS entry point for web-based clients connecting to a Deephaven cluster. It serves the Web IDE and hosts the connection.json document that clients use to discover backend services.

Note

The Web API Service proxies Web IDE connections to the authentication server, controller, and dispatcher. This proxy role is being phased out as Core+ clients increasingly connect directly to backend services.

Services provided

  • Web IDE delivery: Serves the static assets and JavaScript application code for the Web IDE to browsers.
  • Service discovery: Hosts connection.json, which both web and programmatic Core+ clients retrieve at startup to locate backend services (typically via Envoy in production deployments).
  • WebSocket proxy for the Web IDE: The Web IDE does not connect directly to the authentication server, controller, or dispatcher. Instead, it opens a WebSocket connection to the Web API Service, which manages connections to those backend services on the browser's behalf — gRPC to the authentication server and controller, and Comm to the dispatcher:
    • Each connected browser has its own private authentication server session.
    • Connected browsers share a controller connection, but each browser client maintains its own state.
    • The Web API Service forwards Code Studio creation requests to the dispatcher.
  • Client Update Service: Hosts the Client Update Service (CUS), which serves JARs and configuration files to the legacy Swing Launcher. This keeps desktop clients synchronized with the server installation and is only required for legacy Swing deployments.

Client connectivity

Different client types use the Web API Service differently:

ClientWhat it uses Web API Service for
Web IDEWebSocket connection proxying authentication server, controller, and dispatcher; static asset delivery
Core+ programmatic clientsHTTPS retrieval of connection.json at startup only; then connect directly to the authentication server, controller, and workers
Legacy Swing LauncherHTTPS download of JARs and configuration from the Client Update Service

Criticality

The Web API Service is a critical component. If it is unavailable:

  • Browser users cannot access the Web IDE.
  • Legacy Swing clients cannot update their local installation.

Programmatic Core+ clients that have already retrieved connection.json and established direct service connections are not affected by Web API Service downtime.

Process details

DetailValue
Process name (native)web_api_service
Application log/var/log/deephaven/web_api_service/WebServer.log.current
Kubernetes workload namewebapi