An instance is one installation of the served product — for example "Production", "Test", or a specific customer's installation. Every instance has an id and a secret token.
Everything related lives under Instances in the UI.
manage-client/config.php.Ids may contain letters, digits, dot, underscore and hyphen, must start with
a letter or a digit, and can be at most 120 characters long. They appear in
the backup file path; descriptive names such as example-prod and
example-test pay off.
The token lets an instance download releases and upload backups. It cannot download backups or change releases; both require logging into the UI.
Instances → Rotate token. The old token loses its validity immediately;
the instance then reports Authentifizierung fehlgeschlagen ("authentication
failed" — the literal, still German, text the API returns) until the new
token is entered. Plan for short outages of cron jobs accordingly.
Reasons to rotate: suspected compromise, staff changes, handing over a project.
Deactivate leaves the instance in place but rejects every API request
with 403. The right move when an installation is temporarily shut down or
something is unclear — the token stays valid and the instance is back in
service with one click.
Remove deletes the registry entry. The stored backups remain and stay visible and downloadable under Backups; there they are marked as "no longer registered". New uploads are no longer possible.
The overview shows, for each instance:
| Field | Source |
|---|---|
| Status | active, inactive (not seen for more than 7 days) or deactivated |
| Version | the instance's latest report |
| Update | comparison of this version against the current release |
| Last seen | every authenticated request updates this value |
| Last backup | timestamp of the last received backup |
| Pending migrations | from the instance's heartbeat |
inactive on a running installation usually means the heartbeat cron job
isn't running. Without cron, an instance only checks in when someone uses
the UI in the project.
Pending migrations are the most important warning sign: they mean an update was rolled out, but part of the post-update step failed.
The client-package/ folder contains the client and its complete
documentation. To hand it over:
./scripts/build-client-package.sh --server-url https://manage.example.org
The result lands under build/manage-client-<date>.zip. With
--server-url, the server address is already filled into the bundled
config.sample.php; the receiving side only has to add the id and token.
The script removes every config.php and all log files before packing, so
no token from a test installation is shipped along.
Common setup for a product with a test and a production system:
| Instance | Purpose |
|---|---|
product-test |
gets new releases first |
product-prod |
follows after a successful test |
Both fetch the same latest. To keep a release on the test system only,
publish it and temporarily set the older one back as current — or roll it
out on the test system deliberately with update --force. Separate
channels per instance are deliberately absent; a second Manage server is
deployed for that.