Upgrading Hyperspeed is an operator-driven process. Database schema updates run automatically when the API starts, so there is no separate migration step.Documentation Index
Fetch the complete documentation index at: https://hyperspeed.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Recommended upgrade flow
Back up first
Take a Postgres dump and a MinIO snapshot or mirror before touching the running stack. If something goes wrong, this is your recovery path.See Backups for the exact commands.
Pull the new images and rebuild
From the directory that contains your The API container applies any pending database updates on startup before accepting traffic.
docker-compose.yml:Check the logs
Confirm the API started cleanly and database updates completed:Look for database update completion messages and the usual “server listening” line. Check container health:
Rollback
If the new version has a critical problem, restore from the backup you took before upgrading.Breaking changes
DEPLOYMENT_MODE removed
The DEPLOYMENT_MODE environment variable no longer exists. The API always behaves as a single-organization self-hosted installation. Remove DEPLOYMENT_MODE from your .env file and any Compose overrides.
Multiple organizations no longer supported
Support for multiple organizations in one instance was tied to the removedsaas deployment mode. If your instance contains more than one organization (for example, after a legacy migration), the API will log a warning at startup and refuse to create additional organizations. Before upgrading, consolidate to a single organization per instance — export or archive extra organizations, or split them into separate deployments.
Version metadata
PassVERSION and GIT_SHA as Docker build arguments when building the API image so GET /health reports real values:
HYPERSPEED_VERSION and HYPERSPEED_GIT_SHA in .env and the build args will be forwarded automatically.
Optional update notices
The dashboard can display a non-intrusive banner when a newer version is available. This feature is opt-in: no network requests to GitHub or your manifest host are made until a user enables it in their dashboard settings. To enable the feature, set one of the following environment variables on the API:| Variable | Behavior |
|---|---|
UPSTREAM_GITHUB_REPO | Set to owner/name. Opted-in browsers will call the GitHub releases API to check for a newer tag. |
UPDATE_MANIFEST_URL | Set to an HTTPS URL returning a JSON manifest. Takes precedence over UPSTREAM_GITHUB_REPO if both are set. |
Manifest format
If you useUPDATE_MANIFEST_URL, the endpoint must return JSON in this shape:
version is required and must be a semver-compatible string. release_notes_url and upgrade_guide_url are optional and are shown as links in the banner.
The
dev build string never triggers an “update available” notice, even when a newer version exists in the manifest.