Get started with Volteec

Volteec is a read-only UPS status viewer. It connects to your self-hosted Volteec Backend. No accounts by default. No cloud by default.

If you get stuck, email [email protected].

What you need

  • A UPS connected to a machine on your network.
  • A running Volteec Backend instance reachable from your iPhone/iPad.
  • A backend server URL and an API token (Authorization: Bearer token).
  • (Optional) Relay credentials if you want push notifications.

Setup steps

1) Prepare a UPS data source (NUT)

Connect your UPS to a machine on your network and configure NUT (Network UPS Tools). Make sure you can list UPS names (for example with upsc -l <NUT_HOST>). You will use those names in NUT_UPS.

2) Run the Volteec Backend

Run the backend in Docker with Postgres. Copy .env.example to .env and set at least: API_TOKEN, DEVICE_TOKEN_KEY, and your NUT settings (NUT_HOST, NUT_UPS). Then run migrations and start the app.

Verify the backend:

  • GET /health returns ok
  • GET /ready returns ready
  • GET /v1/status works with Authorization: Bearer <API_TOKEN>

3) Ensure client reachability

Your iPhone/iPad must be able to reach the backend URL. If you access it remotely, use secure remote access (for example a VPN or a secure reverse proxy) and HTTPS.

4) Add the server in the app

In Volteec, add a server and enter the backend server URL and API token exactly as configured in the backend .env.

5) Test and verify

Use “Test Connection” in the app. If the backend is configured correctly, you should see your UPS list and status updating. You can also verify directly with the backend API (GET /v1/ups with Bearer auth).

Push notifications (optional)

Volteec works without push. If you want push alerts, you must configure Relay credentials in the backend (RELAY_TENANT_ID, RELAY_TENANT_SECRET, RELAY_SERVER_ID) using the values provided by the app. Without Relay, Volteec remains a read-only status viewer.

Troubleshooting quick checks

If “Test Connection” fails

  • Confirm the backend URL is correct and reachable from the same network (or via your secure remote access).
  • Confirm the token matches API_TOKEN and you are sending Authorization: Bearer <token>.
  • Confirm backend readiness: GET /ready returns ready.

If /ready is not ready

  • Confirm Postgres is running and migrations were executed.
  • Confirm API_TOKEN is set. If it is missing, the backend runs in degraded mode and /v1/* routes are disabled.

If the UPS is missing

  • Confirm NUT_HOST and NUT_UPS are correct (UPS names must match your NUT server).
  • Confirm the backend can reach NUT on port 3493 (or your configured NUT_PORT).
  • Check backend logs for NUT connection errors/timeouts.

Need help?

Email us and include your iOS version, backend version, how you run it (Docker/other), and the exact error message.


Home · Get started · App · About · FAQ · Contact

Privacy · Terms · GitHub · Reddit · YouTube · [email protected]

© 2026 Volteec. A DIOND Software product.