Update metadata of an existing release
const url = 'https://api.aetherpush.com/v1/apps/example/deployments/example/release';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"packageInfo":{"rollout":50,"description":"Bumped rollout to 50%"}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.aetherpush.com/v1/apps/example/deployments/example/release \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "packageInfo": { "rollout": 50, "description": "Bumped rollout to 50%" } }'Patches mutable metadata of the latest release (or a specific
release identified by label in the body). Useful for changing
description, increasing rollout percentage, toggling
isDisabled, or correcting appVersion.
Returns 204 if no fields actually changed.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
Mutable package metadata. Used as the body shape for release patches and as a sub-object on promote/rollback bodies.
object
Semver version or range that this release targets.
Release notes shown to the client. The limit is counted in UTF-16 code units, so characters outside the Basic Multilingual Plane consume two units each. JSON request bodies are additionally capped at 10 KB in total and refused with 413, so a description whose UTF-8 size approaches that can only be set on the multipart release upload. Promoting carries the source release’s description over without resending it; changing one afterwards means releasing again.
SHA-256 hash of the package contents.
Percentage of clients eligible for this release.
Example
{ "packageInfo": { "rollout": 50, "description": "Bumped rollout to 50%" }}Responses
Section titled “Responses”Release updated.
object
object
Signed URL to download the package bundle.
Map of source package hash to diff blob info.
object
object
Signed URL to the package manifest (file hash map).
Set when releaseMethod is Promote.
Set when releaseMethod is Promote or Rollback.
Account email of the releaser.
Package size in bytes.
Unix timestamp in milliseconds.
Example
{ "package": { "appVersion": "1.0.0", "label": "v3", "releaseMethod": "Upload" }}No changes detected; release left untouched.
Validation error.
object
Human-readable error message.
Unique identifier for the request, also exposed as the X-Request-Id response header.
object
object
Example
{ "error": "The requested resource was not found.", "requestId": "req_abc123"}Unauthenticated, or not a collaborator.
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"}App, deployment, or labeled release not found.
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"}Rollout cannot be decreased, or rollout cannot be modified on a completed release.
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"}