Update Service
Update a service's config (source, build, runtime, networking). Changes take effect on the next deployment.
Update a service's config (source, build, runtime, networking). Changes take effect on the next deployment.
Authorization
bearerAuth Access token or API key (unb_...) passed as Authorization: Bearer <token>.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Additional ports to add, will not remove existing ports
Additional variable mounts to add, will not remove existing mounts
Additional volumes to add, will not remove existing volumes
Number of base backups to retain, e.g. 3
int641 <= valueCron expression for the backup schedule, e.g. '0 0 * * *'
Value in
- "railpack"
- "docker"
- "database"
Optional path to Dockerfile context, if using docker builder - set empty string to reset to default
Optional path to Dockerfile, if using docker builder - set empty string to reset to default
uuidTag to build from, supports glob patterns
List of init containers
Whether the service is reachable from the internet. A database gets a public address when true and loses it when false
Has to be unique in the environment
1 <= length <= 32Mount variables as volumes
Volumes to attach to the service
uuidHosts to remove
Ports to remove
Variable mounts to remove
Volumes to remove from the service
int321 <= value <= 10Resource limits and requests for the service containers
S3 bucket to store database backups in. Only for databases that support backups, Redis does not
uuiduuiduuidAdditional hosts to add, will not remove existing hosts
Gitignore-style patterns, a push deploys only when a changed file matches. Empty deploys on every push
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PUT "https://example.com/services/update" \ -H "Content-Type: application/json" \ -d '{ "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4", "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "service_id": "641e839f-864e-4cce-98f9-40f6cbb3e9e0", "team_id": "810007d0-bec5-486c-b5d1-28fcd8a079ba" }'{ "data": { "config": { "auto_deploy": true, "backup_retention_count": 0, "backup_schedule": "string", "builder": "railpack", "database_config": { "default_database_name": "string", "innodb_buffer_pool_size_mb": 0, "max_replication_slots": 0, "max_slot_wal_keep_size_mb": 0, "max_wal_senders": 0, "shared_buffers_mb": 0, "storage": "string", "version": "string", "wal_level": "replica" }, "docker_builder_build_context": "string", "docker_builder_dockerfile_path": "string", "git_branch": "string", "git_tag": "string", "health_check": { "command": "string", "health_failure_threshold": 0, "health_period_seconds": 0, "health_timeout_seconds": 0, "path": "string", "port": 0, "startup_failure_threshold": 0, "startup_period_seconds": 0, "startup_timeout_seconds": 0, "type": "http" }, "hosts": [ { "description": "string", "display_name": "string", "host": "string", "path": "string", "prev_host": "string", "protocol": "string", "target_port": 0, "template_input_id": "string" } ], "icon": "string", "image": "string", "init_containers": [ { "command": "string", "image": "string" } ], "is_public": true, "ports": [ { "is_nodeport": true, "node_port": 0, "port": 0, "protocol": "TCP" } ], "protected_variables": [ "string" ], "railpack_builder_build_command": "string", "railpack_builder_install_command": "string", "replicas": 0, "resources": { "cpu_limits_millicores": -1, "cpu_requests_millicores": -1, "memory_limits_megabytes": -1, "memory_requests_megabytes": -1 }, "run_command": "string", "s3_backup_bucket_id": "7bf31046-51dc-4bdd-aac9-39810caac945", "security_context": { "capabilities": { "add": [ "string" ], "drop": [ "string" ] }, "privileged": true }, "variable_mounts": [ { "name": "string", "path": "string" } ], "volumes": [ { "can_delete": true, "capacity_gb": 0.1, "created_at": "2019-08-24T14:15:22Z", "description": "string", "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4", "id": "string", "is_available": true, "is_database": true, "is_deleting": true, "is_pending_resize": true, "mount_path": "string", "mount_status": "unattached", "mounted_on_service_id": "6de1f4a4-7b8e-4432-bffa-782791ce061a", "name": "string", "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "requested_gb": 0.1, "status": "Pending", "team_id": "810007d0-bec5-486c-b5d1-28fcd8a079ba", "type": "team", "used_gb": 0.1 } ], "watch_paths": [ "string" ] }, "created_at": "2019-08-24T14:15:22Z", "current_deployment": { "attempts": 0, "builder": "railpack", "commit_author": { "avatar_url": "string", "name": "string" }, "commit_message": "string", "commit_sha": "string", "completed_at": "2019-08-24T14:15:22Z", "crashing_reasons": [ "string" ], "created_at": "2019-08-24T14:15:22Z", "docker_builder_build_context": "string", "docker_builder_dockerfile_path": "string", "error": "string", "git_branch": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "image": "string", "job_name": "string", "queued_at": "2019-08-24T14:15:22Z", "railpack_builder_build_command": "string", "railpack_builder_install_command": "string", "replica_events": [ { "count": 0, "first_seen": "string", "last_seen": "string", "message": "string", "reason": "string", "timestamp": "string", "type": "oom_killed" } ], "replica_restarts": 0, "run_command": "string", "service_id": "641e839f-864e-4cce-98f9-40f6cbb3e9e0", "started_at": "2019-08-24T14:15:22Z", "status": "build-pending", "status_message": "string", "updated_at": "2019-08-24T14:15:22Z" }, "database_type": "string", "database_version": "string", "description": "string", "detected_ports": [ { "is_nodeport": true, "node_port": 0, "port": 0, "protocol": "TCP" } ], "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4", "git_repository": "string", "git_repository_owner": "string", "github_installation_id": 0, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "kubernetes_name": "string", "last_deployment": { "attempts": 0, "builder": "railpack", "commit_author": { "avatar_url": "string", "name": "string" }, "commit_message": "string", "commit_sha": "string", "completed_at": "2019-08-24T14:15:22Z", "crashing_reasons": [ "string" ], "created_at": "2019-08-24T14:15:22Z", "docker_builder_build_context": "string", "docker_builder_dockerfile_path": "string", "error": "string", "git_branch": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "image": "string", "job_name": "string", "queued_at": "2019-08-24T14:15:22Z", "railpack_builder_build_command": "string", "railpack_builder_install_command": "string", "replica_events": [ { "count": 0, "first_seen": "string", "last_seen": "string", "message": "string", "reason": "string", "timestamp": "string", "type": "oom_killed" } ], "replica_restarts": 0, "run_command": "string", "service_id": "641e839f-864e-4cce-98f9-40f6cbb3e9e0", "started_at": "2019-08-24T14:15:22Z", "status": "build-pending", "status_message": "string", "updated_at": "2019-08-24T14:15:22Z" }, "last_successful_deployment": { "attempts": 0, "builder": "railpack", "commit_author": { "avatar_url": "string", "name": "string" }, "commit_message": "string", "commit_sha": "string", "completed_at": "2019-08-24T14:15:22Z", "crashing_reasons": [ "string" ], "created_at": "2019-08-24T14:15:22Z", "docker_builder_build_context": "string", "docker_builder_dockerfile_path": "string", "error": "string", "git_branch": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "image": "string", "job_name": "string", "queued_at": "2019-08-24T14:15:22Z", "railpack_builder_build_command": "string", "railpack_builder_install_command": "string", "replica_events": [ { "count": 0, "first_seen": "string", "last_seen": "string", "message": "string", "reason": "string", "timestamp": "string", "type": "oom_killed" } ], "replica_restarts": 0, "run_command": "string", "service_id": "641e839f-864e-4cce-98f9-40f6cbb3e9e0", "started_at": "2019-08-24T14:15:22Z", "status": "build-pending", "status_message": "string", "updated_at": "2019-08-24T14:15:22Z" }, "name": "string", "permissions": [ "admin" ], "service_group": { "created_at": "2019-08-24T14:15:22Z", "description": "string", "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4", "icon": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "template_id": "c6d67e98-83ea-49f0-8812-e4abae2b68bc" }, "template": { "created_at": "2019-08-24T14:15:22Z", "description": "string", "display_rank": 0, "icon": "string", "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "immutable": true, "keywords": [ "string" ], "name": "string", "resource_recommendations": { "minimum_recommended_cpu": 0.1, "minimum_recommended_ram_gb": 0.1 }, "version": 0 }, "template_instance_id": "b31637c1-1c84-4c03-af4e-c025a1593e8b", "type": "github", "updated_at": "2019-08-24T14:15:22Z" }}Create Service POST
Create a service from a git repo, container image, or database. Does not deploy it; trigger a deployment separately.
Delete Service DELETE
Permanently delete a service, its deployments, and its config. Attached volumes are not deleted, they remain in the environment and can be attached to another service. If it was the last service in its service group, the group is deleted too.