Skip to content

List deployments for an application

GET
/api/v1/applications/{id}/deployments
curl --request GET \
--url 'http://localhost:3000/api/v1/applications/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/deployments?limit=20&offset=0' \
--header 'X-API-Key: <X-API-Key>'

Retrieves all deployments across all versions of an application package.

id
required
string format: uuid

Application package UUID

limit
number
default: 20 >= 1 <= 200

Maximum number of deployments to return

offset
number
0

Number of deployments to skip

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.

Deployments retrieved successfully

Media typeapplication/json
object
data
required
Array<object>
object
id
required
string format: uuid
organizationId
required
string format: uuid
name
required
string
applicationDescriptionId
required
string format: uuid
deviceSelector
required

Label selector for targeting devices

object
key
additional properties
any
parameterOverrides
required
object
key
additional properties
any
deploymentProfileId
required

Selected manifest deployment profile id

string
nullable
deploymentGroupId
required
string format: uuid
nullable
targetNamespace
required

Margo metadata.namespace override

string
nullable
desiredState
required
string
Allowed values: PENDING INSTALLING INSTALLED FAILED REMOVING REMOVED
status
required
string
Allowed values: PENDING INSTALLING INSTALLED FAILED REMOVING REMOVED
statusMessage
required
string
nullable
priority
required
number
scheduledAt
required
string format: date-time
nullable
startedAt
required
string format: date-time
nullable
completedAt
required
string format: date-time
nullable
metadata
required
object
key
additional properties
any
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
deletedAt
required
string format: date-time
nullable
rolloutStrategy
required
string
Allowed values: IMMEDIATE CANARY ROLLING
rolloutPhase
required
string
Allowed values: PENDING CANARY_DEPLOYING CANARY_VALIDATING CANARY_PROMOTED ROLLING_IN_PROGRESS PAUSED COMPLETED ROLLED_BACK
rolloutConfig
required
object
key
additional properties
any
rollbackConfig
required
object
key
additional properties
any
currentBatch
required
number
totalBatches
required
number
splitFromDeploymentId
required
string format: uuid
nullable
currentRevisionId
required
string format: uuid
nullable
applicationDescription
required
object
id
required
string format: uuid
applicationPackageId
required
string format: uuid
version
required

Application version string

string
deploymentProfile
required

Deployment profile type of the version

string
Allowed values: DOCKER_COMPOSE HELM K8S_MANIFEST PODMAN QUADLET
manifest
required

Full Margo ApplicationDescription as JSON

object
key
additional properties
any
checksumSha256
required
string
nullable
minMargoVersion
required
string
nullable
compatibleDevices
required

Device selector criteria

Array
resourceRequirements
required

CPU, memory and storage requirements

object
key
additional properties
any
licenseFile
required
string
nullable
licenseText
required
string
nullable
releaseNotesFile
required
string
nullable
releaseNotesText
required
string
nullable
tagline
required
string
nullable
site
required
string
nullable
organizationSite
required
string
nullable
validationErrors
required

Reasons the manifest was rejected

Array
availability
required
string
Allowed values: AVAILABLE SOURCE_UNAVAILABLE
lifecycleStatus
required
string
Allowed values: ACTIVE DEPRECATED RETIRED
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
deletedAt
required
string format: date-time
nullable
applicationPackage
required
object
id
required
string format: uuid
name
required
string
instances
required
Array<object>
object
id
required
string format: uuid
status
required
string
Allowed values: PENDING INSTALLING INSTALLED FAILED REMOVING REMOVED
device
required
object
id
required
string format: uuid
name
required

Device display name

string
nullable
clientId
required

Margo clientId the device authenticates with

string
total
required

Total number of deployments

number
hasMore
required

True when more deployments follow this page

boolean
nextCursor

Id of the last deployment of this page, when more follow

string
Example
{
"data": [
{
"desiredState": "PENDING",
"status": "PENDING",
"rolloutStrategy": "IMMEDIATE",
"rolloutPhase": "PENDING",
"applicationDescription": {
"deploymentProfile": "DOCKER_COMPOSE",
"availability": "AVAILABLE",
"lifecycleStatus": "ACTIVE"
},
"instances": [
{
"status": "PENDING"
}
]
}
]
}

Forbidden — caller lacks required permission

Application not found