Atlas

Build

Forced updates

Block versions below a minimum and tell customers when a newer release is available.

Set your versions#

Open your product and select Updates & resets. Set any of these:

FieldWhat it does
min_app_versionOlder versions fail with update_required (HTTP 426) and can't validate or activate.
latest_app_versionOlder versions still work, and results include update.available = true.
update_urlWhere customers download the new version. Returned in update.url.

Versions compare like semantic versions (1.10.0 is newer than 1.9.2, and pre-releases sort before their release).

In your app#

Send your version with every call (the SDKs take appVersion / app_version once, when you create the client):

ts
const result = await atlas.license(userKey);

if (result.code === "update_required") {
  return showBlockingUpdate(result.message, result.update?.url);
}
if (result.update?.available) {
  showUpdateBanner(result.update.latest_version, result.update.url);
}

With a minimum set, apps that don't send a version are blocked too, so update every build to send one first. The update fields are part of the signed response, so they can't be stripped by a proxy.