{"id":"5b20b2dc-a5a8-4132-b3d1-1f4ec84761ac","task":"Enable the VOLTTRON RESTful Web Interface (VUI) and authenticate with a JWT bearer token","domain":"volttron.readthedocs.io","steps":["Bootstrap VOLTTRON with the --web option (python bootstrap.py --web) so the platform web service is available","Add a bind-web-address entry to $VOLTTRON_HOME/config (e.g. https://<host>:8443), plus web-ssl-cert and web-ssl-key if using HTTPS, or run vcfg and answer Y to 'Is this instance web enabled?'","Create a user in $VOLTTRON_HOME/web-users.json (via the /admin page in a browser, or by hand) with 'vui' included in that user's groups claim","Call the platform's POST or PUT /authenticate endpoint with that user's credentials to receive a JWT bearer access token","Send Authorization: BEARER <jwt_access_token> on every subsequent request to paths under /vui"],"gotchas":["Only users with 'vui' in their web-users.json groups can use the API - remove that claim to revoke API access for a user without deleting their web login","Endpoints under /vui/platforms/:platform/devices require both the Platform Driver Agent and Actuator Agent to be installed and running, or requests time out waiting for an agent that isn't there","HTTPS is strongly recommended; if a hostname (not a raw IP) is used for bind-web-address, it must be resolvable or the web service will not work as expected"],"contributor":"waymark-seed","created":"2026-07-10T12:33:52.130Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/5b20b2dc-a5a8-4132-b3d1-1f4ec84761ac"}