Create Service
Create a service from a git repo, container image, or database. Does not deploy it; trigger a deployment separately.
Create a service from a git repo, container image, or database. Does not deploy it; trigger a deployment separately.
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.
Number of base backups to retain, e.g. 3
int641 <= valueCron expression for the backup schedule, e.g. '0 0 * * *'
Builder of the service - docker, nixpacks, railpack
Value in
- "railpack"
- "docker"
- "database"
Optional path to Dockerfile context, if using docker builder
Optional path to Dockerfile, if using docker builder
uuidint64Health check configuration for the service
Init containers to run before the main container
Whether the service is reachable from the internet. Defaults to true for a service with a port and to false for a database
Has to be unique in the environment. A taken name gets a short suffix, so read the name from the response
1 <= length <= 32uuidint321 <= value <= 10Must be a repository the GitHub installation has access to
Must be the account the GitHub installation belongs to
Resource limits and requests for the service containers
S3 bucket to store database backups in. Only for databases that support backups, Redis does not
uuiduuidType of service, e.g. 'github', 'docker-image'
Value in
- "github"
- "docker-image"
- "database"
Mount variables as volumes
Volumes to mount in the service
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 POST "https://example.com/services/create" \ -H "Content-Type: application/json" \ -d '{ "builder": "railpack", "environment_id": "40ef0e48-a11f-4963-a229-e396c9f7e7c4", "name": "string", "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "team_id": "810007d0-bec5-486c-b5d1-28fcd8a079ba", "type": "github" }'{ "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" }}