2024-11-11 13:31:26 +00:00
openapi : 3.1 .0
2024-07-05 14:08:01 +00:00
info :
title : Coolify
version : '0.1'
servers :
-
2024-07-06 12:34:15 +00:00
url : 'https://app.coolify.io/api/v1'
2024-07-24 19:10:32 +00:00
description : 'Coolify Cloud API. Change the host to your own instance if you are self-hosting.'
2024-07-05 14:08:01 +00:00
paths :
2024-07-09 08:45:10 +00:00
/applications :
get :
tags :
- Applications
summary : List
description : 'List all applications.'
2024-09-04 08:09:10 +00:00
operationId : list-applications
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all applications.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Application'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
/applications/public :
post :
tags :
- Applications
summary : 'Create (Public)'
description : 'Create new application based on a public git repository.'
2024-09-04 08:09:10 +00:00
operationId : create-public-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- git_repository
- git_branch
- build_pack
- ports_exposes
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 12:12:52 +00:00
git_repository :
type : string
description : 'The git repository URL.'
git_branch :
type : string
description : 'The git branch.'
build_pack :
type : string
enum : [ nixpacks, static, dockerfile, dockercompose]
description : 'The build pack type.'
ports_exposes :
type : string
description : 'The ports to expose.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
domains :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application domains.'
2024-07-09 11:19:21 +00:00
git_commit_sha :
type : string
2024-07-09 12:12:52 +00:00
description : 'The git commit SHA.'
2024-07-09 11:19:21 +00:00
docker_registry_image_name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image name.'
2024-07-09 11:19:21 +00:00
docker_registry_image_tag :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image tag.'
2024-07-09 11:19:21 +00:00
is_static :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application is static.'
2024-10-21 12:50:44 +00:00
static_image :
type : string
enum : [ 'nginx:alpine' ]
description : 'The static image.'
2024-07-09 11:19:21 +00:00
install_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The install command.'
2024-07-09 11:19:21 +00:00
build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The build command.'
2024-07-09 11:19:21 +00:00
start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The start command.'
2024-07-09 11:19:21 +00:00
ports_mappings :
type : string
2024-07-09 12:12:52 +00:00
description : 'The ports mappings.'
2024-07-09 11:19:21 +00:00
base_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The base directory for all commands.'
2024-07-09 11:19:21 +00:00
publish_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The publish directory.'
2024-07-09 11:19:21 +00:00
health_check_enabled :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'Health check enabled.'
2024-07-09 11:19:21 +00:00
health_check_path :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check path.'
2024-07-09 11:19:21 +00:00
health_check_port :
2024-07-09 12:12:52 +00:00
type : string
nullable : true
description : 'Health check port.'
2024-07-09 11:19:21 +00:00
health_check_host :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 11:19:21 +00:00
health_check_method :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check method.'
2024-07-09 11:19:21 +00:00
health_check_return_code :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check return code.'
2024-07-09 11:19:21 +00:00
health_check_scheme :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check scheme.'
2024-07-09 11:19:21 +00:00
health_check_response_text :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check response text.'
2024-07-09 11:19:21 +00:00
health_check_interval :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check interval in seconds.'
2024-07-09 11:19:21 +00:00
health_check_timeout :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 11:19:21 +00:00
health_check_retries :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check retries count.'
2024-07-09 11:19:21 +00:00
health_check_start_period :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check start period in seconds.'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory swap limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Memory swappiness.'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory reservation.'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 12:12:52 +00:00
description : 'CPU limit.'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'CPU set.'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
2024-07-09 12:12:52 +00:00
type : integer
description : 'CPU shares.'
2024-07-09 11:19:21 +00:00
custom_labels :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom labels.'
2024-07-09 11:19:21 +00:00
custom_docker_run_options :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom docker run options.'
2024-07-09 11:19:21 +00:00
post_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command.'
2024-07-09 11:19:21 +00:00
post_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command container.'
2024-07-09 11:19:21 +00:00
pre_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command.'
2024-07-09 11:19:21 +00:00
pre_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command container.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_github :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Github.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitlab :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitlab.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_bitbucket :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Bitbucket.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitea :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitea.'
2024-07-09 11:19:21 +00:00
redirect :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-07-09 11:19:21 +00:00
dockerfile :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Dockerfile content.'
2024-07-09 11:19:21 +00:00
docker_compose_location :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose location.'
2024-07-09 11:19:21 +00:00
docker_compose_raw :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose raw content.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom start command.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom build command.'
2024-07-09 11:19:21 +00:00
docker_compose_domains :
type : array
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose domains.'
2024-07-09 11:19:21 +00:00
watch_paths :
type : string
2024-07-09 12:12:52 +00:00
description : 'The watch paths.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2025-12-09 15:26:08 +00:00
autogenerate_domain :
type : boolean
2025-12-11 11:12:43 +00:00
default : true
2025-12-09 15:26:08 +00:00
description : "If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true."
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
2024-08-13 11:27:50 +00:00
/applications/private-github-app :
2024-07-09 11:19:21 +00:00
post :
tags :
- Applications
summary : 'Create (Private - GH App)'
description : 'Create new application based on a private repository through a Github App.'
2024-09-04 08:09:10 +00:00
operationId : create-private-github-app-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- github_app_uuid
- git_repository
- git_branch
- build_pack
- ports_exposes
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
github_app_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Github App UUID.'
git_repository :
type : string
description : 'The git repository URL.'
git_branch :
type : string
description : 'The git branch.'
ports_exposes :
type : string
description : 'The ports to expose.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID.'
build_pack :
type : string
enum : [ nixpacks, static, dockerfile, dockercompose]
description : 'The build pack type.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
domains :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application domains.'
2024-07-09 11:19:21 +00:00
git_commit_sha :
type : string
2024-07-09 12:12:52 +00:00
description : 'The git commit SHA.'
2024-07-09 11:19:21 +00:00
docker_registry_image_name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image name.'
2024-07-09 11:19:21 +00:00
docker_registry_image_tag :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image tag.'
2024-07-09 11:19:21 +00:00
is_static :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application is static.'
2024-10-21 12:50:44 +00:00
static_image :
type : string
enum : [ 'nginx:alpine' ]
description : 'The static image.'
2024-07-09 11:19:21 +00:00
install_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The install command.'
2024-07-09 11:19:21 +00:00
build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The build command.'
2024-07-09 11:19:21 +00:00
start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The start command.'
2024-07-09 11:19:21 +00:00
ports_mappings :
type : string
2024-07-09 12:12:52 +00:00
description : 'The ports mappings.'
2024-07-09 11:19:21 +00:00
base_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The base directory for all commands.'
2024-07-09 11:19:21 +00:00
publish_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The publish directory.'
2024-07-09 11:19:21 +00:00
health_check_enabled :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'Health check enabled.'
2024-07-09 11:19:21 +00:00
health_check_path :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check path.'
2024-07-09 11:19:21 +00:00
health_check_port :
2024-07-09 12:12:52 +00:00
type : string
nullable : true
description : 'Health check port.'
2024-07-09 11:19:21 +00:00
health_check_host :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 11:19:21 +00:00
health_check_method :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check method.'
2024-07-09 11:19:21 +00:00
health_check_return_code :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check return code.'
2024-07-09 11:19:21 +00:00
health_check_scheme :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check scheme.'
2024-07-09 11:19:21 +00:00
health_check_response_text :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check response text.'
2024-07-09 11:19:21 +00:00
health_check_interval :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check interval in seconds.'
2024-07-09 11:19:21 +00:00
health_check_timeout :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 11:19:21 +00:00
health_check_retries :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check retries count.'
2024-07-09 11:19:21 +00:00
health_check_start_period :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check start period in seconds.'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory swap limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Memory swappiness.'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory reservation.'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 12:12:52 +00:00
description : 'CPU limit.'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'CPU set.'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
2024-07-09 12:12:52 +00:00
type : integer
description : 'CPU shares.'
2024-07-09 11:19:21 +00:00
custom_labels :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom labels.'
2024-07-09 11:19:21 +00:00
custom_docker_run_options :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom docker run options.'
2024-07-09 11:19:21 +00:00
post_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command.'
2024-07-09 11:19:21 +00:00
post_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command container.'
2024-07-09 11:19:21 +00:00
pre_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command.'
2024-07-09 11:19:21 +00:00
pre_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command container.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_github :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Github.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitlab :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitlab.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_bitbucket :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Bitbucket.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitea :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitea.'
2024-07-09 11:19:21 +00:00
redirect :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-07-09 11:19:21 +00:00
dockerfile :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Dockerfile content.'
2024-07-09 11:19:21 +00:00
docker_compose_location :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose location.'
2024-07-09 11:19:21 +00:00
docker_compose_raw :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose raw content.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom start command.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom build command.'
2024-07-09 11:19:21 +00:00
docker_compose_domains :
type : array
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose domains.'
2024-07-09 11:19:21 +00:00
watch_paths :
type : string
2024-07-09 12:12:52 +00:00
description : 'The watch paths.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2025-12-09 15:26:08 +00:00
autogenerate_domain :
type : boolean
2025-12-11 11:12:43 +00:00
default : true
2025-12-09 15:26:08 +00:00
description : "If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true."
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/applications/private-deploy-key :
post :
tags :
- Applications
summary : 'Create (Private - Deploy Key)'
description : 'Create new application based on a private repository through a Deploy Key.'
2024-09-04 08:09:10 +00:00
operationId : create-private-deploy-key-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- private_key_uuid
- git_repository
- git_branch
- build_pack
- ports_exposes
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
private_key_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The private key UUID.'
git_repository :
type : string
description : 'The git repository URL.'
git_branch :
type : string
description : 'The git branch.'
ports_exposes :
type : string
description : 'The ports to expose.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID.'
build_pack :
type : string
enum : [ nixpacks, static, dockerfile, dockercompose]
description : 'The build pack type.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
domains :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application domains.'
2024-07-09 11:19:21 +00:00
git_commit_sha :
type : string
2024-07-09 12:12:52 +00:00
description : 'The git commit SHA.'
2024-07-09 11:19:21 +00:00
docker_registry_image_name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image name.'
2024-07-09 11:19:21 +00:00
docker_registry_image_tag :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image tag.'
2024-07-09 11:19:21 +00:00
is_static :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application is static.'
2024-10-21 12:50:44 +00:00
static_image :
type : string
enum : [ 'nginx:alpine' ]
description : 'The static image.'
2024-07-09 11:19:21 +00:00
install_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The install command.'
2024-07-09 11:19:21 +00:00
build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The build command.'
2024-07-09 11:19:21 +00:00
start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The start command.'
2024-07-09 11:19:21 +00:00
ports_mappings :
type : string
2024-07-09 12:12:52 +00:00
description : 'The ports mappings.'
2024-07-09 11:19:21 +00:00
base_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The base directory for all commands.'
2024-07-09 11:19:21 +00:00
publish_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The publish directory.'
2024-07-09 11:19:21 +00:00
health_check_enabled :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'Health check enabled.'
2024-07-09 11:19:21 +00:00
health_check_path :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check path.'
2024-07-09 11:19:21 +00:00
health_check_port :
2024-07-09 12:12:52 +00:00
type : string
nullable : true
description : 'Health check port.'
2024-07-09 11:19:21 +00:00
health_check_host :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 11:19:21 +00:00
health_check_method :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check method.'
2024-07-09 11:19:21 +00:00
health_check_return_code :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check return code.'
2024-07-09 11:19:21 +00:00
health_check_scheme :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check scheme.'
2024-07-09 11:19:21 +00:00
health_check_response_text :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check response text.'
2024-07-09 11:19:21 +00:00
health_check_interval :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check interval in seconds.'
2024-07-09 11:19:21 +00:00
health_check_timeout :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 11:19:21 +00:00
health_check_retries :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check retries count.'
2024-07-09 11:19:21 +00:00
health_check_start_period :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check start period in seconds.'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory swap limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Memory swappiness.'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory reservation.'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 12:12:52 +00:00
description : 'CPU limit.'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'CPU set.'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
2024-07-09 12:12:52 +00:00
type : integer
description : 'CPU shares.'
2024-07-09 11:19:21 +00:00
custom_labels :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom labels.'
2024-07-09 11:19:21 +00:00
custom_docker_run_options :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom docker run options.'
2024-07-09 11:19:21 +00:00
post_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command.'
2024-07-09 11:19:21 +00:00
post_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command container.'
2024-07-09 11:19:21 +00:00
pre_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command.'
2024-07-09 11:19:21 +00:00
pre_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command container.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_github :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Github.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitlab :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitlab.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_bitbucket :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Bitbucket.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitea :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitea.'
2024-07-09 11:19:21 +00:00
redirect :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-07-09 11:19:21 +00:00
dockerfile :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Dockerfile content.'
2024-07-09 11:19:21 +00:00
docker_compose_location :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose location.'
2024-07-09 11:19:21 +00:00
docker_compose_raw :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose raw content.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_start_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom start command.'
2024-07-09 11:19:21 +00:00
docker_compose_custom_build_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose custom build command.'
2024-07-09 11:19:21 +00:00
docker_compose_domains :
type : array
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose domains.'
2024-07-09 11:19:21 +00:00
watch_paths :
type : string
2024-07-09 12:12:52 +00:00
description : 'The watch paths.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2025-12-09 15:26:08 +00:00
autogenerate_domain :
type : boolean
2025-12-11 11:12:43 +00:00
default : true
2025-12-09 15:26:08 +00:00
description : "If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true."
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/applications/dockerfile :
post :
tags :
- Applications
summary : 'Create (Dockerfile)'
description : 'Create new application based on a simple Dockerfile.'
2024-09-04 08:09:10 +00:00
operationId : create-dockerfile-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- dockerfile
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
dockerfile :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Dockerfile content.'
build_pack :
type : string
enum : [ nixpacks, static, dockerfile, dockercompose]
description : 'The build pack type.'
ports_exposes :
type : string
description : 'The ports to expose.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
domains :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application domains.'
2024-07-09 11:19:21 +00:00
docker_registry_image_name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image name.'
2024-07-09 11:19:21 +00:00
docker_registry_image_tag :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image tag.'
2024-07-09 11:19:21 +00:00
ports_mappings :
type : string
2024-07-09 12:12:52 +00:00
description : 'The ports mappings.'
2024-07-09 11:19:21 +00:00
base_directory :
type : string
2024-07-09 12:12:52 +00:00
description : 'The base directory for all commands.'
2024-07-09 11:19:21 +00:00
health_check_enabled :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'Health check enabled.'
2024-07-09 11:19:21 +00:00
health_check_path :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check path.'
2024-07-09 11:19:21 +00:00
health_check_port :
2024-07-09 12:12:52 +00:00
type : string
nullable : true
description : 'Health check port.'
2024-07-09 11:19:21 +00:00
health_check_host :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 11:19:21 +00:00
health_check_method :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check method.'
2024-07-09 11:19:21 +00:00
health_check_return_code :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check return code.'
2024-07-09 11:19:21 +00:00
health_check_scheme :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check scheme.'
2024-07-09 11:19:21 +00:00
health_check_response_text :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check response text.'
2024-07-09 11:19:21 +00:00
health_check_interval :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check interval in seconds.'
2024-07-09 11:19:21 +00:00
health_check_timeout :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 11:19:21 +00:00
health_check_retries :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check retries count.'
2024-07-09 11:19:21 +00:00
health_check_start_period :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check start period in seconds.'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory swap limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Memory swappiness.'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory reservation.'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 12:12:52 +00:00
description : 'CPU limit.'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'CPU set.'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
2024-07-09 12:12:52 +00:00
type : integer
description : 'CPU shares.'
2024-07-09 11:19:21 +00:00
custom_labels :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom labels.'
2024-07-09 11:19:21 +00:00
custom_docker_run_options :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom docker run options.'
2024-07-09 11:19:21 +00:00
post_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command.'
2024-07-09 11:19:21 +00:00
post_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command container.'
2024-07-09 11:19:21 +00:00
pre_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command.'
2024-07-09 11:19:21 +00:00
pre_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command container.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_github :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Github.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitlab :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitlab.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_bitbucket :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Bitbucket.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitea :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitea.'
2024-07-09 11:19:21 +00:00
redirect :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2025-12-09 15:26:08 +00:00
autogenerate_domain :
type : boolean
2025-12-11 11:12:43 +00:00
default : true
2025-12-09 15:26:08 +00:00
description : "If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true."
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/applications/dockerimage :
post :
tags :
- Applications
summary : 'Create (Docker Image)'
description : 'Create new application based on a prebuilt docker image'
2024-09-04 08:09:10 +00:00
operationId : create-dockerimage-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- docker_registry_image_name
- ports_exposes
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
docker_registry_image_name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image name.'
2024-07-09 11:19:21 +00:00
docker_registry_image_tag :
type : string
2024-07-09 12:12:52 +00:00
description : 'The docker registry image tag.'
ports_exposes :
type : string
description : 'The ports to expose.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
domains :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application domains.'
2024-07-09 11:19:21 +00:00
ports_mappings :
type : string
2024-07-09 12:12:52 +00:00
description : 'The ports mappings.'
2024-07-09 11:19:21 +00:00
health_check_enabled :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'Health check enabled.'
2024-07-09 11:19:21 +00:00
health_check_path :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check path.'
2024-07-09 11:19:21 +00:00
health_check_port :
2024-07-09 12:12:52 +00:00
type : string
nullable : true
description : 'Health check port.'
2024-07-09 11:19:21 +00:00
health_check_host :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 11:19:21 +00:00
health_check_method :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check method.'
2024-07-09 11:19:21 +00:00
health_check_return_code :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check return code.'
2024-07-09 11:19:21 +00:00
health_check_scheme :
type : string
2024-07-09 12:12:52 +00:00
description : 'Health check scheme.'
2024-07-09 11:19:21 +00:00
health_check_response_text :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'Health check response text.'
2024-07-09 11:19:21 +00:00
health_check_interval :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check interval in seconds.'
2024-07-09 11:19:21 +00:00
health_check_timeout :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 11:19:21 +00:00
health_check_retries :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check retries count.'
2024-07-09 11:19:21 +00:00
health_check_start_period :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Health check start period in seconds.'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory swap limit.'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 12:12:52 +00:00
description : 'Memory swappiness.'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 12:12:52 +00:00
description : 'Memory reservation.'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 12:12:52 +00:00
description : 'CPU limit.'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'CPU set.'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
2024-07-09 12:12:52 +00:00
type : integer
description : 'CPU shares.'
2024-07-09 11:19:21 +00:00
custom_labels :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom labels.'
2024-07-09 11:19:21 +00:00
custom_docker_run_options :
type : string
2024-07-09 12:12:52 +00:00
description : 'Custom docker run options.'
2024-07-09 11:19:21 +00:00
post_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command.'
2024-07-09 11:19:21 +00:00
post_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Post deployment command container.'
2024-07-09 11:19:21 +00:00
pre_deployment_command :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command.'
2024-07-09 11:19:21 +00:00
pre_deployment_command_container :
type : string
2024-07-09 12:12:52 +00:00
description : 'Pre deployment command container.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_github :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Github.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitlab :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitlab.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_bitbucket :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Bitbucket.'
2024-07-09 11:19:21 +00:00
manual_webhook_secret_gitea :
type : string
2024-07-09 12:12:52 +00:00
description : 'Manual webhook secret for Gitea.'
2024-07-09 11:19:21 +00:00
redirect :
type : string
2024-07-09 12:12:52 +00:00
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2025-12-09 15:26:08 +00:00
autogenerate_domain :
type : boolean
2025-12-11 11:12:43 +00:00
default : true
2025-12-09 15:26:08 +00:00
description : "If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Default: true."
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/applications/dockercompose :
post :
tags :
- Applications
summary : 'Create (Docker Compose)'
description : 'Create new application based on a docker-compose file.'
2024-09-04 08:09:10 +00:00
operationId : create-dockercompose-application
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Application object that needs to be created.'
required : true
content :
application/json :
schema :
required :
- project_uuid
- server_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
- docker_compose_raw
properties :
project_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The project UUID.'
2024-07-09 11:19:21 +00:00
server_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The server UUID.'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'The environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'The environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
docker_compose_raw :
type : string
2024-07-09 12:12:52 +00:00
description : 'The Docker Compose raw content.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 12:12:52 +00:00
description : 'The destination UUID if the server has more than one destinations.'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application name.'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 12:12:52 +00:00
description : 'The application description.'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the application should be deployed instantly.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-09 11:19:21 +00:00
type : object
responses :
2024-12-14 01:58:11 +00:00
'201' :
2024-07-09 11:19:21 +00:00
description : 'Application created successfully.'
2024-12-14 01:58:11 +00:00
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
'/applications/{uuid}' :
get :
tags :
- Applications
summary : Get
description : 'Get application by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-application-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
responses :
'200' :
description : 'Get application by UUID.'
content :
application/json :
schema :
$ref : '#/components/schemas/Application'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
delete :
tags :
- Applications
summary : Delete
description : 'Delete application by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-application-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
2024-10-01 07:04:01 +00:00
description : 'UUID of the application.'
2024-07-09 11:19:21 +00:00
required : true
schema :
type : string
2024-07-11 10:38:54 +00:00
-
2024-10-01 07:02:29 +00:00
name : delete_configurations
in : query
description : 'Delete configurations.'
required : false
schema :
type : boolean
default : true
-
name : delete_volumes
2024-07-11 10:38:54 +00:00
in : query
2024-10-01 07:02:29 +00:00
description : 'Delete volumes.'
required : false
schema :
type : boolean
default : true
-
name : docker_cleanup
in : query
description : 'Run docker cleanup.'
required : false
schema :
type : boolean
default : true
-
name : delete_connected_networks
in : query
description : 'Delete connected networks.'
2024-07-11 10:38:54 +00:00
required : false
schema :
type : boolean
default : true
2024-07-09 11:19:21 +00:00
responses :
'200' :
description : 'Application deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Application deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-25 09:53:57 +00:00
patch :
tags :
- Applications
summary : Update
description : 'Update application by UUID.'
2024-09-04 08:09:10 +00:00
operationId : update-application-by-uuid
2025-04-09 16:52:12 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
2024-07-25 09:53:57 +00:00
requestBody :
description : 'Application updated.'
required : true
content :
application/json :
schema :
properties :
project_uuid :
type : string
description : 'The project UUID.'
server_uuid :
type : string
description : 'The server UUID.'
environment_name :
type : string
description : 'The environment name.'
github_app_uuid :
type : string
description : 'The Github App UUID.'
git_repository :
type : string
description : 'The git repository URL.'
git_branch :
type : string
description : 'The git branch.'
ports_exposes :
type : string
description : 'The ports to expose.'
destination_uuid :
type : string
description : 'The destination UUID.'
build_pack :
type : string
enum : [ nixpacks, static, dockerfile, dockercompose]
description : 'The build pack type.'
name :
type : string
description : 'The application name.'
description :
type : string
description : 'The application description.'
domains :
type : string
description : 'The application domains.'
git_commit_sha :
type : string
description : 'The git commit SHA.'
docker_registry_image_name :
type : string
description : 'The docker registry image name.'
docker_registry_image_tag :
type : string
description : 'The docker registry image tag.'
is_static :
type : boolean
description : 'The flag to indicate if the application is static.'
install_command :
type : string
description : 'The install command.'
build_command :
type : string
description : 'The build command.'
start_command :
type : string
description : 'The start command.'
ports_mappings :
type : string
description : 'The ports mappings.'
base_directory :
type : string
description : 'The base directory for all commands.'
publish_directory :
type : string
description : 'The publish directory.'
health_check_enabled :
type : boolean
description : 'Health check enabled.'
health_check_path :
type : string
description : 'Health check path.'
health_check_port :
type : string
nullable : true
description : 'Health check port.'
health_check_host :
type : string
nullable : true
description : 'Health check host.'
health_check_method :
type : string
description : 'Health check method.'
health_check_return_code :
type : integer
description : 'Health check return code.'
health_check_scheme :
type : string
description : 'Health check scheme.'
health_check_response_text :
type : string
nullable : true
description : 'Health check response text.'
health_check_interval :
type : integer
description : 'Health check interval in seconds.'
health_check_timeout :
type : integer
description : 'Health check timeout in seconds.'
health_check_retries :
type : integer
description : 'Health check retries count.'
health_check_start_period :
type : integer
description : 'Health check start period in seconds.'
limits_memory :
type : string
description : 'Memory limit.'
limits_memory_swap :
type : string
description : 'Memory swap limit.'
limits_memory_swappiness :
type : integer
description : 'Memory swappiness.'
limits_memory_reservation :
type : string
description : 'Memory reservation.'
limits_cpus :
type : string
description : 'CPU limit.'
limits_cpuset :
type : string
nullable : true
description : 'CPU set.'
limits_cpu_shares :
type : integer
description : 'CPU shares.'
custom_labels :
type : string
description : 'Custom labels.'
custom_docker_run_options :
type : string
description : 'Custom docker run options.'
post_deployment_command :
type : string
description : 'Post deployment command.'
post_deployment_command_container :
type : string
description : 'Post deployment command container.'
pre_deployment_command :
type : string
description : 'Pre deployment command.'
pre_deployment_command_container :
type : string
description : 'Pre deployment command container.'
manual_webhook_secret_github :
type : string
description : 'Manual webhook secret for Github.'
manual_webhook_secret_gitlab :
type : string
description : 'Manual webhook secret for Gitlab.'
manual_webhook_secret_bitbucket :
type : string
description : 'Manual webhook secret for Bitbucket.'
manual_webhook_secret_gitea :
type : string
description : 'Manual webhook secret for Gitea.'
redirect :
type : string
nullable : true
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum : [ www, non-www, both]
instant_deploy :
type : boolean
description : 'The flag to indicate if the application should be deployed instantly.'
dockerfile :
type : string
description : 'The Dockerfile content.'
docker_compose_location :
type : string
description : 'The Docker Compose location.'
docker_compose_raw :
type : string
description : 'The Docker Compose raw content.'
docker_compose_custom_start_command :
type : string
description : 'The Docker Compose custom start command.'
docker_compose_custom_build_command :
type : string
description : 'The Docker Compose custom build command.'
docker_compose_domains :
type : array
description : 'The Docker Compose domains.'
watch_paths :
type : string
description : 'The watch paths.'
2024-09-30 12:18:41 +00:00
use_build_server :
type : boolean
nullable : true
description : 'Use build server.'
2025-05-27 13:10:20 +00:00
connect_to_docker_network :
type : boolean
description : 'The flag to connect the service to the predefined Docker network.'
2025-08-28 09:21:30 +00:00
force_domain_override :
type : boolean
description : 'Force domain usage even if conflicts are detected. Default is false.'
2026-01-06 14:50:55 +00:00
is_container_label_escape_enabled :
type : boolean
default : true
description : 'Escape special characters in labels. By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$. If you want to use env variables inside the labels, turn this off.'
2024-07-25 09:53:57 +00:00
type : object
responses :
'200' :
description : 'Application updated.'
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-08-28 09:21:30 +00:00
'409' :
description : 'Domain conflicts detected.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Domain conflicts detected. Use force_domain_override=true to proceed.' }
warning : { type: string, example : 'Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.' }
conflicts : { type: array, items : { properties : { domain : { type: string, example: example.com }, resource_name : { type: string, example: 'My Application' }, resource_uuid : { type: string, nullable: true, example: abc123-def456 }, resource_type : { type: string, enum: [application, service, instance], example: application }, message : { type: string, example : "Domain example.com is already in use by application 'My Application'" } }, type : object } }
type : object
2024-07-25 09:53:57 +00:00
security :
-
bearerAuth : [ ]
2025-03-19 08:22:34 +00:00
'/applications/{uuid}/logs' :
get :
tags :
- Applications
summary : 'Get application logs.'
description : 'Get application logs by UUID.'
operationId : get-application-logs-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
-
name : lines
in : query
description : 'Number of lines to show from the end of the logs.'
required : false
schema :
type : integer
format : int32
default : 100
responses :
'200' :
description : 'Get application logs by UUID.'
content :
application/json :
schema :
properties :
logs : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
'/applications/{uuid}/envs' :
get :
tags :
- Applications
summary : 'List Envs'
description : 'List all envs by application UUID.'
2024-09-04 08:09:10 +00:00
operationId : list-envs-by-application-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
responses :
'200' :
description : 'All environment variables by application UUID.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/EnvironmentVariable'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
post :
tags :
- Applications
summary : 'Create Env'
description : 'Create env by application UUID.'
2024-09-04 08:09:10 +00:00
operationId : create-env-by-application-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
requestBody :
description : 'Env created.'
required : true
content :
application/json :
schema :
properties :
key :
type : string
2024-07-09 12:12:52 +00:00
description : 'The key of the environment variable.'
2024-07-09 11:19:21 +00:00
value :
type : string
2024-07-09 12:12:52 +00:00
description : 'The value of the environment variable.'
2024-07-09 11:19:21 +00:00
is_preview :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is used in preview deployments.'
2024-07-09 11:19:21 +00:00
is_literal :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is a literal, nothing espaced.'
2024-07-09 11:19:21 +00:00
is_multiline :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is multiline.'
2024-07-09 11:19:21 +00:00
is_shown_once :
type : boolean
2024-07-09 12:12:52 +00:00
description : "The flag to indicate if the environment variable's value is shown on the UI."
2024-07-09 11:19:21 +00:00
type : object
responses :
'201' :
description : 'Environment variable created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example : nc0k04gk8g0cgsk440g0koko }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
patch :
tags :
- Applications
summary : 'Update Env'
description : 'Update env by application UUID.'
2024-09-04 08:09:10 +00:00
operationId : update-env-by-application-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
requestBody :
description : 'Env updated.'
required : true
content :
application/json :
schema :
required :
- key
- value
properties :
key :
type : string
2024-07-09 12:12:52 +00:00
description : 'The key of the environment variable.'
2024-07-09 11:19:21 +00:00
value :
type : string
2024-07-09 12:12:52 +00:00
description : 'The value of the environment variable.'
2024-07-09 11:19:21 +00:00
is_preview :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is used in preview deployments.'
2024-07-09 11:19:21 +00:00
is_literal :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is a literal, nothing espaced.'
2024-07-09 11:19:21 +00:00
is_multiline :
type : boolean
2024-07-09 12:12:52 +00:00
description : 'The flag to indicate if the environment variable is multiline.'
2024-07-09 11:19:21 +00:00
is_shown_once :
type : boolean
2024-07-09 12:12:52 +00:00
description : "The flag to indicate if the environment variable's value is shown on the UI."
2024-07-09 11:19:21 +00:00
type : object
responses :
'201' :
description : 'Environment variable updated.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment variable updated.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/applications/{uuid}/envs/bulk' :
patch :
tags :
- Applications
summary : 'Update Envs (Bulk)'
description : 'Update multiple envs by application UUID.'
2024-09-04 08:09:10 +00:00
operationId : update-envs-by-application-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
requestBody :
description : 'Bulk envs updated.'
required : true
content :
application/json :
schema :
required :
- data
properties :
data :
type : array
2025-09-11 14:48:00 +00:00
items : { properties : { key : { type: string, description: 'The key of the environment variable.' }, value : { type: string, description: 'The value of the environment variable.' }, is_preview : { type: boolean, description: 'The flag to indicate if the environment variable is used in preview deployments.' }, is_literal : { type: boolean, description: 'The flag to indicate if the environment variable is a literal, nothing espaced.' }, is_multiline : { type: boolean, description: 'The flag to indicate if the environment variable is multiline.' }, is_shown_once : { type: boolean, description : "The flag to indicate if the environment variable's value is shown on the UI." } }, type : object }
2024-07-09 11:19:21 +00:00
type : object
responses :
'201' :
description : 'Environment variables updated.'
content :
application/json :
schema :
2026-01-06 11:52:32 +00:00
type : array
items :
$ref : '#/components/schemas/EnvironmentVariable'
2024-07-09 11:19:21 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/applications/{uuid}/envs/{env_uuid}' :
delete :
tags :
- Applications
summary : 'Delete Env'
description : 'Delete env by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-env-by-application-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
-
name : env_uuid
in : path
description : 'UUID of the environment variable.'
required : true
schema :
type : string
responses :
'200' :
description : 'Environment variable deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment variable deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/applications/{uuid}/start' :
get :
tags :
- Applications
summary : Start
description : 'Start application. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : start-application-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
-
name : force
in : query
description : 'Force rebuild.'
schema :
type : boolean
default : false
-
name : instant_deploy
in : query
description : 'Instant deploy (skip queuing).'
schema :
type : boolean
default : false
responses :
'200' :
description : 'Start application.'
content :
application/json :
schema :
properties :
2024-07-09 12:12:52 +00:00
message : { type: string, example: 'Deployment request queued.', description : Message. }
deployment_uuid : { type: string, example: doogksw, description : 'UUID of the deployment.' }
2024-07-09 11:19:21 +00:00
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/applications/{uuid}/stop' :
get :
tags :
- Applications
summary : Stop
description : 'Stop application. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : stop-application-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
responses :
'200' :
description : 'Stop application.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Application stopping request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/applications/{uuid}/restart' :
get :
tags :
- Applications
summary : Restart
description : 'Restart application. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : restart-application-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
responses :
'200' :
description : 'Restart application.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Restart request queued.' }
2024-07-09 12:12:52 +00:00
deployment_uuid : { type: string, example: doogksw, description : 'UUID of the deployment.' }
2024-07-09 11:19:21 +00:00
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2024-09-30 12:18:41 +00:00
security :
-
bearerAuth : [ ]
2025-12-11 08:41:54 +00:00
/cloud-tokens :
get :
tags :
- 'Cloud Tokens'
summary : 'List Cloud Provider Tokens'
description : 'List all cloud provider tokens for the authenticated team.'
operationId : list-cloud-tokens
responses :
'200' :
description : 'Get all cloud provider tokens.'
content :
application/json :
schema :
type : array
items :
properties : { uuid : { type: string }, name : { type: string }, provider : { type: string, enum: [hetzner, digitalocean] }, team_id : { type: integer }, servers_count : { type: integer }, created_at : { type: string }, updated_at : { type : string } }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
post :
tags :
- 'Cloud Tokens'
summary : 'Create Cloud Provider Token'
description : 'Create a new cloud provider token. The token will be validated before being stored.'
operationId : create-cloud-token
requestBody :
description : 'Cloud provider token details'
required : true
content :
application/json :
schema :
required :
- provider
- token
- name
properties :
provider :
type : string
enum : [ hetzner, digitalocean]
example : hetzner
description : 'The cloud provider.'
token :
type : string
example : your-api-token-here
description : 'The API token for the cloud provider.'
name :
type : string
example : 'My Hetzner Token'
description : 'A friendly name for the token.'
type : object
responses :
'201' :
description : 'Cloud provider token created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example: og888os, description : 'The UUID of the token.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'422' :
$ref : '#/components/responses/422'
security :
-
bearerAuth : [ ]
'/cloud-tokens/{uuid}' :
get :
tags :
- 'Cloud Tokens'
summary : 'Get Cloud Provider Token'
description : 'Get cloud provider token by UUID.'
operationId : get-cloud-token-by-uuid
parameters :
-
name : uuid
in : path
description : 'Token UUID'
required : true
schema :
type : string
responses :
'200' :
description : 'Get cloud provider token by UUID'
content :
application/json :
schema :
properties :
uuid : { type : string }
name : { type : string }
provider : { type : string }
team_id : { type : integer }
servers_count : { type : integer }
created_at : { type : string }
updated_at : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
delete :
tags :
- 'Cloud Tokens'
summary : 'Delete Cloud Provider Token'
description : 'Delete cloud provider token by UUID. Cannot delete if token is used by any servers.'
operationId : delete-cloud-token-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the cloud provider token.'
required : true
schema :
type : string
responses :
'200' :
description : 'Cloud provider token deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Cloud provider token deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
patch :
tags :
- 'Cloud Tokens'
summary : 'Update Cloud Provider Token'
description : 'Update cloud provider token name.'
operationId : update-cloud-token-by-uuid
parameters :
-
name : uuid
in : path
description : 'Token UUID'
required : true
schema :
type : string
requestBody :
description : 'Cloud provider token updated.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'The friendly name for the token.'
type : object
responses :
'200' :
description : 'Cloud provider token updated.'
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
'422' :
$ref : '#/components/responses/422'
security :
-
bearerAuth : [ ]
'/cloud-tokens/{uuid}/validate' :
post :
tags :
- 'Cloud Tokens'
summary : 'Validate Cloud Provider Token'
description : 'Validate a cloud provider token against the provider API.'
operationId : validate-cloud-token-by-uuid
parameters :
-
name : uuid
in : path
description : 'Token UUID'
required : true
schema :
type : string
responses :
'200' :
description : 'Token validation result.'
content :
application/json :
schema :
properties :
valid : { type: boolean, example : true }
message : { type: string, example : 'Token is valid.' }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
/databases :
get :
tags :
- Databases
summary : List
description : 'List all databases.'
2024-09-04 08:09:10 +00:00
operationId : list-databases
2024-07-09 11:19:21 +00:00
responses :
'200' :
description : 'Get all databases'
content :
application/json :
schema :
type : string
example : 'Content is very complex. Will be implemented later.'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2025-09-30 09:19:39 +00:00
'/databases/{uuid}/backups' :
get :
tags :
- Databases
summary : Get
description : 'Get backups details by database UUID.'
operationId : get-database-backups-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
responses :
'200' :
description : 'Get all backups for a database'
content :
application/json :
schema :
type : string
example : 'Content is very complex. Will be implemented later.'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2025-10-20 11:57:43 +00:00
post :
tags :
- Databases
summary : 'Create Backup'
description : 'Create a new scheduled backup configuration for a database'
operationId : create-database-backup
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
requestBody :
description : 'Backup configuration data'
required : true
content :
application/json :
schema :
required :
- frequency
properties :
frequency :
type : string
description: 'Backup frequency (cron expression or : every_minute, hourly, daily, weekly, monthly, yearly)'
enabled :
type : boolean
description : 'Whether the backup is enabled'
default : true
save_s3 :
type : boolean
description : 'Whether to save backups to S3'
default : false
s3_storage_uuid :
type : string
description : 'S3 storage UUID (required if save_s3 is true)'
databases_to_backup :
type : string
description : 'Comma separated list of databases to backup'
dump_all :
type : boolean
description : 'Whether to dump all databases'
default : false
backup_now :
type : boolean
description : 'Whether to trigger backup immediately after creation'
database_backup_retention_amount_locally :
type : integer
description : 'Number of backups to retain locally'
database_backup_retention_days_locally :
type : integer
description : 'Number of days to retain backups locally'
database_backup_retention_max_storage_locally :
type : integer
description : 'Max storage (MB) for local backups'
database_backup_retention_amount_s3 :
type : integer
description : 'Number of backups to retain in S3'
database_backup_retention_days_s3 :
type : integer
description : 'Number of days to retain backups in S3'
database_backup_retention_max_storage_s3 :
type : integer
description : 'Max storage (MB) for S3 backups'
type : object
responses :
'201' :
description : 'Backup configuration created successfully'
content :
application/json :
schema :
properties :
uuid : { type: string, format: uuid, example : 550e8400 -e29b-41d4-a716-446655440000 }
message : { type: string, example : 'Backup configuration created successfully.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
'422' :
$ref : '#/components/responses/422'
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
'/databases/{uuid}' :
get :
tags :
- Databases
summary : Get
description : 'Get database by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-database-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
responses :
'200' :
description : 'Get all databases'
content :
application/json :
schema :
type : string
example : 'Content is very complex. Will be implemented later.'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
delete :
tags :
- Databases
summary : Delete
description : 'Delete database by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-database-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
2024-07-11 10:38:54 +00:00
-
2024-10-01 07:02:29 +00:00
name : delete_configurations
in : query
description : 'Delete configurations.'
required : false
schema :
type : boolean
default : true
-
name : delete_volumes
in : query
description : 'Delete volumes.'
required : false
schema :
type : boolean
default : true
-
name : docker_cleanup
in : query
description : 'Run docker cleanup.'
required : false
schema :
type : boolean
default : true
-
name : delete_connected_networks
2024-07-11 10:38:54 +00:00
in : query
2024-10-01 07:02:29 +00:00
description : 'Delete connected networks.'
2024-07-11 10:38:54 +00:00
required : false
schema :
type : boolean
default : true
2024-07-09 11:19:21 +00:00
responses :
'200' :
description : 'Database deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Database deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
patch :
tags :
- Databases
summary : Update
description : 'Update database by UUID.'
2024-09-04 08:09:10 +00:00
operationId : update-database-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
properties :
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
postgres_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL user'
2024-07-09 11:19:21 +00:00
postgres_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL password'
2024-07-09 11:19:21 +00:00
postgres_db :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL database'
2024-07-09 11:19:21 +00:00
postgres_initdb_args :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL initdb args'
2024-07-09 11:19:21 +00:00
postgres_host_auth_method :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL host auth method'
2024-07-09 11:19:21 +00:00
postgres_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL conf'
2024-07-09 11:19:21 +00:00
clickhouse_admin_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'Clickhouse admin user'
2024-07-09 11:19:21 +00:00
clickhouse_admin_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'Clickhouse admin password'
2024-07-09 11:19:21 +00:00
dragonfly_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'DragonFly password'
2024-07-09 11:19:21 +00:00
redis_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'Redis password'
2024-07-09 11:19:21 +00:00
redis_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'Redis conf'
2024-07-09 11:19:21 +00:00
keydb_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'KeyDB password'
2024-07-09 11:19:21 +00:00
keydb_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'KeyDB conf'
2024-07-09 11:19:21 +00:00
mariadb_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB conf'
2024-07-09 11:19:21 +00:00
mariadb_root_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB root password'
2024-07-09 11:19:21 +00:00
mariadb_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB user'
2024-07-09 11:19:21 +00:00
mariadb_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB password'
2024-07-09 11:19:21 +00:00
mariadb_database :
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB database'
2024-07-09 11:19:21 +00:00
mongo_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'Mongo conf'
2024-07-09 11:19:21 +00:00
mongo_initdb_root_username :
type : string
2024-07-09 11:59:54 +00:00
description : 'Mongo initdb root username'
2024-07-09 11:19:21 +00:00
mongo_initdb_root_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'Mongo initdb root password'
2024-11-30 23:17:49 +00:00
mongo_initdb_database :
2024-07-09 11:19:21 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Mongo initdb init database'
2024-07-09 11:19:21 +00:00
mysql_root_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL root password'
2024-11-30 23:17:49 +00:00
mysql_password :
type : string
description : 'MySQL password'
2024-07-09 11:19:21 +00:00
mysql_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL user'
2024-07-09 11:19:21 +00:00
mysql_database :
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL database'
2024-07-09 11:19:21 +00:00
mysql_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL conf'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
2025-09-30 09:19:39 +00:00
'/databases/{uuid}/backups/{scheduled_backup_uuid}' :
delete :
tags :
- Databases
summary : 'Delete backup configuration'
description : 'Deletes a backup configuration and all its executions.'
operationId : delete-backup-configuration-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the database'
required : true
schema :
type : string
-
name : scheduled_backup_uuid
in : path
description : 'UUID of the backup configuration to delete'
required : true
schema :
type : string
-
name : delete_s3
in : query
description : 'Whether to delete all backup files from S3'
required : false
schema :
type : boolean
default : false
responses :
'200' :
description : 'Backup configuration deleted.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
message : { type: string, example : 'Backup configuration and all executions deleted.' }
2025-09-30 09:19:39 +00:00
type : object
'404' :
description : 'Backup configuration not found.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
message : { type: string, example : 'Backup configuration not found.' }
2025-09-30 09:19:39 +00:00
type : object
security :
-
bearerAuth : [ ]
patch :
tags :
- Databases
summary : Update
description : 'Update a specific backup configuration for a given database, identified by its UUID and the backup ID'
operationId : update-database-backup
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
-
name : scheduled_backup_uuid
in : path
description : 'UUID of the backup configuration.'
required : true
schema :
type : string
requestBody :
description : 'Database backup configuration data'
required : true
content :
application/json :
schema :
properties :
save_s3 :
type : boolean
description : 'Whether data is saved in s3 or not'
s3_storage_uuid :
type : string
description : 'S3 storage UUID'
backup_now :
type : boolean
description : 'Whether to take a backup now or not'
enabled :
type : boolean
description : 'Whether the backup is enabled or not'
databases_to_backup :
type : string
description : 'Comma separated list of databases to backup'
dump_all :
type : boolean
description : 'Whether all databases are dumped or not'
frequency :
type : string
description : 'Frequency of the backup'
database_backup_retention_amount_locally :
type : integer
description : 'Retention amount of the backup locally'
database_backup_retention_days_locally :
type : integer
description : 'Retention days of the backup locally'
database_backup_retention_max_storage_locally :
type : integer
description : 'Max storage of the backup locally'
database_backup_retention_amount_s3 :
type : integer
description : 'Retention amount of the backup in s3'
database_backup_retention_days_s3 :
type : integer
description : 'Retention days of the backup in s3'
database_backup_retention_max_storage_s3 :
type : integer
description : 'Max storage of the backup in S3'
type : object
responses :
'200' :
description : 'Database backup configuration updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2025-09-30 09:19:39 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
/databases/postgresql :
post :
tags :
- Databases
summary : 'Create (PostgreSQL)'
description : 'Create a new PostgreSQL database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-postgresql
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
postgres_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL user'
2024-07-09 11:19:21 +00:00
postgres_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL password'
2024-07-09 11:19:21 +00:00
postgres_db :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL database'
2024-07-09 11:19:21 +00:00
postgres_initdb_args :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL initdb args'
2024-07-09 11:19:21 +00:00
postgres_host_auth_method :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL host auth method'
2024-07-09 11:19:21 +00:00
postgres_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'PostgreSQL conf'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/clickhouse :
post :
tags :
- Databases
summary : 'Create (Clickhouse)'
description : 'Create a new Clickhouse database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-clickhouse
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
clickhouse_admin_user :
type : string
2024-07-09 11:59:54 +00:00
description : 'Clickhouse admin user'
2024-07-09 11:19:21 +00:00
clickhouse_admin_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'Clickhouse admin password'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/dragonfly :
post :
tags :
- Databases
summary : 'Create (DragonFly)'
description : 'Create a new DragonFly database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-dragonfly
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
dragonfly_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'DragonFly password'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/redis :
post :
tags :
- Databases
summary : 'Create (Redis)'
description : 'Create a new Redis database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-redis
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
redis_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'Redis password'
2024-07-09 11:19:21 +00:00
redis_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'Redis conf'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/keydb :
post :
tags :
- Databases
summary : 'Create (KeyDB)'
description : 'Create a new KeyDB database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-keydb
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
keydb_password :
type : string
2024-07-09 11:59:54 +00:00
description : 'KeyDB password'
2024-07-09 11:19:21 +00:00
keydb_conf :
type : string
2024-07-09 11:59:54 +00:00
description : 'KeyDB conf'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/mariadb :
2024-07-09 08:45:10 +00:00
post :
tags :
2024-07-09 11:19:21 +00:00
- Databases
summary : 'Create (MariaDB)'
description : 'Create a new MariaDB database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-mariadb
2024-07-09 08:45:10 +00:00
requestBody :
2024-07-09 11:19:21 +00:00
description : 'Database data'
2024-07-09 08:45:10 +00:00
required : true
content :
application/json :
schema :
required :
- server_uuid
2024-07-09 11:19:21 +00:00
- project_uuid
2024-07-09 08:45:10 +00:00
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 08:45:10 +00:00
properties :
2024-07-09 11:19:21 +00:00
server_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 08:45:10 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 08:45:10 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 08:45:10 +00:00
destination_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
mariadb_conf :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB conf'
2024-07-09 11:19:21 +00:00
mariadb_root_password :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB root password'
2024-07-09 11:19:21 +00:00
mariadb_user :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB user'
2024-07-09 11:19:21 +00:00
mariadb_password :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB password'
2024-07-09 11:19:21 +00:00
mariadb_database :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MariaDB database'
2024-07-09 11:19:21 +00:00
name :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/mysql :
post :
tags :
- Databases
summary : 'Create (MySQL)'
description : 'Create a new MySQL database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-mysql
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
2024-07-09 08:45:10 +00:00
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
mysql_root_password :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL root password'
2024-11-30 23:17:49 +00:00
mysql_password :
type : string
description : 'MySQL password'
2024-07-09 11:19:21 +00:00
mysql_user :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL user'
2024-07-09 11:19:21 +00:00
mysql_database :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL database'
2024-07-09 11:19:21 +00:00
mysql_conf :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MySQL conf'
2024-07-09 11:19:21 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
2024-07-09 08:45:10 +00:00
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 08:45:10 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 08:45:10 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 08:45:10 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 08:45:10 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 08:45:10 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 08:45:10 +00:00
limits_cpuset :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 08:45:10 +00:00
limits_cpu_shares :
2024-07-09 11:19:21 +00:00
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 11:19:21 +00:00
type : object
responses :
'200' :
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
/databases/mongodb :
post :
tags :
- Databases
summary : 'Create (MongoDB)'
description : 'Create a new MongoDB database.'
2024-09-04 08:09:10 +00:00
operationId : create-database-mongodb
2024-07-09 11:19:21 +00:00
requestBody :
description : 'Database data'
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:19:21 +00:00
properties :
server_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the server'
2024-07-09 11:19:21 +00:00
project_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the project'
2024-07-09 11:19:21 +00:00
environment_name :
2024-07-09 08:45:10 +00:00
type : string
2024-12-17 12:42:16 +00:00
description : 'Name of the environment. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'UUID of the environment. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:19:21 +00:00
destination_uuid :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'UUID of the destination if the server has multiple destinations'
2024-07-09 11:19:21 +00:00
mongo_conf :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MongoDB conf'
2024-07-09 11:19:21 +00:00
mongo_initdb_root_username :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'MongoDB initdb root username'
2024-07-09 11:19:21 +00:00
name :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Name of the database'
2024-07-09 11:19:21 +00:00
description :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Description of the database'
2024-07-09 11:19:21 +00:00
image :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker Image of the database'
2024-07-09 11:19:21 +00:00
is_public :
2024-07-09 08:45:10 +00:00
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Is the database public?'
2024-07-09 11:19:21 +00:00
public_port :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Public port of the database'
2024-07-09 11:19:21 +00:00
limits_memory :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swap :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit of the database'
2024-07-09 11:19:21 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness of the database'
2024-07-09 11:19:21 +00:00
limits_memory_reservation :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation of the database'
2024-07-09 11:19:21 +00:00
limits_cpus :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit of the database'
2024-07-09 11:19:21 +00:00
limits_cpuset :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU set of the database'
2024-07-09 11:19:21 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares of the database'
2024-07-09 11:19:21 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Instant deploy the database'
2024-07-09 08:45:10 +00:00
type : object
responses :
'200' :
2024-07-09 11:19:21 +00:00
description : 'Database updated'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:19:21 +00:00
security :
-
bearerAuth : [ ]
2025-09-30 09:19:39 +00:00
'/databases/{uuid}/backups/{scheduled_backup_uuid}/executions/{execution_uuid}' :
delete :
tags :
- Databases
summary : 'Delete backup execution'
description : 'Deletes a specific backup execution.'
operationId : delete-backup-execution-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the database'
required : true
schema :
type : string
-
name : scheduled_backup_uuid
in : path
description : 'UUID of the backup configuration'
required : true
schema :
type : string
-
name : execution_uuid
in : path
description : 'UUID of the backup execution to delete'
required : true
schema :
type : string
-
name : delete_s3
in : query
description : 'Whether to delete the backup from S3'
required : false
schema :
type : boolean
default : false
responses :
'200' :
description : 'Backup execution deleted.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
message : { type: string, example : 'Backup execution deleted.' }
2025-09-30 09:19:39 +00:00
type : object
'404' :
description : 'Backup execution not found.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
message : { type: string, example : 'Backup execution not found.' }
2025-09-30 09:19:39 +00:00
type : object
security :
-
bearerAuth : [ ]
'/databases/{uuid}/backups/{scheduled_backup_uuid}/executions' :
get :
tags :
- Databases
summary : 'List backup executions'
description : 'Get all executions for a specific backup configuration.'
operationId : list-backup-executions
parameters :
-
name : uuid
in : path
description : 'UUID of the database'
required : true
schema :
type : string
-
name : scheduled_backup_uuid
in : path
description : 'UUID of the backup configuration'
required : true
schema :
type : string
responses :
'200' :
description : 'List of backup executions'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
executions : { type: array, items : { properties : { uuid : { type: string }, filename : { type: string }, size : { type: integer }, created_at : { type: string }, message : { type: string }, status : { type: string } }, type : object } }
2025-09-30 09:19:39 +00:00
type : object
'404' :
description : 'Backup configuration not found.'
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
'/databases/{uuid}/start' :
get :
tags :
- Databases
summary : Start
description : 'Start database. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : start-database-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
responses :
'200' :
description : 'Start database.'
2024-07-09 08:45:10 +00:00
content :
application/json :
schema :
2024-07-09 11:19:21 +00:00
properties :
message : { type: string, example : 'Database starting request queued.' }
type : object
2024-07-09 08:45:10 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2024-07-09 11:19:21 +00:00
'404' :
$ref : '#/components/responses/404'
2024-07-09 08:45:10 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 11:19:21 +00:00
'/databases/{uuid}/stop' :
2024-07-09 08:45:10 +00:00
get :
tags :
2024-07-09 11:19:21 +00:00
- Databases
summary : Stop
description : 'Stop database. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : stop-database-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-07-09 11:19:21 +00:00
description : 'UUID of the database.'
2024-07-09 08:45:10 +00:00
required : true
schema :
type : string
responses :
'200' :
2024-07-09 11:19:21 +00:00
description : 'Stop database.'
2024-07-09 08:45:10 +00:00
content :
application/json :
schema :
2024-07-09 11:19:21 +00:00
properties :
message : { type: string, example : 'Database stopping request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/databases/{uuid}/restart' :
get :
tags :
- Databases
summary : Restart
description : 'Restart database. `Post` request is also accepted.'
2024-09-04 08:09:10 +00:00
operationId : restart-database-by-uuid
2024-07-09 11:19:21 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the database.'
required : true
schema :
type : string
responses :
'200' :
description : 'Restart database.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Database restaring request queued.' }
type : object
2024-07-09 08:45:10 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/deployments :
get :
tags :
- Deployments
summary : List
description : 'List currently running deployments'
2024-09-04 08:09:10 +00:00
operationId : list-deployments
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all currently running deployments.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/ApplicationDeploymentQueue'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
'/deployments/{uuid}' :
get :
tags :
- Deployments
summary : Get
description : 'Get deployment by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-deployment-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : 'Deployment UUID'
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get deployment by UUID.'
content :
application/json :
schema :
$ref : '#/components/schemas/ApplicationDeploymentQueue'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2025-10-20 11:57:43 +00:00
'/deployments/{uuid}/cancel' :
post :
tags :
- Deployments
summary : Cancel
description : 'Cancel a deployment by UUID.'
operationId : cancel-deployment-by-uuid
parameters :
-
name : uuid
in : path
description : 'Deployment UUID'
required : true
schema :
type : string
responses :
'200' :
description : 'Deployment cancelled successfully.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Deployment cancelled successfully.' }
deployment_uuid : { type: string, example : cm37r6cqj000008jm0veg5tkm }
status : { type: string, example : cancelled-by-user }
type : object
'400' :
description : 'Deployment cannot be cancelled (already finished/failed/cancelled).'
content :
application/json :
schema :
properties :
message : { type: string, example: 'Deployment cannot be cancelled. Current status : finished' }
type : object
'401' :
$ref : '#/components/responses/401'
'403' :
description : "User doesn't have permission to cancel this deployment."
content :
application/json :
schema :
properties :
message : { type: string, example : 'You do not have permission to cancel this deployment.' }
type : object
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
/deploy :
get :
tags :
- Deployments
summary : Deploy
2025-04-13 13:48:00 +00:00
description : 'Deploy by tag or uuid. `Post` request also accepted with `uuid` and `tag` json body.'
2024-09-04 08:09:10 +00:00
operationId : deploy-by-tag-or-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : tag
in : query
description : 'Tag name(s). Comma separated list is also accepted.'
schema :
type : string
-
name : uuid
in : query
description : 'Resource UUID(s). Comma separated list is also accepted.'
schema :
type : string
-
name : force
in : query
description : 'Force rebuild (without cache)'
schema :
type : boolean
2025-03-27 16:27:14 +00:00
-
name : pr
in : query
2025-03-31 15:38:54 +00:00
description : 'Pull Request Id for deploying specific PR builds. Cannot be used with tag parameter.'
2025-03-27 16:27:14 +00:00
schema :
type : integer
2024-07-09 08:45:10 +00:00
responses :
'200' :
2024-09-10 06:49:25 +00:00
description : "Get deployment(s) UUID's"
2024-07-09 08:45:10 +00:00
content :
application/json :
schema :
properties :
deployments : { type: array, items : { properties : { message : { type: string }, resource_uuid : { type: string }, deployment_uuid : { type: string } }, type : object } }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2025-03-31 15:38:54 +00:00
'/deployments/applications/{uuid}' :
get :
tags :
- Deployments
summary : 'List application deployments'
description : 'List application deployments by using the app uuid'
operationId : list-deployments-by-app-uuid
2025-04-09 16:52:12 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
-
name : skip
in : query
description : 'Number of records to skip.'
required : false
schema :
type : integer
default : 0
minimum : 0
-
name : take
in : query
description : 'Number of records to take.'
required : false
schema :
type : integer
default : 10
minimum : 1
2025-03-31 15:38:54 +00:00
responses :
'200' :
description : 'List application deployments by using the app uuid.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Application'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2025-09-30 09:19:39 +00:00
/github-apps :
2025-10-20 11:57:43 +00:00
get :
tags :
- 'GitHub Apps'
summary : List
description : 'List all GitHub apps.'
operationId : list-github-apps
responses :
'200' :
description : 'List of GitHub apps.'
content :
application/json :
schema :
type : array
items :
properties : { id : { type: integer }, uuid : { type: string }, name : { type: string }, organization : { type: string, nullable: true }, api_url : { type: string }, html_url : { type: string }, custom_user : { type: string }, custom_port : { type: integer }, app_id : { type: integer }, installation_id : { type: integer }, client_id : { type: string }, private_key_id : { type: integer }, is_system_wide : { type: boolean }, is_public : { type: boolean }, team_id : { type: integer }, type : { type : string } }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2025-09-30 09:19:39 +00:00
post :
tags :
- 'GitHub Apps'
summary : 'Create GitHub App'
description : 'Create a new GitHub app.'
operationId : create-github-app
requestBody :
description : 'GitHub app creation payload.'
required : true
content :
application/json :
schema :
required :
- name
- api_url
- html_url
- app_id
- installation_id
- client_id
- client_secret
- private_key_uuid
properties :
name :
type : string
description : 'Name of the GitHub app.'
organization :
type : string
nullable : true
description : 'Organization to associate the app with.'
api_url :
type : string
description : 'API URL for the GitHub app (e.g., https://api.github.com).'
html_url :
type : string
description : 'HTML URL for the GitHub app (e.g., https://github.com).'
custom_user :
type : string
description: 'Custom user for SSH access (default : git).'
custom_port :
type : integer
description: 'Custom port for SSH access (default : 22 ).'
app_id :
type : integer
description : 'GitHub App ID from GitHub.'
installation_id :
type : integer
description : 'GitHub Installation ID.'
client_id :
type : string
description : 'GitHub OAuth App Client ID.'
client_secret :
type : string
description : 'GitHub OAuth App Client Secret.'
webhook_secret :
type : string
description : 'Webhook secret for GitHub webhooks.'
private_key_uuid :
type : string
description : 'UUID of an existing private key for GitHub App authentication.'
is_system_wide :
type : boolean
description : 'Is this app system-wide (cloud only).'
type : object
responses :
'201' :
description : 'GitHub app created successfully.'
content :
application/json :
schema :
properties :
id : { type : integer }
uuid : { type : string }
name : { type : string }
organization : { type: string, nullable : true }
api_url : { type : string }
html_url : { type : string }
custom_user : { type : string }
custom_port : { type : integer }
app_id : { type : integer }
installation_id : { type : integer }
client_id : { type : string }
private_key_id : { type : integer }
is_system_wide : { type : boolean }
team_id : { type : integer }
type : object
'400' :
$ref : '#/components/responses/400'
'401' :
$ref : '#/components/responses/401'
'422' :
$ref : '#/components/responses/422'
security :
-
bearerAuth : [ ]
'/github-apps/{github_app_id}/repositories' :
get :
tags :
- 'GitHub Apps'
summary : 'Load Repositories for a GitHub App'
description : 'Fetch repositories from GitHub for a given GitHub app.'
operationId : load-repositories
parameters :
-
name : github_app_id
in : path
description : 'GitHub App ID'
required : true
schema :
type : integer
responses :
'200' :
description : 'Repositories loaded successfully.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
repositories : { type: array, items : { type : object } }
2025-09-30 09:19:39 +00:00
type : object
'400' :
$ref : '#/components/responses/400'
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/github-apps/{github_app_id}/repositories/{owner}/{repo}/branches' :
get :
tags :
- 'GitHub Apps'
summary : 'Load Branches for a GitHub Repository'
description : 'Fetch branches from GitHub for a given repository.'
operationId : load-branches
parameters :
-
name : github_app_id
in : path
description : 'GitHub App ID'
required : true
schema :
type : integer
-
name : owner
in : path
description : 'Repository owner'
required : true
schema :
type : string
-
name : repo
in : path
description : 'Repository name'
required : true
schema :
type : string
responses :
'200' :
description : 'Branches loaded successfully.'
content :
application/json :
schema :
properties :
2025-10-12 12:20:45 +00:00
branches : { type: array, items : { type : object } }
2025-09-30 09:19:39 +00:00
type : object
'400' :
$ref : '#/components/responses/400'
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/github-apps/{github_app_id}' :
delete :
tags :
- 'GitHub Apps'
summary : 'Delete GitHub App'
description : "Delete a GitHub app if it's not being used by any applications."
operationId : deleteGithubApp
parameters :
-
name : github_app_id
in : path
description : 'GitHub App ID'
required : true
schema :
type : integer
responses :
'200' :
description : 'GitHub app deleted successfully'
content :
application/json :
schema :
properties :
message : { type: string, example : 'GitHub app deleted successfully' }
type : object
'401' :
description : Unauthorized
'404' :
description : 'GitHub app not found'
'409' :
description : 'Conflict - GitHub app is in use'
content :
application/json :
schema :
properties :
message : { type: string, example : 'This GitHub app is being used by 5 application(s). Please delete all applications first.' }
type : object
security :
-
bearerAuth : [ ]
patch :
tags :
- 'GitHub Apps'
summary : 'Update GitHub App'
description : 'Update an existing GitHub app.'
operationId : updateGithubApp
parameters :
-
name : github_app_id
in : path
description : 'GitHub App ID'
required : true
schema :
type : integer
requestBody :
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'GitHub App name'
organization :
type : string
nullable : true
description : 'GitHub organization'
api_url :
type : string
description : 'GitHub API URL'
html_url :
type : string
description : 'GitHub HTML URL'
custom_user :
type : string
description : 'Custom user for SSH'
custom_port :
type : integer
description : 'Custom port for SSH'
app_id :
type : integer
description : 'GitHub App ID'
installation_id :
type : integer
description : 'GitHub Installation ID'
client_id :
type : string
description : 'GitHub Client ID'
client_secret :
type : string
description : 'GitHub Client Secret'
webhook_secret :
type : string
description : 'GitHub Webhook Secret'
private_key_uuid :
type : string
description : 'Private key UUID'
is_system_wide :
type : boolean
description : 'Is system wide (non-cloud instances only)'
type : object
responses :
'200' :
description : 'GitHub app updated successfully'
content :
application/json :
schema :
properties :
message : { type: string, example : 'GitHub app updated successfully' }
data : { type: object, description : 'Updated GitHub app data' }
type : object
'401' :
description : Unauthorized
'404' :
description : 'GitHub app not found'
'422' :
2025-10-12 12:20:45 +00:00
$ref : '#/components/responses/422'
2025-09-30 09:19:39 +00:00
security :
-
bearerAuth : [ ]
2025-12-11 08:41:54 +00:00
/hetzner/locations :
get :
tags :
- Hetzner
summary : 'Get Hetzner Locations'
description : 'Get all available Hetzner datacenter locations.'
operationId : get-hetzner-locations
parameters :
2025-12-11 11:08:12 +00:00
-
name : cloud_provider_token_uuid
in : query
description : 'Cloud provider token UUID. Required if cloud_provider_token_id is not provided.'
required : false
schema :
type : string
2025-12-11 08:41:54 +00:00
-
name : cloud_provider_token_id
in : query
2025-12-11 11:08:12 +00:00
description: 'Deprecated : Use cloud_provider_token_uuid instead. Cloud provider token UUID.'
required : false
deprecated : true
2025-12-11 08:41:54 +00:00
schema :
type : string
responses :
'200' :
description : 'List of Hetzner locations.'
content :
application/json :
schema :
type : array
items :
properties : { id : { type: integer }, name : { type: string }, description : { type: string }, country : { type: string }, city : { type: string }, latitude : { type: number }, longitude : { type : number } }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/hetzner/server-types :
get :
tags :
- Hetzner
summary : 'Get Hetzner Server Types'
description : 'Get all available Hetzner server types (instance sizes).'
operationId : get-hetzner-server-types
parameters :
2025-12-11 11:08:12 +00:00
-
name : cloud_provider_token_uuid
in : query
description : 'Cloud provider token UUID. Required if cloud_provider_token_id is not provided.'
required : false
schema :
type : string
2025-12-11 08:41:54 +00:00
-
name : cloud_provider_token_id
in : query
2025-12-11 11:08:12 +00:00
description: 'Deprecated : Use cloud_provider_token_uuid instead. Cloud provider token UUID.'
required : false
deprecated : true
2025-12-11 08:41:54 +00:00
schema :
type : string
responses :
'200' :
description : 'List of Hetzner server types.'
content :
application/json :
schema :
type : array
items :
2025-12-11 11:08:12 +00:00
properties : { id : { type: integer }, name : { type: string }, description : { type: string }, cores : { type: integer }, memory : { type: number }, disk : { type: integer }, prices : { type: array, items : { type: object, properties : { location : { type: string, description: 'Datacenter location name' }, price_hourly : { type: object, properties : { net : { type: string }, gross : { type: string } } }, price_monthly : { type: object, properties : { net : { type: string }, gross : { type : string } } } } } } }
2025-12-11 08:41:54 +00:00
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/hetzner/images :
get :
tags :
- Hetzner
summary : 'Get Hetzner Images'
description : 'Get all available Hetzner system images (operating systems).'
operationId : get-hetzner-images
parameters :
2025-12-11 11:12:43 +00:00
-
name : cloud_provider_token_uuid
in : query
description : 'Cloud provider token UUID. Required if cloud_provider_token_id is not provided.'
required : false
schema :
type : string
2025-12-11 08:41:54 +00:00
-
name : cloud_provider_token_id
in : query
2025-12-11 11:12:43 +00:00
description: 'Deprecated : Use cloud_provider_token_uuid instead. Cloud provider token UUID.'
required : false
deprecated : true
2025-12-11 08:41:54 +00:00
schema :
type : string
responses :
'200' :
description : 'List of Hetzner images.'
content :
application/json :
schema :
type : array
items :
properties : { id : { type: integer }, name : { type: string }, description : { type: string }, type : { type: string }, os_flavor : { type: string }, os_version : { type: string }, architecture : { type : string } }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/hetzner/ssh-keys :
get :
tags :
- Hetzner
summary : 'Get Hetzner SSH Keys'
description : 'Get all SSH keys stored in the Hetzner account.'
operationId : get-hetzner-ssh-keys
parameters :
2025-12-11 11:12:43 +00:00
-
name : cloud_provider_token_uuid
in : query
description : 'Cloud provider token UUID. Required if cloud_provider_token_id is not provided.'
required : false
schema :
type : string
2025-12-11 08:41:54 +00:00
-
name : cloud_provider_token_id
in : query
2025-12-11 11:12:43 +00:00
description: 'Deprecated : Use cloud_provider_token_uuid instead. Cloud provider token UUID.'
required : false
deprecated : true
2025-12-11 08:41:54 +00:00
schema :
type : string
responses :
'200' :
description : 'List of Hetzner SSH keys.'
content :
application/json :
schema :
type : array
items :
properties : { id : { type: integer }, name : { type: string }, fingerprint : { type: string }, public_key : { type : string } }
type : object
'401' :
$ref : '#/components/responses/401'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/servers/hetzner :
post :
tags :
- Hetzner
summary : 'Create Hetzner Server'
description : 'Create a new server on Hetzner and register it in Coolify.'
operationId : create-hetzner-server
requestBody :
description : 'Hetzner server creation parameters'
required : true
content :
application/json :
schema :
required :
- location
- server_type
- image
- private_key_uuid
properties :
2025-12-11 11:12:43 +00:00
cloud_provider_token_uuid :
type : string
example : abc123
description : 'Cloud provider token UUID. Required if cloud_provider_token_id is not provided.'
2025-12-11 08:41:54 +00:00
cloud_provider_token_id :
type : string
example : abc123
2025-12-11 11:12:43 +00:00
description: 'Deprecated : Use cloud_provider_token_uuid instead. Cloud provider token UUID.'
deprecated : true
2025-12-11 08:41:54 +00:00
location :
type : string
example : nbg1
description : 'Hetzner location name'
server_type :
type : string
example : cx11
description : 'Hetzner server type name'
image :
type : integer
example : 15512617
description : 'Hetzner image ID'
name :
type : string
example : my-server
description : 'Server name (auto-generated if not provided)'
private_key_uuid :
type : string
example : xyz789
description : 'Private key UUID'
enable_ipv4 :
type : boolean
example : true
description: 'Enable IPv4 (default : true )'
enable_ipv6 :
type : boolean
example : true
description: 'Enable IPv6 (default : true )'
hetzner_ssh_key_ids :
type : array
items : { type : integer }
description : 'Additional Hetzner SSH key IDs'
cloud_init_script :
type : string
description : 'Cloud-init YAML script (optional)'
instant_validate :
type : boolean
example : false
description : 'Validate server immediately after creation'
type : object
responses :
'201' :
description : 'Hetzner server created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example: og888os, description : 'The UUID of the server.' }
hetzner_server_id : { type: integer, description : 'The Hetzner server ID.' }
ip : { type: string, description : 'The server IP address.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
'422' :
$ref : '#/components/responses/422'
2025-12-11 11:08:12 +00:00
'429' :
$ref : '#/components/responses/429'
2025-12-11 08:41:54 +00:00
security :
-
bearerAuth : [ ]
2024-07-06 12:34:15 +00:00
/version :
get :
summary : Version
description : 'Get Coolify version.'
2024-09-04 08:09:10 +00:00
operationId : version
2024-07-06 12:34:15 +00:00
responses :
'200' :
description : 'Returns the version of the application'
content :
2025-10-12 12:20:45 +00:00
text/html :
2024-07-06 12:34:15 +00:00
schema :
type : string
example : v4.0.0
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
/enable :
get :
summary : 'Enable API'
description : 'Enable API (only with root permissions).'
2024-09-04 08:09:10 +00:00
operationId : enable-api
2024-07-06 12:34:15 +00:00
responses :
'200' :
description : 'Enable API.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'API enabled.' }
type : object
'403' :
description : 'You are not allowed to enable the API.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'You are not allowed to enable the API.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
/disable :
get :
summary : 'Disable API'
description : 'Disable API (only with root permissions).'
2024-09-04 08:09:10 +00:00
operationId : disable-api
2024-07-06 12:34:15 +00:00
responses :
'200' :
description : 'Disable API.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'API disabled.' }
type : object
'403' :
description : 'You are not allowed to disable the API.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'You are not allowed to disable the API.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-10-19 10:57:29 +00:00
/health :
2024-07-06 12:34:15 +00:00
get :
summary : Healthcheck
description : 'Healthcheck endpoint.'
2024-09-04 08:09:10 +00:00
operationId : healthcheck
2024-07-06 12:34:15 +00:00
responses :
'200' :
description : 'Healthcheck endpoint.'
content :
2025-10-12 12:20:45 +00:00
text/html :
2024-07-06 12:34:15 +00:00
schema :
type : string
example : OK
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2024-07-09 08:45:10 +00:00
/projects :
get :
tags :
- Projects
summary : List
2024-09-10 06:49:25 +00:00
description : 'List projects.'
2024-09-04 08:09:10 +00:00
operationId : list-projects
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all projects.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Project'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-07-23 09:36:05 +00:00
post :
tags :
- Projects
2024-07-23 12:36:44 +00:00
summary : Create
2024-07-23 09:36:05 +00:00
description : 'Create Project.'
2024-09-04 08:09:10 +00:00
operationId : create-project
2024-07-23 09:36:05 +00:00
requestBody :
description : 'Project created.'
required : true
content :
application/json :
schema :
properties :
2024-09-02 09:05:58 +00:00
name :
2024-07-23 09:36:05 +00:00
type : string
description : 'The name of the project.'
description :
type : string
description : 'The description of the project.'
type : object
responses :
'201' :
description : 'Project created.'
content :
application/json :
schema :
properties :
2024-07-23 12:20:53 +00:00
uuid : { type: string, example: og888os, description : 'The UUID of the project.' }
2024-07-23 09:36:05 +00:00
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 09:36:05 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
'/projects/{uuid}' :
get :
tags :
- Projects
summary : Get
2024-09-10 06:49:25 +00:00
description : 'Get project by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-project-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
description : 'Project UUID'
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Project details'
content :
application/json :
schema :
$ref : '#/components/schemas/Project'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
description : 'Project not found.'
security :
-
bearerAuth : [ ]
2024-07-23 09:36:05 +00:00
delete :
tags :
- Projects
summary : Delete
description : 'Delete project by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-project-by-uuid
2024-07-23 09:36:05 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the application.'
required : true
schema :
type : string
responses :
'200' :
description : 'Project deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Project deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 09:48:38 +00:00
security :
-
bearerAuth : [ ]
patch :
tags :
- Projects
2024-07-23 12:36:44 +00:00
summary : Update
2024-07-23 09:48:38 +00:00
description : 'Update Project.'
2024-09-04 08:09:10 +00:00
operationId : update-project-by-uuid
2025-04-09 16:52:12 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the project.'
required : true
schema :
type : string
2024-07-23 09:48:38 +00:00
requestBody :
description : 'Project updated.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'The name of the project.'
description :
type : string
description : 'The description of the project.'
type : object
responses :
'201' :
description : 'Project updated.'
content :
application/json :
schema :
properties :
uuid : { type: string, example : og888os }
name : { type: string, example : 'Project Name' }
description : { type: string, example : 'Project Description' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 09:36:05 +00:00
security :
-
bearerAuth : [ ]
2024-12-17 12:42:16 +00:00
'/projects/{uuid}/{environment_name_or_uuid}' :
2024-07-09 08:45:10 +00:00
get :
tags :
- Projects
summary : Environment
2024-12-17 12:42:16 +00:00
description : 'Get environment by name or UUID.'
operationId : get-environment-by-name-or-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
description : 'Project UUID'
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
-
2024-12-17 12:42:16 +00:00
name : environment_name_or_uuid
2024-07-09 08:45:10 +00:00
in : path
2024-12-17 12:42:16 +00:00
description : 'Environment name or UUID'
2024-07-09 08:45:10 +00:00
required : true
schema :
type : string
responses :
'200' :
2024-11-12 09:27:36 +00:00
description : 'Environment details'
2024-07-09 08:45:10 +00:00
content :
application/json :
schema :
$ref : '#/components/schemas/Environment'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 08:45:10 +00:00
security :
-
bearerAuth : [ ]
2025-08-28 09:21:30 +00:00
'/projects/{uuid}/environments' :
get :
tags :
- Projects
summary : 'List Environments'
description : 'List all environments in a project.'
operationId : get-environments
parameters :
-
name : uuid
in : path
description : 'Project UUID'
required : true
schema :
type : string
responses :
'200' :
description : 'List of environments'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Environment'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
description : 'Project not found.'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2025-08-28 09:21:30 +00:00
security :
-
bearerAuth : [ ]
post :
tags :
- Projects
summary : 'Create Environment'
description : 'Create environment in project.'
operationId : create-environment
parameters :
-
name : uuid
in : path
description : 'Project UUID'
required : true
schema :
type : string
requestBody :
description : 'Environment created.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'The name of the environment.'
type : object
responses :
'201' :
description : 'Environment created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example: env123, description : 'The UUID of the environment.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
description : 'Project not found.'
'409' :
description : 'Environment with this name already exists.'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2025-08-28 09:21:30 +00:00
security :
-
bearerAuth : [ ]
'/projects/{uuid}/environments/{environment_name_or_uuid}' :
delete :
tags :
- Projects
summary : 'Delete Environment'
description : 'Delete environment by name or UUID. Environment must be empty.'
operationId : delete-environment
parameters :
-
name : uuid
in : path
description : 'Project UUID'
required : true
schema :
type : string
-
name : environment_name_or_uuid
in : path
description : 'Environment name or UUID'
required : true
schema :
type : string
responses :
'200' :
description : 'Environment deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
description : 'Environment has resources, so it cannot be deleted.'
'404' :
description : 'Project or environment not found.'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2025-08-28 09:21:30 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
/resources :
get :
tags :
- Resources
summary : List
description : 'Get all resources.'
2024-09-04 08:09:10 +00:00
operationId : list-resources
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all resources'
content :
application/json :
schema :
type : string
example : 'Content is very complex. Will be implemented later.'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
/security/keys :
get :
tags :
- 'Private Keys'
summary : List
description : 'List all private keys.'
2024-09-04 08:09:10 +00:00
operationId : list-private-keys
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all private keys.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/PrivateKey'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
post :
tags :
- 'Private Keys'
summary : Create
description : 'Create a new private key.'
2024-09-04 08:09:10 +00:00
operationId : create-private-key
2024-07-09 08:45:10 +00:00
requestBody :
required : true
content :
application/json :
schema :
required :
- private_key
properties :
name :
type : string
description :
type : string
private_key :
type : string
type : object
additionalProperties : false
responses :
'201' :
description : "The created private key's UUID."
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 08:45:10 +00:00
security :
-
bearerAuth : [ ]
patch :
tags :
- 'Private Keys'
summary : Update
description : 'Update a private key.'
2024-09-04 08:09:10 +00:00
operationId : update-private-key
2024-07-09 08:45:10 +00:00
requestBody :
required : true
content :
application/json :
schema :
required :
- private_key
properties :
name :
type : string
description :
type : string
private_key :
type : string
type : object
additionalProperties : false
responses :
'201' :
description : "The updated private key's UUID."
content :
application/json :
schema :
properties :
uuid : { type : string }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 08:45:10 +00:00
security :
-
bearerAuth : [ ]
'/security/keys/{uuid}' :
get :
tags :
- 'Private Keys'
summary : Get
description : 'Get key by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-private-key-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : 'Private Key UUID'
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all private keys.'
content :
application/json :
schema :
2024-11-03 12:41:14 +00:00
$ref : '#/components/schemas/PrivateKey'
2024-07-09 08:45:10 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
description : 'Private Key not found.'
security :
-
bearerAuth : [ ]
delete :
tags :
- 'Private Keys'
summary : Delete
description : 'Delete a private key.'
2024-09-04 08:09:10 +00:00
operationId : delete-private-key-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : 'Private Key UUID'
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Private Key deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Private Key deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
description : 'Private Key not found.'
2025-04-09 16:52:12 +00:00
'422' :
description : 'Private Key is in use and cannot be deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Private Key is in use and cannot be deleted.' }
type : object
2024-07-09 08:45:10 +00:00
security :
-
bearerAuth : [ ]
/servers :
get :
tags :
- Servers
summary : List
description : 'List all servers.'
2024-09-04 08:09:10 +00:00
operationId : list-servers
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get all servers.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Server'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-07-23 12:20:53 +00:00
post :
tags :
- Servers
2024-07-23 12:36:44 +00:00
summary : Create
2024-07-23 12:20:53 +00:00
description : 'Create Server.'
2024-09-04 08:09:10 +00:00
operationId : create-server
2024-07-23 12:20:53 +00:00
requestBody :
description : 'Server created.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
example : 'My Server'
description : 'The name of the server.'
description :
type : string
example : 'My Server Description'
description : 'The description of the server.'
ip :
type : string
example : 127.0 .0 .1
description : 'The IP of the server.'
port :
type : integer
example : 22
description : 'The port of the server.'
user :
type : string
example : root
description : 'The user of the server.'
private_key_uuid :
type : string
example : og888os
description : 'The UUID of the private key.'
is_build_server :
type : boolean
example : false
description : 'Is build server.'
instant_validate :
type : boolean
example : false
description : 'Instant validate.'
2024-11-12 13:30:05 +00:00
proxy_type :
type : string
enum : [ traefik, caddy, none]
example : traefik
description : 'The proxy type.'
2024-07-23 12:20:53 +00:00
type : object
responses :
'201' :
description : 'Server created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example: og888os, description : 'The UUID of the server.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 12:20:53 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
'/servers/{uuid}' :
get :
tags :
- Servers
summary : Get
description : 'Get server by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-server-by-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : "Server's UUID"
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get server by UUID'
content :
application/json :
schema :
$ref : '#/components/schemas/Server'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-23 12:20:53 +00:00
delete :
tags :
- Servers
summary : Delete
description : 'Delete server by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-server-by-uuid
2024-07-23 12:20:53 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the server.'
required : true
schema :
type : string
responses :
'200' :
description : 'Server deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Server deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 12:20:53 +00:00
security :
-
bearerAuth : [ ]
patch :
tags :
- Servers
2024-07-23 12:36:44 +00:00
summary : Update
2024-07-23 12:20:53 +00:00
description : 'Update Server.'
2024-09-04 08:09:10 +00:00
operationId : update-server-by-uuid
2024-11-23 01:40:22 +00:00
parameters :
-
name : uuid
in : path
description : 'Server UUID'
required : true
schema :
type : string
2024-07-23 12:20:53 +00:00
requestBody :
description : 'Server updated.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'The name of the server.'
description :
type : string
description : 'The description of the server.'
ip :
type : string
description : 'The IP of the server.'
port :
type : integer
description : 'The port of the server.'
user :
type : string
description : 'The user of the server.'
private_key_uuid :
type : string
description : 'The UUID of the private key.'
is_build_server :
type : boolean
description : 'Is build server.'
instant_validate :
type : boolean
description : 'Instant validate.'
2024-11-12 13:30:05 +00:00
proxy_type :
type : string
enum : [ traefik, caddy, none]
description : 'The proxy type.'
2024-07-23 12:20:53 +00:00
type : object
responses :
'201' :
description : 'Server updated.'
content :
application/json :
schema :
2024-11-23 01:17:38 +00:00
$ref : '#/components/schemas/Server'
2024-07-23 12:20:53 +00:00
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 12:20:53 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
'/servers/{uuid}/resources' :
get :
tags :
- Servers
summary : Resources
description : 'Get resources by server.'
2024-09-04 08:09:10 +00:00
operationId : get-resources-by-server-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : "Server's UUID"
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get resources by server'
content :
application/json :
schema :
type : array
items :
properties : { id : { type: integer }, uuid : { type: string }, name : { type: string }, type : { type: string }, created_at : { type: string }, updated_at : { type: string }, status : { type : string } }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
'/servers/{uuid}/domains' :
get :
tags :
- Servers
summary : Domains
description : 'Get domains by server.'
2024-09-04 08:09:10 +00:00
operationId : get-domains-by-server-uuid
2024-07-09 08:45:10 +00:00
parameters :
-
name : uuid
in : path
2024-09-10 06:49:25 +00:00
description : "Server's UUID"
2024-07-09 08:45:10 +00:00
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Get domains by server'
content :
application/json :
schema :
type : array
items :
properties : { ip : { type: string }, domains : { type: array, items : { type : string } } }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2024-07-06 12:34:15 +00:00
security :
-
bearerAuth : [ ]
2024-07-23 12:20:53 +00:00
'/servers/{uuid}/validate' :
get :
tags :
- Servers
summary : Validate
description : 'Validate server by UUID.'
2024-09-04 08:09:10 +00:00
operationId : validate-server-by-uuid
2024-07-23 12:20:53 +00:00
parameters :
-
name : uuid
in : path
description : 'Server UUID'
required : true
schema :
2024-07-24 19:10:32 +00:00
type : string
2024-07-23 12:20:53 +00:00
responses :
'201' :
description : 'Server validation started.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Validation started.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-23 12:20:53 +00:00
security :
-
bearerAuth : [ ]
2024-07-09 11:30:13 +00:00
/services :
get :
tags :
- Services
summary : List
description : 'List all services.'
2024-09-04 08:09:10 +00:00
operationId : list-services
2024-07-09 11:30:13 +00:00
responses :
'200' :
description : 'Get all services'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Service'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
post :
tags :
- Services
2025-03-31 15:38:54 +00:00
summary : 'Create service'
description : 'Create a one-click / custom service'
2024-09-04 08:09:10 +00:00
operationId : create-service
2024-07-09 11:30:13 +00:00
requestBody :
required : true
content :
application/json :
schema :
required :
- server_uuid
- project_uuid
- environment_name
2024-12-17 12:42:16 +00:00
- environment_uuid
2024-07-09 11:30:13 +00:00
properties :
type :
2024-07-09 11:59:54 +00:00
description : 'The one-click service type'
2024-07-09 11:30:13 +00:00
type : string
enum : [ activepieces, appsmith, appwrite, authentik, babybuddy, budge, changedetection, chatwoot, classicpress-with-mariadb, classicpress-with-mysql, classicpress-without-database, cloudflared, code-server, dashboard, directus, directus-with-postgresql, docker-registry, docuseal, docuseal-with-postgres, dokuwiki, duplicati, emby, embystat, fider, filebrowser, firefly, formbricks, ghost, gitea, gitea-with-mariadb, gitea-with-mysql, gitea-with-postgresql, glance, glances, glitchtip, grafana, grafana-with-postgresql, grocy, heimdall, homepage, jellyfin, kuzzle, listmonk, logto, mediawiki, meilisearch, metabase, metube, minio, moodle, n8n, n8n-with-postgresql, next-image-transformation, nextcloud, nocodb, odoo, openblocks, pairdrop, penpot, phpmyadmin, pocketbase, posthog, reactive-resume, rocketchat, shlink, slash, snapdrop, statusnook, stirling-pdf, supabase, syncthing, tolgee, trigger, trigger-with-external-database, twenty, umami, unleash-with-postgresql, unleash-without-database, uptime-kuma, vaultwarden, vikunja, weblate, whoogle, wordpress-with-mariadb, wordpress-with-mysql, wordpress-without-database]
2024-07-09 11:59:54 +00:00
name :
2024-07-09 11:30:13 +00:00
type : string
2024-07-09 11:59:54 +00:00
maxLength : 255
description : 'Name of the service.'
description :
type : string
nullable : true
description : 'Description of the service.'
2024-07-09 11:30:13 +00:00
project_uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'Project UUID.'
2024-07-09 11:30:13 +00:00
environment_name :
type : string
2024-12-17 12:42:16 +00:00
description : 'Environment name. You need to provide at least one of environment_name or environment_uuid.'
environment_uuid :
type : string
description : 'Environment UUID. You need to provide at least one of environment_name or environment_uuid.'
2024-07-09 11:59:54 +00:00
server_uuid :
2024-07-09 11:30:13 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Server UUID.'
destination_uuid :
2024-07-09 11:30:13 +00:00
type : string
2024-07-09 11:59:54 +00:00
description : 'Destination UUID. Required if server has multiple destinations.'
2024-07-09 11:30:13 +00:00
instant_deploy :
type : boolean
2024-07-09 11:59:54 +00:00
default : false
description : 'Start the service immediately after creation.'
2025-04-03 14:02:59 +00:00
docker_compose_raw :
type : string
description : 'The Docker Compose raw content.'
2024-07-09 11:30:13 +00:00
type : object
responses :
'201' :
2025-03-19 08:22:34 +00:00
description : 'Service created successfully.'
2024-07-09 11:30:13 +00:00
content :
application/json :
schema :
properties :
2024-07-09 11:59:54 +00:00
uuid : { type: string, description : 'Service UUID.' }
domains : { type: array, items : { type: string }, description : 'Service domains.' }
2024-07-09 11:30:13 +00:00
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-07-09 11:30:13 +00:00
security :
-
bearerAuth : [ ]
'/services/{uuid}' :
get :
tags :
- Services
summary : Get
description : 'Get service by UUID.'
2024-09-04 08:09:10 +00:00
operationId : get-service-by-uuid
2024-07-09 11:30:13 +00:00
parameters :
-
name : uuid
in : path
description : 'Service UUID'
required : true
schema :
type : string
responses :
'200' :
2024-09-10 06:49:25 +00:00
description : 'Get a service by UUID.'
2024-07-09 11:30:13 +00:00
content :
application/json :
schema :
$ref : '#/components/schemas/Service'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
delete :
tags :
- Services
summary : Delete
description : 'Delete service by UUID.'
2024-09-04 08:09:10 +00:00
operationId : delete-service-by-uuid
2024-07-09 11:30:13 +00:00
parameters :
-
name : uuid
in : path
description : 'Service UUID'
required : true
schema :
type : string
2024-10-01 07:02:29 +00:00
-
name : delete_configurations
in : query
description : 'Delete configurations.'
required : false
schema :
type : boolean
default : true
-
name : delete_volumes
in : query
description : 'Delete volumes.'
required : false
schema :
type : boolean
default : true
-
name : docker_cleanup
in : query
description : 'Run docker cleanup.'
required : false
schema :
type : boolean
default : true
-
name : delete_connected_networks
in : query
description : 'Delete connected networks.'
required : false
schema :
type : boolean
default : true
2024-07-09 11:30:13 +00:00
responses :
'200' :
2024-09-10 06:49:25 +00:00
description : 'Delete a service by UUID'
2024-07-09 11:30:13 +00:00
content :
application/json :
schema :
properties :
message : { type: string, example : 'Service deletion request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2025-03-20 06:28:28 +00:00
patch :
tags :
- Services
summary : Update
description : 'Update service by UUID.'
operationId : update-service-by-uuid
2025-04-09 16:52:12 +00:00
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
2025-03-20 06:28:28 +00:00
requestBody :
description : 'Service updated.'
required : true
content :
application/json :
schema :
properties :
name :
type : string
description : 'The service name.'
description :
type : string
description : 'The service description.'
project_uuid :
type : string
description : 'The project UUID.'
environment_name :
type : string
description : 'The environment name.'
environment_uuid :
type : string
description : 'The environment UUID.'
server_uuid :
type : string
description : 'The server UUID.'
destination_uuid :
type : string
description : 'The destination UUID.'
instant_deploy :
type : boolean
description : 'The flag to indicate if the service should be deployed instantly.'
connect_to_docker_network :
type : boolean
default : false
2025-03-31 15:38:54 +00:00
description : 'Connect the service to the predefined docker network.'
2025-03-20 06:28:28 +00:00
docker_compose_raw :
type : string
description : 'The Docker Compose raw content.'
type : object
responses :
'200' :
description : 'Service updated.'
content :
application/json :
schema :
properties :
uuid : { type: string, description : 'Service UUID.' }
domains : { type: array, items : { type: string }, description : 'Service domains.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2025-03-20 06:28:28 +00:00
security :
-
bearerAuth : [ ]
2024-09-05 20:36:19 +00:00
'/services/{uuid}/envs' :
get :
tags :
- Services
summary : 'List Envs'
description : 'List all envs by service UUID.'
operationId : list-envs-by-service-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
responses :
'200' :
description : 'All environment variables by service UUID.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/EnvironmentVariable'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
post :
tags :
- Services
summary : 'Create Env'
description : 'Create env by service UUID.'
operationId : create-env-by-service-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
requestBody :
description : 'Env created.'
required : true
content :
application/json :
schema :
properties :
key :
type : string
description : 'The key of the environment variable.'
value :
type : string
description : 'The value of the environment variable.'
is_preview :
type : boolean
description : 'The flag to indicate if the environment variable is used in preview deployments.'
is_literal :
type : boolean
description : 'The flag to indicate if the environment variable is a literal, nothing espaced.'
is_multiline :
type : boolean
description : 'The flag to indicate if the environment variable is multiline.'
is_shown_once :
type : boolean
description : "The flag to indicate if the environment variable's value is shown on the UI."
type : object
responses :
'201' :
description : 'Environment variable created.'
content :
application/json :
schema :
properties :
uuid : { type: string, example : nc0k04gk8g0cgsk440g0koko }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-09-05 20:36:19 +00:00
security :
-
bearerAuth : [ ]
patch :
tags :
- Services
summary : 'Update Env'
description : 'Update env by service UUID.'
operationId : update-env-by-service-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
requestBody :
description : 'Env updated.'
required : true
content :
application/json :
schema :
required :
- key
- value
properties :
key :
type : string
description : 'The key of the environment variable.'
value :
type : string
description : 'The value of the environment variable.'
is_preview :
type : boolean
description : 'The flag to indicate if the environment variable is used in preview deployments.'
is_literal :
type : boolean
description : 'The flag to indicate if the environment variable is a literal, nothing espaced.'
is_multiline :
type : boolean
description : 'The flag to indicate if the environment variable is multiline.'
is_shown_once :
type : boolean
description : "The flag to indicate if the environment variable's value is shown on the UI."
type : object
responses :
'201' :
description : 'Environment variable updated.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment variable updated.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-09-05 20:36:19 +00:00
security :
-
bearerAuth : [ ]
'/services/{uuid}/envs/bulk' :
patch :
tags :
- Services
summary : 'Update Envs (Bulk)'
description : 'Update multiple envs by service UUID.'
operationId : update-envs-by-service-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
requestBody :
description : 'Bulk envs updated.'
required : true
content :
application/json :
schema :
required :
- data
properties :
data :
type : array
2025-09-11 14:48:00 +00:00
items : { properties : { key : { type: string, description: 'The key of the environment variable.' }, value : { type: string, description: 'The value of the environment variable.' }, is_preview : { type: boolean, description: 'The flag to indicate if the environment variable is used in preview deployments.' }, is_literal : { type: boolean, description: 'The flag to indicate if the environment variable is a literal, nothing espaced.' }, is_multiline : { type: boolean, description: 'The flag to indicate if the environment variable is multiline.' }, is_shown_once : { type: boolean, description : "The flag to indicate if the environment variable's value is shown on the UI." } }, type : object }
2024-09-05 20:36:19 +00:00
type : object
responses :
'201' :
description : 'Environment variables updated.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment variables updated.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
2025-10-12 12:20:45 +00:00
'422' :
$ref : '#/components/responses/422'
2024-09-05 20:36:19 +00:00
security :
-
bearerAuth : [ ]
'/services/{uuid}/envs/{env_uuid}' :
delete :
tags :
- Services
summary : 'Delete Env'
description : 'Delete env by UUID.'
operationId : delete-env-by-service-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
-
name : env_uuid
in : path
description : 'UUID of the environment variable.'
required : true
schema :
type : string
responses :
'200' :
description : 'Environment variable deleted.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Environment variable deleted.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-09-10 06:49:25 +00:00
'/services/{uuid}/start' :
get :
tags :
- Services
summary : Start
description : 'Start service. `Post` request is also accepted.'
operationId : start-service-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
responses :
'200' :
description : 'Start service.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Service starting request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/services/{uuid}/stop' :
get :
tags :
- Services
summary : Stop
description : 'Stop service. `Post` request is also accepted.'
operationId : stop-service-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
responses :
'200' :
description : 'Stop service.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Service stopping request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
'/services/{uuid}/restart' :
get :
tags :
- Services
summary : Restart
description : 'Restart service. `Post` request is also accepted.'
operationId : restart-service-by-uuid
parameters :
-
name : uuid
in : path
description : 'UUID of the service.'
required : true
schema :
type : string
2025-05-27 13:10:20 +00:00
-
name : latest
in : query
description : 'Pull latest images.'
schema :
type : boolean
default : false
2024-09-10 06:49:25 +00:00
responses :
'200' :
description : 'Restart service.'
content :
application/json :
schema :
properties :
message : { type: string, example : 'Service restaring request queued.' }
type : object
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-05 14:08:01 +00:00
/teams :
get :
2024-07-06 12:34:15 +00:00
tags :
- Teams
summary : List
description : 'Get all teams.'
2024-09-04 08:09:10 +00:00
operationId : list-teams
2024-07-05 14:08:01 +00:00
responses :
'200' :
2024-07-06 12:34:15 +00:00
description : 'List of teams.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/Team'
2024-07-05 14:08:01 +00:00
'401' :
2024-07-06 12:34:15 +00:00
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-07-05 14:08:01 +00:00
'/teams/{id}' :
get :
2024-07-06 12:34:15 +00:00
tags :
- Teams
summary : Get
description : 'Get team by TeamId.'
2024-09-04 08:09:10 +00:00
operationId : get-team-by-id
2024-07-05 14:08:01 +00:00
parameters :
-
name : id
in : path
description : 'Team ID'
required : true
schema :
type : integer
responses :
'200' :
2024-07-06 12:34:15 +00:00
description : 'List of teams.'
2024-07-05 14:08:01 +00:00
content :
application/json :
schema :
2024-07-06 12:34:15 +00:00
$ref : '#/components/schemas/Team'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
2024-07-09 08:45:10 +00:00
'/teams/{id}/members' :
get :
tags :
- Teams
summary : Members
description : 'Get members by TeamId.'
2024-09-04 08:09:10 +00:00
operationId : get-members-by-team-id
2024-07-09 08:45:10 +00:00
parameters :
-
name : id
in : path
description : 'Team ID'
required : true
schema :
type : integer
responses :
'200' :
description : 'List of members.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/User'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
'404' :
$ref : '#/components/responses/404'
security :
-
bearerAuth : [ ]
/teams/current :
get :
tags :
- Teams
summary : 'Authenticated Team'
description : 'Get currently authenticated team.'
2024-09-04 08:09:10 +00:00
operationId : get-current-team
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Current Team.'
content :
application/json :
schema :
$ref : '#/components/schemas/Team'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
/teams/current/members :
get :
tags :
- Teams
summary : 'Authenticated Team Members'
description : 'Get currently authenticated team members.'
2024-09-04 08:09:10 +00:00
operationId : get-current-team-members
2024-07-09 08:45:10 +00:00
responses :
'200' :
description : 'Currently authenticated team members.'
content :
application/json :
schema :
type : array
items :
$ref : '#/components/schemas/User'
'401' :
$ref : '#/components/responses/401'
'400' :
$ref : '#/components/responses/400'
security :
-
bearerAuth : [ ]
2024-07-05 14:08:01 +00:00
components :
2024-07-06 12:34:15 +00:00
schemas :
2024-07-09 08:45:10 +00:00
Application :
description : 'Application model'
properties :
id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The application identifier in the database.'
description :
type : string
nullable : true
description : 'The application description.'
2024-07-09 08:45:10 +00:00
repository_project_id :
type : integer
nullable : true
2024-07-09 11:59:54 +00:00
description : 'The repository project identifier.'
2024-07-09 08:45:10 +00:00
uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'The application UUID.'
2024-07-09 08:45:10 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'The application name.'
2024-07-09 08:45:10 +00:00
fqdn :
type : string
2024-07-09 11:59:54 +00:00
nullable : true
description : 'The application domains.'
2024-07-09 08:45:10 +00:00
config_hash :
type : string
2024-07-09 11:59:54 +00:00
description : 'Configuration hash.'
2024-07-09 08:45:10 +00:00
git_repository :
type : string
2024-07-09 11:59:54 +00:00
description : 'Git repository URL.'
2024-07-09 08:45:10 +00:00
git_branch :
type : string
2024-07-09 11:59:54 +00:00
description : 'Git branch.'
2024-07-09 08:45:10 +00:00
git_commit_sha :
type : string
2024-07-09 11:59:54 +00:00
description : 'Git commit SHA.'
2024-07-09 08:45:10 +00:00
git_full_url :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Git full URL.'
2024-07-09 08:45:10 +00:00
docker_registry_image_name :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker registry image name.'
2024-07-09 08:45:10 +00:00
docker_registry_image_tag :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker registry image tag.'
2024-07-09 08:45:10 +00:00
build_pack :
type : string
2024-07-09 11:59:54 +00:00
description : 'Build pack.'
enum :
- nixpacks
- static
- dockerfile
- dockercompose
2024-07-09 08:45:10 +00:00
static_image :
type : string
2024-07-09 11:59:54 +00:00
description : 'Static image used when static site is deployed.'
2024-07-09 08:45:10 +00:00
install_command :
type : string
2024-07-09 11:59:54 +00:00
description : 'Install command.'
2024-07-09 08:45:10 +00:00
build_command :
type : string
2024-07-09 11:59:54 +00:00
description : 'Build command.'
2024-07-09 08:45:10 +00:00
start_command :
type : string
2024-07-09 11:59:54 +00:00
description : 'Start command.'
2024-07-09 08:45:10 +00:00
ports_exposes :
type : string
2024-07-09 11:59:54 +00:00
description : 'Ports exposes.'
2024-07-09 08:45:10 +00:00
ports_mappings :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Ports mappings.'
2025-04-09 16:52:12 +00:00
custom_network_aliases :
type : string
nullable : true
description : 'Network aliases for Docker container.'
2024-07-09 08:45:10 +00:00
base_directory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Base directory for all commands.'
2024-07-09 08:45:10 +00:00
publish_directory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Publish directory.'
health_check_enabled :
type : boolean
description : 'Health check enabled.'
2024-07-09 08:45:10 +00:00
health_check_path :
type : string
2024-07-09 11:59:54 +00:00
description : 'Health check path.'
2024-07-09 08:45:10 +00:00
health_check_port :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Health check port.'
2024-07-09 08:45:10 +00:00
health_check_host :
type : string
2024-07-09 11:59:54 +00:00
nullable : true
description : 'Health check host.'
2024-07-09 08:45:10 +00:00
health_check_method :
type : string
2024-07-09 11:59:54 +00:00
description : 'Health check method.'
2024-07-09 08:45:10 +00:00
health_check_return_code :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Health check return code.'
2024-07-09 08:45:10 +00:00
health_check_scheme :
type : string
2024-07-09 11:59:54 +00:00
description : 'Health check scheme.'
2024-07-09 08:45:10 +00:00
health_check_response_text :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Health check response text.'
2024-07-09 08:45:10 +00:00
health_check_interval :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Health check interval in seconds.'
2024-07-09 08:45:10 +00:00
health_check_timeout :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Health check timeout in seconds.'
2024-07-09 08:45:10 +00:00
health_check_retries :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Health check retries count.'
2024-07-09 08:45:10 +00:00
health_check_start_period :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Health check start period in seconds.'
2024-07-09 08:45:10 +00:00
limits_memory :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory limit.'
2024-07-09 08:45:10 +00:00
limits_memory_swap :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory swap limit.'
2024-07-09 08:45:10 +00:00
limits_memory_swappiness :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Memory swappiness.'
2024-07-09 08:45:10 +00:00
limits_memory_reservation :
type : string
2024-07-09 11:59:54 +00:00
description : 'Memory reservation.'
2024-07-09 08:45:10 +00:00
limits_cpus :
type : string
2024-07-09 11:59:54 +00:00
description : 'CPU limit.'
2024-07-09 08:45:10 +00:00
limits_cpuset :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'CPU set.'
2024-07-09 08:45:10 +00:00
limits_cpu_shares :
type : integer
2024-07-09 11:59:54 +00:00
description : 'CPU shares.'
2024-07-09 08:45:10 +00:00
status :
type : string
2024-07-09 11:59:54 +00:00
description : 'Application status.'
2024-07-09 08:45:10 +00:00
preview_url_template :
type : string
2024-07-09 11:59:54 +00:00
description : 'Preview URL template.'
2024-07-09 08:45:10 +00:00
destination_type :
type : string
2024-07-09 11:59:54 +00:00
description : 'Destination type.'
2024-07-09 08:45:10 +00:00
destination_id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Destination identifier.'
2024-07-09 08:45:10 +00:00
source_id :
type : integer
2024-07-09 11:59:54 +00:00
nullable : true
description : 'Source identifier.'
2024-07-09 08:45:10 +00:00
private_key_id :
type : integer
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Private key identifier.'
2024-07-09 08:45:10 +00:00
environment_id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'Environment identifier.'
2024-07-09 08:45:10 +00:00
dockerfile :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Dockerfile content. Used for dockerfile build pack.'
2024-07-09 08:45:10 +00:00
dockerfile_location :
type : string
2024-07-09 11:59:54 +00:00
description : 'Dockerfile location.'
2024-07-09 08:45:10 +00:00
custom_labels :
type : string
2024-07-09 11:59:54 +00:00
nullable : true
description : 'Custom labels.'
2024-07-09 08:45:10 +00:00
dockerfile_target_build :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Dockerfile target build.'
2024-07-09 08:45:10 +00:00
manual_webhook_secret_github :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Manual webhook secret for GitHub.'
2024-07-09 08:45:10 +00:00
manual_webhook_secret_gitlab :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Manual webhook secret for GitLab.'
manual_webhook_secret_bitbucket :
type : string
nullable : true
description : 'Manual webhook secret for Bitbucket.'
manual_webhook_secret_gitea :
type : string
nullable : true
description : 'Manual webhook secret for Gitea.'
2024-07-09 08:45:10 +00:00
docker_compose_location :
type : string
2024-07-09 11:59:54 +00:00
description : 'Docker compose location.'
2024-07-09 08:45:10 +00:00
docker_compose :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker compose content. Used for docker compose build pack.'
2024-07-09 08:45:10 +00:00
docker_compose_raw :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker compose raw content.'
2024-07-09 08:45:10 +00:00
docker_compose_domains :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker compose domains.'
2024-07-09 08:45:10 +00:00
docker_compose_custom_start_command :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker compose custom start command.'
2024-07-09 08:45:10 +00:00
docker_compose_custom_build_command :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Docker compose custom build command.'
2024-07-09 08:45:10 +00:00
swarm_replicas :
type : integer
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Swarm replicas. Only used for swarm deployments.'
swarm_placement_constraints :
2024-07-09 08:45:10 +00:00
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Swarm placement constraints. Only used for swarm deployments.'
2024-07-09 08:45:10 +00:00
custom_docker_run_options :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Custom docker run options.'
2024-07-09 08:45:10 +00:00
post_deployment_command :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Post deployment command.'
2024-07-09 08:45:10 +00:00
post_deployment_command_container :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Post deployment command container.'
2024-07-09 08:45:10 +00:00
pre_deployment_command :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Pre deployment command.'
2024-07-09 08:45:10 +00:00
pre_deployment_command_container :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Pre deployment command container.'
2024-07-09 08:45:10 +00:00
watch_paths :
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'Watch paths.'
2024-07-09 08:45:10 +00:00
custom_healthcheck_found :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'Custom healthcheck found.'
redirect :
2024-07-09 08:45:10 +00:00
type : string
nullable : true
2024-07-09 11:59:54 +00:00
description : 'How to set redirect with Traefik / Caddy. www<->non-www.'
enum :
- www
- non-www
- both
created_at :
type : string
format : date-time
description : 'The date and time when the application was created.'
updated_at :
2024-07-09 08:45:10 +00:00
type : string
2024-07-09 11:59:54 +00:00
format : date-time
description : 'The date and time when the application was last updated.'
deleted_at :
type : string
format : date-time
nullable : true
description : 'The date and time when the application was deleted.'
2024-07-11 10:38:54 +00:00
compose_parsing_version :
type : string
description : 'How Coolify parse the compose file.'
2024-11-12 09:27:36 +00:00
custom_nginx_configuration :
type : string
nullable : true
description : 'Custom Nginx configuration base64 encoded.'
2025-04-23 11:22:01 +00:00
is_http_basic_auth_enabled :
2025-04-23 09:59:01 +00:00
type : boolean
description : 'HTTP Basic Authentication enabled.'
http_basic_auth_username :
type : string
nullable : true
description : 'Username for HTTP Basic Authentication'
http_basic_auth_password :
type : string
nullable : true
description : 'Password for HTTP Basic Authentication'
2024-07-09 08:45:10 +00:00
type : object
ApplicationDeploymentQueue :
description : 'Project model'
properties :
id :
type : integer
application_id :
type : string
deployment_uuid :
type : string
pull_request_id :
type : integer
force_rebuild :
type : boolean
commit :
type : string
status :
type : string
is_webhook :
type : boolean
is_api :
type : boolean
created_at :
type : string
updated_at :
type : string
logs :
type : string
current_process_id :
type : string
restart_only :
type : boolean
git_type :
type : string
server_id :
type : integer
application_name :
type : string
server_name :
type : string
deployment_url :
type : string
destination_id :
type : string
only_this_server :
type : boolean
rollback :
type : boolean
commit_message :
type : string
type : object
Environment :
description : 'Environment model'
properties :
id :
type : integer
name :
type : string
project_id :
type : integer
created_at :
type : string
updated_at :
type : string
description :
type : string
type : object
2024-07-09 11:19:21 +00:00
EnvironmentVariable :
description : 'Environment Variable model'
properties :
id :
type : integer
uuid :
type : string
2024-12-17 12:42:16 +00:00
resourceable_type :
type : string
resourceable_id :
2024-07-09 11:19:21 +00:00
type : integer
is_literal :
type : boolean
is_multiline :
type : boolean
is_preview :
type : boolean
2025-09-18 14:51:08 +00:00
is_runtime :
type : boolean
is_buildtime :
2025-09-11 15:37:40 +00:00
type : boolean
2024-07-09 11:19:21 +00:00
is_shared :
type : boolean
is_shown_once :
type : boolean
key :
type : string
value :
type : string
real_value :
type : string
version :
type : string
created_at :
type : string
updated_at :
type : string
type : object
2024-07-09 08:45:10 +00:00
PrivateKey :
description : 'Private Key model'
properties :
id :
type : integer
uuid :
type : string
name :
type : string
description :
type : string
private_key :
type : string
format : private-key
2025-04-22 08:44:37 +00:00
public_key :
type : string
2025-04-23 09:59:01 +00:00
description : 'The public key of the private key.'
2025-04-22 08:44:37 +00:00
fingerprint :
type : string
2025-04-23 09:59:01 +00:00
description : 'The fingerprint of the private key.'
2024-07-09 08:45:10 +00:00
is_git_related :
type : boolean
team_id :
type : integer
created_at :
type : string
updated_at :
type : string
type : object
Project :
description : 'Project model'
properties :
id :
type : integer
uuid :
type : string
name :
type : string
2024-09-10 06:49:25 +00:00
description :
type : string
2024-07-09 08:45:10 +00:00
type : object
Server :
2024-07-23 12:20:53 +00:00
description : 'Server model'
2024-07-09 08:45:10 +00:00
properties :
id :
type : integer
2024-11-12 13:30:05 +00:00
description : 'The server ID.'
2024-07-09 08:45:10 +00:00
uuid :
type : string
2024-11-12 13:30:05 +00:00
description : 'The server UUID.'
2024-07-09 08:45:10 +00:00
name :
type : string
2024-11-12 13:30:05 +00:00
description : 'The server name.'
2024-07-23 12:20:53 +00:00
description :
2024-07-09 08:45:10 +00:00
type : string
2024-11-12 13:30:05 +00:00
description : 'The server description.'
2024-07-23 12:20:53 +00:00
ip :
2024-07-09 08:45:10 +00:00
type : string
2024-11-12 13:30:05 +00:00
description : 'The IP address.'
2024-07-23 12:20:53 +00:00
user :
2024-07-09 08:45:10 +00:00
type : string
2024-11-12 13:30:05 +00:00
description : 'The user.'
2024-07-23 12:20:53 +00:00
port :
2024-07-09 08:45:10 +00:00
type : integer
2024-11-12 13:30:05 +00:00
description : 'The port number.'
2024-07-23 12:20:53 +00:00
proxy :
type : object
2024-11-12 13:30:05 +00:00
description : 'The proxy configuration.'
proxy_type :
type : string
enum :
- traefik
- caddy
- none
description : 'The proxy type.'
2024-07-23 12:20:53 +00:00
high_disk_usage_notification_sent :
2024-07-09 08:45:10 +00:00
type : boolean
2024-11-12 13:30:05 +00:00
description : 'The flag to indicate if the high disk usage notification has been sent.'
2024-07-23 12:20:53 +00:00
unreachable_notification_sent :
type : boolean
2024-11-12 13:30:05 +00:00
description : 'The flag to indicate if the unreachable notification has been sent.'
2024-07-23 12:20:53 +00:00
unreachable_count :
2024-07-09 08:45:10 +00:00
type : integer
2024-11-12 13:30:05 +00:00
description : 'The unreachable count for your server.'
2024-07-23 12:20:53 +00:00
validation_logs :
2024-07-09 08:45:10 +00:00
type : string
2024-11-12 13:30:05 +00:00
description : 'The validation logs.'
2024-07-23 12:20:53 +00:00
log_drain_notification_sent :
2024-07-09 08:45:10 +00:00
type : boolean
2024-11-12 13:30:05 +00:00
description : 'The flag to indicate if the log drain notification has been sent.'
2024-07-23 12:20:53 +00:00
swarm_cluster :
2024-07-09 08:45:10 +00:00
type : string
2024-11-12 13:30:05 +00:00
description : 'The swarm cluster configuration.'
2024-11-23 01:44:04 +00:00
settings :
$ref : '#/components/schemas/ServerSetting'
2024-07-09 08:45:10 +00:00
type : object
ServerSetting :
description : 'Server Settings model'
properties :
id :
type : integer
concurrent_builds :
type : integer
2025-12-04 12:52:27 +00:00
deployment_queue_limit :
type : integer
2024-07-09 08:45:10 +00:00
dynamic_timeout :
type : integer
force_disabled :
type : boolean
2024-08-26 10:23:03 +00:00
force_server_cleanup :
type : boolean
2024-07-09 08:45:10 +00:00
is_build_server :
type : boolean
is_cloudflare_tunnel :
type : boolean
is_jump_server :
type : boolean
is_logdrain_axiom_enabled :
type : boolean
is_logdrain_custom_enabled :
type : boolean
is_logdrain_highlight_enabled :
type : boolean
is_logdrain_newrelic_enabled :
type : boolean
is_metrics_enabled :
type : boolean
is_reachable :
type : boolean
2024-10-15 11:39:19 +00:00
is_sentinel_enabled :
2024-07-09 08:45:10 +00:00
type : boolean
is_swarm_manager :
type : boolean
is_swarm_worker :
type : boolean
2025-08-28 09:21:30 +00:00
is_terminal_enabled :
type : boolean
2024-07-09 08:45:10 +00:00
is_usable :
type : boolean
logdrain_axiom_api_key :
type : string
logdrain_axiom_dataset_name :
type : string
logdrain_custom_config :
type : string
logdrain_custom_config_parser :
type : string
logdrain_highlight_project_id :
type : string
logdrain_newrelic_base_uri :
type : string
logdrain_newrelic_license_key :
type : string
2024-10-14 10:07:37 +00:00
sentinel_metrics_history_days :
2024-07-09 08:45:10 +00:00
type : integer
2024-10-21 12:50:44 +00:00
sentinel_metrics_refresh_rate_seconds :
type : integer
2024-10-14 10:07:37 +00:00
sentinel_token :
2024-07-09 08:45:10 +00:00
type : string
2024-08-26 10:23:03 +00:00
docker_cleanup_frequency :
type : string
docker_cleanup_threshold :
type : integer
2024-07-09 08:45:10 +00:00
server_id :
type : integer
wildcard_domain :
type : string
created_at :
type : string
updated_at :
type : string
2024-11-23 02:11:48 +00:00
delete_unused_volumes :
type : boolean
description : 'The flag to indicate if the unused volumes should be deleted.'
delete_unused_networks :
type : boolean
description : 'The flag to indicate if the unused networks should be deleted.'
2024-07-09 08:45:10 +00:00
type : object
2024-07-09 11:30:13 +00:00
Service :
description : 'Service model'
properties :
id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The unique identifier of the service. Only used for database identification.'
2024-07-09 11:30:13 +00:00
uuid :
type : string
2024-07-09 11:59:54 +00:00
description : 'The unique identifier of the service.'
2024-07-09 11:30:13 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'The name of the service.'
2024-07-09 11:30:13 +00:00
environment_id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The unique identifier of the environment where the service is attached to.'
2024-07-09 11:30:13 +00:00
server_id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The unique identifier of the server where the service is running.'
2024-07-09 11:30:13 +00:00
description :
type : string
2024-07-09 11:59:54 +00:00
description : 'The description of the service.'
2024-07-09 11:30:13 +00:00
docker_compose_raw :
type : string
2024-07-09 11:59:54 +00:00
description : 'The raw docker-compose.yml file of the service.'
2024-07-09 11:30:13 +00:00
docker_compose :
type : string
2024-07-09 11:59:54 +00:00
description : 'The docker-compose.yml file that is parsed and modified by Coolify.'
2024-08-26 10:23:03 +00:00
destination_type :
type : string
description : 'Destination type.'
2024-07-09 11:30:13 +00:00
destination_id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The unique identifier of the destination where the service is running.'
2024-07-09 11:30:13 +00:00
connect_to_docker_network :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'The flag to connect the service to the predefined Docker network.'
is_container_label_escape_enabled :
type : boolean
description : 'The flag to enable the container label escape.'
2024-07-23 09:36:05 +00:00
is_container_label_readonly_enabled :
type : boolean
description : 'The flag to enable the container label readonly.'
2024-07-09 11:30:13 +00:00
config_hash :
type : string
2024-07-09 11:59:54 +00:00
description : 'The hash of the service configuration.'
2024-07-09 11:30:13 +00:00
service_type :
type : string
2024-07-09 11:59:54 +00:00
description : 'The type of the service.'
created_at :
type : string
description : 'The date and time when the service was created.'
updated_at :
type : string
description : 'The date and time when the service was last updated.'
deleted_at :
type : string
description : 'The date and time when the service was deleted.'
2024-07-09 11:30:13 +00:00
type : object
2024-07-06 12:34:15 +00:00
Team :
description : 'Team model'
properties :
id :
type : integer
description : 'The unique identifier of the team.'
name :
type : string
description : 'The name of the team.'
description :
type : string
description : 'The description of the team.'
personal_team :
type : boolean
description : 'Whether the team is personal or not.'
created_at :
type : string
description : 'The date and time the team was created.'
updated_at :
type : string
description : 'The date and time the team was last updated.'
show_boarding :
type : boolean
description : 'Whether to show the boarding screen or not.'
custom_server_limit :
type : string
description : 'The custom server limit.'
2024-07-09 08:45:10 +00:00
members :
description : 'The members of the team.'
type : array
items :
$ref : '#/components/schemas/User'
type : object
User :
description : 'User model'
properties :
id :
type : integer
2024-07-09 11:59:54 +00:00
description : 'The user identifier in the database.'
2024-07-09 08:45:10 +00:00
name :
type : string
2024-07-09 11:59:54 +00:00
description : 'The user name.'
2024-07-09 08:45:10 +00:00
email :
type : string
2024-07-09 11:59:54 +00:00
description : 'The user email.'
2024-07-09 08:45:10 +00:00
email_verified_at :
type : string
2024-07-09 11:59:54 +00:00
description : 'The date when the user email was verified.'
2024-07-09 08:45:10 +00:00
created_at :
type : string
2024-07-09 11:59:54 +00:00
description : 'The date when the user was created.'
2024-07-09 08:45:10 +00:00
updated_at :
type : string
2024-07-09 11:59:54 +00:00
description : 'The date when the user was updated.'
2024-07-09 08:45:10 +00:00
two_factor_confirmed_at :
type : string
2024-07-09 11:59:54 +00:00
description : 'The date when the user two factor was confirmed.'
2024-07-09 08:45:10 +00:00
force_password_reset :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'The flag to force the user to reset the password.'
2024-07-09 08:45:10 +00:00
marketing_emails :
type : boolean
2024-07-09 11:59:54 +00:00
description : 'The flag to receive marketing emails.'
2024-07-06 12:34:15 +00:00
type : object
responses :
2024-07-09 08:45:10 +00:00
'400' :
description : 'Invalid token.'
2024-07-06 12:34:15 +00:00
content :
application/json :
schema :
properties :
message :
type : string
2024-07-09 08:45:10 +00:00
example : 'Invalid token.'
2024-07-06 12:34:15 +00:00
type : object
2024-07-09 08:45:10 +00:00
'401' :
description : Unauthenticated.
2024-07-06 12:34:15 +00:00
content :
application/json :
schema :
properties :
message :
type : string
2024-07-09 08:45:10 +00:00
example : Unauthenticated.
2024-07-06 12:34:15 +00:00
type : object
'404' :
description : 'Resource not found.'
content :
application/json :
schema :
properties :
message :
type : string
2024-07-09 08:45:10 +00:00
example : 'Resource not found.'
2024-07-06 12:34:15 +00:00
type : object
2025-10-12 12:20:45 +00:00
'422' :
description : 'Validation error.'
content :
application/json :
schema :
properties :
message :
type : string
example : 'Validation error.'
errors :
type : object
example :
name : [ 'The name field is required.' ]
api_url : [ 'The api url field is required.' , 'The api url format is invalid.' ]
additionalProperties :
type : array
items : { type : string }
type : object
2025-12-11 11:08:12 +00:00
'429' :
description : 'Rate limit exceeded.'
headers :
Retry-After :
description : 'Number of seconds to wait before retrying.'
schema :
type : integer
example : 60
content :
application/json :
schema :
properties :
message :
type : string
example : 'Rate limit exceeded. Please try again later.'
type : object
2024-07-05 14:08:01 +00:00
securitySchemes :
bearerAuth :
type : http
2024-07-06 12:34:15 +00:00
description : 'Go to `Keys & Tokens` / `API tokens` and create a new token. Use the token as the bearer token.'
2024-07-05 14:08:01 +00:00
scheme : bearer
2024-07-06 12:34:15 +00:00
tags :
2024-07-09 08:45:10 +00:00
-
name : Applications
description : Applications
2025-12-11 08:41:54 +00:00
-
name : 'Cloud Tokens'
description : 'Cloud Tokens'
2024-07-09 11:19:21 +00:00
-
name : Databases
description : Databases
2024-07-09 08:45:10 +00:00
-
name : Deployments
description : Deployments
2025-09-30 09:19:39 +00:00
-
name : 'GitHub Apps'
description : 'GitHub Apps'
2025-12-11 08:41:54 +00:00
-
name : Hetzner
description : Hetzner
2024-07-09 08:45:10 +00:00
-
name : Projects
description : Projects
-
name : Resources
description : Resources
-
name : 'Private Keys'
description : 'Private Keys'
-
name : Servers
description : Servers
2024-07-09 11:30:13 +00:00
-
name : Services
description : Services
2024-07-06 12:34:15 +00:00
-
name : Teams
description : Teams