Update Deployment
const url = 'https://api.mengi.cloud/deployments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PATCH', headers: {'Content-Type': 'application/json'}, body: '{"name":"example","config":{},"cpu_request":1,"memory_request_mb":1,"replicas":1,"container_port":1,"storage_size_gb":1,"environment_variables":[{"name":"example","value":"example","secret_ref":"example"}],"docker_image":"example","volumes":[{"path":"example","sizeGb":10,"purpose":"example"}],"helm_chart_version":"example","custom_values_yaml":"example","image_update_strategy":"example","image_update_constraint":"example","image_allow_tags":"example","image_ignore_tags":"example","custom_domain":"example","failover_health_route":true,"health_checks":{"liveness":{"enabled":true,"type":"http","path":"example","initial_delay_seconds":1,"period_seconds":1,"timeout_seconds":1,"failure_threshold":1},"readiness":{"enabled":true,"type":"http","path":"example","initial_delay_seconds":1,"period_seconds":1,"timeout_seconds":1,"failure_threshold":1},"startup":{"enabled":true,"type":"http","path":"example","initial_delay_seconds":1,"period_seconds":1,"timeout_seconds":1,"failure_threshold":1}},"additional_ports":[{"port":1,"name":"example","protocol":"TCP"}],"backups":{"enabled":false,"schedule":"hourly","retention_days":7},"command":["example"],"args":["example"]}'};
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.mengi.cloud/deployments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Content-Type: application/json' \ --data '{ "name": "example", "config": {}, "cpu_request": 1, "memory_request_mb": 1, "replicas": 1, "container_port": 1, "storage_size_gb": 1, "environment_variables": [ { "name": "example", "value": "example", "secret_ref": "example" } ], "docker_image": "example", "volumes": [ { "path": "example", "sizeGb": 10, "purpose": "example" } ], "helm_chart_version": "example", "custom_values_yaml": "example", "image_update_strategy": "example", "image_update_constraint": "example", "image_allow_tags": "example", "image_ignore_tags": "example", "custom_domain": "example", "failover_health_route": true, "health_checks": { "liveness": { "enabled": true, "type": "http", "path": "example", "initial_delay_seconds": 1, "period_seconds": 1, "timeout_seconds": 1, "failure_threshold": 1 }, "readiness": { "enabled": true, "type": "http", "path": "example", "initial_delay_seconds": 1, "period_seconds": 1, "timeout_seconds": 1, "failure_threshold": 1 }, "startup": { "enabled": true, "type": "http", "path": "example", "initial_delay_seconds": 1, "period_seconds": 1, "timeout_seconds": 1, "failure_threshold": 1 } }, "additional_ports": [ { "port": 1, "name": "example", "protocol": "TCP" } ], "backups": { "enabled": false, "schedule": "hourly", "retention_days": 7 }, "command": [ "example" ], "args": [ "example" ] }'Update a deployment’s configuration.
Changes will regenerate the values.yaml and queue a worker job to sync to Git, triggering ArgoCD to redeploy with the new configuration.
Service principal (X-Service-Token) may update any deployment — internal tooling uses this same public endpoint per the dogfood principle (e.g. ops migrations of env secret_refs).
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
Volume configuration for persistent storage.
Container health check configuration (stored in the deployment config).
On update, an empty object clears any overrides and restores automatic detection.
object
One container health check (liveness or readiness probe).
All fields except enabled are optional: an unset type keeps the
auto-detected HTTP/TCP choice, an unset path keeps the detected
endpoint, and unset timings keep the platform defaults.
One container health check (liveness or readiness probe).
All fields except enabled are optional: an unset type keeps the
auto-detected HTTP/TCP choice, an unset path keeps the detected
endpoint, and unset timings keep the platform defaults.
One container health check (liveness or readiness probe).
All fields except enabled are optional: an unset type keeps the
auto-detected HTTP/TCP choice, an unset path keeps the detected
endpoint, and unset timings keep the platform defaults.
An extra container port, exposed on the pod and the deployment’s in-cluster Service (the ingress keeps routing to the main container port).
name must be a valid Kubernetes port name (lowercase alphanumerics and
‘-’, at most 15 chars, at least one letter); it defaults to port-protocol means TCP.
Scheduled backup configuration (stored in the deployment config).
Backups capture the deployment’s namespace: workload configuration, in-namespace secrets, and all persistent volume data. Managed databases are excluded — they have their own backup mechanism. Requires a dedicated cluster and the “backups” feature flag.
object
Responses
Section titled “Responses”Successful Response
object
Example
{ "app_type": "web_app", "status": "pending", "is_adopted": false}Validation Error
object
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ]}