**Language / Язык:** [English](web-ui.md) | [Русский](ru/web-ui.md) # Web UI Open [https://localhost/](https://localhost/) after `make up` (gateway), or the HTTPS URL printed by `make up-local`. Internal simulator port is `8080`; the lab UI is also on that host. The UI is a laboratory console for the **vSphere** simulator — not a vSphere Client replacement. It supports light and dark themes, catalog majors **6–9** (vSphere 7–8.0U2 floors), request/response editing, history, and runtime contract apply. ## Screenshots ### Main console ![Web UI main console](images/web-ui-main.png) ### API catalog (majors 6–9) ![API catalog with vSphere 8.0 U2 selected](images/web-ui-api-catalog.png) ### Endpoint browser ![Endpoint tree and sample GET response](images/web-ui-endpoints.png) ### Request / response ![GET /api/vcenter/vm with filters and 200 response](images/web-ui-request.png) ![Request parameters editor](images/web-ui-request-params.png) ### History ![Request history panel](images/web-ui-history.png) ### Authentication ![Session sign-in (lab credentials)](images/web-ui-authentication.png) ### Data / seed ![Demo cluster and seed controls](images/web-ui-data.png) ### Environment ![Environment inventory summary](images/web-ui-environment.png) ### Help — compatibility ![Compatibility diagnostics (1092 / 1092)](images/web-ui-help-compatibility.png) ## Features - Endpoint tree and method selector driven by the selected catalog major - Contract-derived parameters and example payloads - Query parameters pane (left column) with live query-string preview for GET filters - Request editor, response viewer, and history - Session login via `POST /api/session` (Basic) → `vmware-api-session-id` header/cookie - Environment summary (runtime version, hosts, VMs, clusters, datastores, networks) - Curl / request previews - Coverage meter for the implemented REST registry - **Apply as runtime** hot-swap for the active major floor - Demo / seed load (`small` / `large` / `big` tiers in DATA) - Compact console at `/console.html` - Link to OpenAPI at `/docs` ## Auth (lab) | User | Password | Role | |---|---|---| | `administrator@vsphere.local` | `VMware1!` | Administrator | | `readonly@vsphere.local` | `VMware1!` | ReadOnly | | `operator@vsphere.local` | `VMware1!` | VirtualMachinePowerUser | | `vmadmin@vsphere.local` | `VMware1!` | VirtualMachineAdministrator | After sign-in, Send attaches `vmware-api-session-id` automatically. ## Backend helpers | Method | Path | Purpose | |---|---|---| | GET | `/ui/api/versions` | Catalog majors vs runtime | | GET | `/ui/api/catalog?major=N` | Catalog for major 6–9 | | GET | `/ui/api/method?...` | Single method metadata | | GET | `/ui/api/compatibility?major=N` | Coverage payload | | POST | `/ui/api/contract/apply?major=N` | Hot-swap runtime contract | | GET | `/ui/api/demo/state` | Demo dataset state | | POST | `/ui/api/demo/load` | Load `big` (20 hosts / 2000 VMs) | | POST | `/ui/api/vsphere/seed?profile=…` | Reseed `small` / `large` / `big` | ## Version workflow 1. Pick major **6 / 7 / 8 / 9** in the catalog. 2. Inspect methods and coverage. 3. **Apply as runtime** when you want live routes gated to that major’s floor. 4. Confirm with `/api/appliance/system/version` and `/ui/api/compatibility`. Hot-swap is memory-only; restart restores the default settings. Details: [API versions](api-versions.md). ## Security note UI and demo endpoints are intended for local development. They are not gated by a separate admin token in the current build. Do not expose the simulator port to untrusted networks.