Check whether an update is available for the client
const url = 'https://api.aetherpush.com/v0.1/public/codepush/update_check?deployment_key=example&app_version=example&is_companion=true';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.aetherpush.com/v0.1/public/codepush/update_check?deployment_key=example&app_version=example&is_companion=true'Called by the React Native SDK at app launch (and periodically thereafter) to determine if a newer JS bundle is available.
Field names in the response use snake_case for backward
compatibility with the react-native-code-push SDK.
Caches responses for short windows in Redis to amortize per-deployment fanout.
Parameters
Section titled “Parameters”Query Parameters
Section titled “Query Parameters”Deployment key (provided in app bundle config).
Binary version of the installed app (semver). The server
tolerates plain integer versions (1) and missing-patch
versions (1.0) by normalizing internally.
SHA-256 hash of the currently installed JS bundle.
Stable per-install identifier for rollout selection.
Responses
Section titled “Responses”Update info (may indicate no update available).
Wrapper response for update_check. The actual update info lives
under update_info.
object
Response shape consumed by the React Native SDK acquisition endpoint.
Field names use snake_case for backward compatibility with
react-native-code-push. Returned wrapped in { "update_info": ... }.
object
Semver range of binary versions this update targets.
Example
{ "update_info": { "is_available": true, "is_mandatory": false, "app_version": "1.0.0", "target_binary_range": "1.0.0", "package_hash": "9b8c7d6e5f4a3b2c1d0e9f8a7b6c5d4e3f2a1b0c9d8e7f6a5b4c3d2e1f0a9b8c", "download_url": "https://example-cdn.com/bundles/abc123", "package_size": 1234567, "description": "Bug fixes", "label": "v3", "should_run_binary_version": false, "update_app_version": false }}Headers
Section titled “Headers”Present on legacy acquisition endpoints. Signals the endpoint is
deprecated in favor of its canonical /v1/public/aether/* successor.
The value is the string true.
Example
trueRFC 8288 link header with two link values: the canonical successor endpoint via rel=“successor-version”, and the CodePush migration guide via rel=“deprecation”.
Example
</v1/public/aether/update_check>; rel="successor-version", <https://docs.aetherpush.com/migration/codepush/>; rel="deprecation"Invalid deployment_key or app_version.
object
Human-readable error message.
Unique identifier for the request, also exposed as the X-Request-Id response header.
Example
{ "error": "The requested resource was not found.", "requestId": "req_abc123"}