Skip to content

Re-deploy a deployment group with a new version and parameters

POST
/api/v1/deployment-groups/{groupId}/redeploy
curl --request POST \
--url http://localhost:3000/api/v1/deployment-groups/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/redeploy \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "applicationDescriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "parameterOverrides": {} }'

Moves every live member of a deployment group (the deployments of one multi-profile create) to a new revision in one transaction: all members or none. The body is the same as for POST /deployments/{id}/redeploy: the target application version and ONE complete set of parameter overrides for the whole group (per-profile overrides are not supported). Every member must allow a re-deploy and the target version must declare every deployment profile in use; a refusal names the offending member ids (deploymentIds). A member that already runs the requested content is left as it is; the request is refused (409) only when every member already runs it. An unknown, foreign or empty group answers 404 REDEPLOY_GROUP_NOT_FOUND.

groupId
required
string format: uuid

Deployment group UUID (deploymentGroupId)

x-organization-id
string format: uuid

UUID of the organization (tenant) the request acts in. It selects the tenant and grants nothing: the server checks membership or an open tenant switch. Not needed for global operations. A malformed value returns 400. API keys are fixed to their own organization; another organization returns 403. The x-organization-source header grants nothing.

Media typeapplication/json
object
applicationDescriptionId
required

Target application version (ApplicationDescription id) of the same application

string format: uuid
parameterOverrides
required

The complete set of parameter overrides of the new revision (full replacement)

object
key
additional properties
any
Examplegenerated
{
"applicationDescriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"parameterOverrides": {}
}

The group moved to a new revision

Media typeapplication/json
object
id
required

The deployment that was re-deployed (unchanged)

string format: uuid
name
required
string
fromRevision
required
object
id
required
object
revision
required

Monotonic revision number of the deployment

object
applicationDescriptionId
required
string format: uuid
version
required

Application version string

string
parameterDigest
required

Sha256 of the canonical JSON of the parameter overrides

string
toRevision
required
object
id
required
object
revision
required

Monotonic revision number of the deployment

object
applicationDescriptionId
required
string format: uuid
version
required

Application version string

string
parameterDigest
required

Sha256 of the canonical JSON of the parameter overrides

string
deploymentIds
required

Every deployment that moved in the same transaction (the deployment group)

Array<string>
resetInstances
required

Number of device instances reset to PENDING

number
released
required

True when the new revision was released to the devices at once (IMMEDIATE strategy). A staged strategy releases it batch by batch.

boolean
deploymentGroupId

FM-1514: the deployment group, when the re-deploy addressed the group

string format: uuid
Examplegenerated
{
"id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"name": "example",
"fromRevision": {
"id": {},
"revision": {},
"applicationDescriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"version": "example",
"parameterDigest": "example"
},
"toRevision": {
"id": {},
"revision": {},
"applicationDescriptionId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"version": "example",
"parameterDigest": "example"
},
"deploymentIds": [
"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
],
"resetInstances": 1,
"released": true,
"deploymentGroupId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
}

Unknown or missing body field, a group id that is not a UUID, or parameter overrides that violate the application

Forbidden — caller lacks required permission

Group (REDEPLOY_GROUP_NOT_FOUND) or target version not found in the caller organization

A member state does not allow a re-deploy, version retired or without source, every member identical, or a concurrent change (code, deploymentIds)

Target version of another application, a profile in use is missing, or rc2 admission would drop the revision (code, deploymentIds)