Skip to content

Latest commit

 

History

History
83 lines (63 loc) · 9.68 KB

File metadata and controls

83 lines (63 loc) · 9.68 KB
description A list of currently useable endpoints to send requests to the backend server.

Express Request Endpoints

Status and Service Lifecycle

Method Endpoint Purpose Input Success Response Notes
GET /status Get full backend runtime status None success, expressPort, serverIdentity, go, mongo, jupyter Probes live status before returning
POST /stop-express Stop Express and best-effort stop child services None success, stopped or message Also attempts to stop Go, Mongo, Jupyter
POST /run-go-server Start or restart Go service None success, running, port Kills existing Go process first
POST /ensure-go Ensure Go is running (idempotent) preferredPort optional success, running, port Preferred modern route
POST /ensure-mongo Ensure Mongo is running (idempotent) workspacePath optional success, running, port Waits for port readiness
POST /ensure-jupyter Ensure Jupyter is running (idempotent) workspacePath optional, preferredPort optional success, running, port Default preferredPort is 8900

Workspace and File Tree

Method Endpoint Purpose Input Success Response Notes
POST /set-working-directory Set active workspace on server workspacePath required success, workspace Marks workspace as remote, reinitializes related state
GET /get-working-dir-tree Get directory tree for a path requestedPath query required success, workingDirectory Uses recursive directory tree output

Mongo Data Import and Export

MethodEndpointPurposeInputSuccess ResponseNotes
POST/insert-object-into-collectionImport file content into Mongo collectionobjectPath required, medDataObject required (id, type)success, insertedCountSupports csv, html, png, jpg, jpeg, pkl
POST/download-collection-to-fileExport collection content to filecollectionId, filePath, type requiredsuccessSupports csv, html, json, images, pkl

Exploratory Services

Method Endpoint Purpose Input Success Response Notes
POST /exploratory/dtale/start Start D-Tale and wait until ready dataset required (id, name), requestId optional, pageId optional success, requestId, remotePort, webServerUrl, name Starts Go automatically if needed
POST /exploratory/dtale/progress Poll D-Tale startup/progress routeId required success, progress Route-level progress
POST /exploratory/dtale/stop Stop D-Tale session requestId optional, remotePort optional success Calls D-Tale shutdown endpoint when possible
POST /exploratory/sweetviz/start Generate SweetViz report mainDataset required (id, name), compDataset optional, target optional, htmlFileID optional, pageId optional success, htmlFileID, reportPath, expressPort Report served by report endpoint
POST /exploratory/ydata/start Generate ydata-profiling report mainDataset required (id, name), compDataset optional, htmlFileID optional, pageId optional success, htmlFileID, reportPath, expressPort Report served by report endpoint
GET /exploratory/report/:reportId Serve generated HTML report reportId path required HTML response body Content-Type text/html

Mongo Runtime and Diagnostics

Method Endpoint Purpose Input Success Response Notes
POST /start-mongo Start Mongo directly workspacePath required success, message Legacy direct route
POST /stop-mongo Stop Mongo directly None success Legacy direct route
GET /get-mongo-path Resolve mongod executable path None success, path 404 if not found
GET /mongo-debug Get Mongo debug info None success, mongoDebug Useful for startup failures

Jupyter Runtime

Method Endpoint Purpose Input Success Response Notes
GET /check-jupyter-status Check if Jupyter is running None running, error Lightweight status route
POST /start-jupyter-server Start Jupyter directly workspacePath required running, error Legacy direct route
POST /stop-jupyter-server Stop Jupyter None stop result object Legacy direct route

Python and Requirements

Method Endpoint Purpose Input Success Response Notes
GET /get-bundled-python-environment Get bundled Python env path/details None success, pythonEnv Used before Go/python workflows
GET /get-installed-python-packages Get installed Python package info None success, packages Current implementation appears to return env-derived data
POST /install-bundled-python Install bundled Python runtime None success Backend installer path
POST /install-required-python-packages Install required Python packages pythonPath optional success Installs required deps for backend workflows
GET /check-python-requirements Validate required Python deps pythonPath query optional success, requirementsMet Boolean result
GET /check-requirements Check global requirements None success, result Includes Mongo/Python checks
POST /install-mongo Install MongoDB None success Error response may include installerExitCode and windowsInstallerError

Error Behavior (Common Pattern)

  • 400 for invalid or missing required inputs
  • 500 for runtime/internal failures
  • Typical error payload: success false, error message
  • Some routes include extra diagnostics (for example mongoDebug, installerExitCode)

Recommended Usage Pattern

  1. Call /status to inspect current state.
  2. Use /ensure-go, /ensure-mongo, /ensure-jupyter instead of legacy start routes.
  3. For exploratory reports, start via exploratory endpoint then read via /exploratory/report/:reportId.
  4. Use /mongo-debug and /check-requirements when setup fails.