SK Update Manager

Update API reference

Your client application asks the server one question — "is there a newer version of me?" — and gets back whether to update and where to download the new build. Two read-only endpoints, no authentication required.

Base URL https://your-server — replace with the address where this server runs.

Endpoint

Check for an update

GET https://your-server/v1/check

Call this with your App ID and the version the client is currently running. The server compares it against the latest published release and tells you whether an update exists.

Parameter Description
appIdrequiredYour application's App ID, exactly as registered in the dashboard (e.g. com.example.myapp).
versionrequiredThe version string the client is running, e.g. 1.0.0. Compared numerically segment by segment.
channeloptionalWhich release channel to check. Defaults to stable. Pass beta to receive pre-release builds.

Response — an update is available

// HTTP 200
{
  "appId": "com.example.myapp",
  "currentVersion": "1.0.0",
  "updateAvailable": true,
  "mandatory": false,
  "latestVersion": "1.2.0",
  "versionCode": 12,
  "releaseNotes": "Bug fixes and a faster sync engine.",
  "downloadUrl": "https://your-server/v1/download/ab12cd34",
  "fileName": "myapp-1.2.0.apk",
  "fileSize": 5242880,
  "contentType": "application/vnd.android.package-archive",
  "channel": "stable",
  "publishedAt": "2026-02-14T09:30:00.000Z"
}

Response — already up to date

// HTTP 200
{
  "appId": "com.example.myapp",
  "currentVersion": "1.2.0",
  "latestVersion": "1.2.0",
  "updateAvailable": false
}
When mandatory is true, at least one release newer than the client is flagged as required — block the user from continuing until they update. An unknown appId returns 404; a missing parameter returns 400.

Endpoint

Download a build

GET https://your-server/v1/download/:fileId

You normally don't construct this yourself — use the downloadUrl returned by the check call. It streams the uploaded file with the original filename, or redirects to the external URL if the release was published as a link.

Integration

Recommended client flow

  1. On launch (and optionally on a timer), call GET /v1/check with your App ID and current version.
  2. If updateAvailable is false, carry on — the client is current.
  3. If true, show an update prompt using latestVersion and releaseNotes. If mandatory is true, make it non-dismissible.
  4. Send the user to downloadUrl to fetch the new build.

Examples

Call it from your app


        
SK Update Manager · self-hosted update service