Skip to content
GitHub

Update an app (image changes require `app-deploy`). Every change is a new release revision.

PATCH
/api/v1/projects/{project}/environments/{environment}/apps/{app}
curl --request PATCH \
--url https://example.com/api/v1/projects/example/environments/example/apps/example \
--header 'Content-Type: application/json' \
--data '{ "image": "example", "port": 1, "command": [ "example" ], "replicas": 1, "max_replicas": 1, "size": "example", "env": [ { "name": "LOG_LEVEL", "value": "example", "secret": { "name": "example", "key": "example" } } ], "domains": [ "example" ], "health_check_path": "example", "schedule": "example", "time_zone": "example", "protocol": "http", "volumes": [ { "name": "data", "mount_path": "/data", "size": "5Gi" } ], "fs_group": 1 }'
project
required
string

Project name

environment
required
string

Environment short name

app
required
string

App name

Media typeapplication/json

Partial update; omitted fields are left unchanged, lists are replaced.

object
image
string | null
port
integer | null format: int32
command
Array<string> | null
replicas
integer | null format: int32
max_replicas
integer | null format: int32
size
string | null
env
Array<object> | null

Environment variable: a plain value or a secret reference.

object
name
required
string
Example
LOG_LEVEL
value
string | null
secret
One of:
null
domains
Array<string> | null
health_check_path

Empty string removes the health check.

string | null
schedule

Empty string removes the schedule.

string | null
time_zone
string | null
protocol
One of:
null
volumes

Replaces the list. Removed volumes are unmounted, never deleted.

Array<object> | null

Persistent volume (kept when the app is deleted, unless requested).

object
name
required
string
Example
data
mount_path
required
string
Example
/data
size

Capacity such as 5Gi. Can grow, never shrink.

string
Example
5Gi
fs_group

0 removes the fsGroup.

integer | null format: int64
Media typeapplication/json
object
name
required
string
project
required
string
environment
required

Environment short name.

string
namespace
required
string
image
string | null
git_repo
string | null
url
string | null
ready
required
boolean
reason

Available, Progressing, RolloutFailed, Scheduled, AwaitingBuild, …

string | null
message
string | null
processes
required
Array<object>
object
name
required
string
command
required
Array<string>
port
integer | null format: int32
size
required
string
min_replicas
required
integer format: int32
max_replicas
required
integer format: int32
schedule

Cron expression of scheduled processes.

string | null
protocol
required

http or tcp.

string
env
required

Values are only included in the app detail, for callers allowed to read secrets.

Array<object>

Environment variable: a plain value or a secret reference.

object
name
required
string
value
string | null
secret
One of:
null
domains
required
Array<string>
volumes
required
Array<object>

Persistent volume (kept when the app is deleted, unless requested).

object
name
required
string
mount_path
required
string
size

Capacity such as 5Gi. Can grow, never shrink.

string
created_at
string | null
Example
{
"env": [
{
"name": "LOG_LEVEL"
}
],
"volumes": [
{
"name": "data",
"mount_path": "/data",
"size": "5Gi"
}
]
}
Media typeapplication/json

Problem Details body.

object
code
required

Stable machine-readable code, e.g. forbidden.

string
title
required

Short human readable title.

string
status
required

HTTP status.

integer format: int32
detail

Details, if safe to expose.

string | null
Example
{
"code": "forbidden"
}
Media typeapplication/json

Problem Details body.

object
code
required

Stable machine-readable code, e.g. forbidden.

string
title
required

Short human readable title.

string
status
required

HTTP status.

integer format: int32
detail

Details, if safe to expose.

string | null
Example
{
"code": "forbidden"
}
Media typeapplication/json

Problem Details body.

object
code
required

Stable machine-readable code, e.g. forbidden.

string
title
required

Short human readable title.

string
status
required

HTTP status.

integer format: int32
detail

Details, if safe to expose.

string | null
Example
{
"code": "forbidden"
}