POST/applications/public

Create (Public)

Create new application based on a public git repository.

  • IdempotentThe SDK sends Idempotency-Key, so a retried request is only applied once.

112 body fields

Application object that needs to be created.

autogenerate_domainbooleanoptional
If true and domains is empty, auto-generate a domain using the server's wildcard domain or sslip.io fallback. Ignored for the dockercompose build pack, which uses docker_compose_domains. Default: true.
Default:true
base_directorystringoptional
The base directory for all commands.
build_commandstringoptional
The build command.
build_packstringrequired
The build pack type.
Allowed:nixpacksrailpackstaticdockerfiledockercompose
connect_to_docker_networkbooleanoptional
The flag to connect the service to the predefined Docker network.
custom_container_name_prefixstringoptional
Prefix for generated container names (prefix-20260908T141530). Slugified and unique across the instance.
custom_docker_run_optionsstringoptional
Custom docker run options.
custom_internal_namestringoptional
Custom internal container name. Turns is_consistent_container_name_enabled on when that field is not sent; sending it as false together with a name returns 422.
custom_labelsstringoptional
Custom labels.
descriptionstringoptional
The application description.
destination_uuidstringoptional
The destination UUID.
disable_build_cachebooleanoptional
Disable the build cache.
docker_compose_custom_build_commandstringoptional
The Docker Compose custom build command.
docker_compose_custom_start_commandstringoptional
The Docker Compose custom start command.
docker_compose_domainsarray<object>optional
Array of URLs to be applied to containers of a dockercompose application.
docker_compose_locationstringoptional
The Docker Compose location.
docker_images_to_keepintegeroptional
Number of Docker images to retain.
docker_registry_image_namestringoptional
The docker registry image name.
docker_registry_image_tagstringoptional
The docker registry image tag.
dockerfilestringoptional
The Dockerfile content.
dockerfile_locationstringoptional
The Dockerfile location in the repository.
dockerfile_target_buildstringoptional
The Docker build target (stage) in the Dockerfile.
domainsstringoptional
The application URLs in a comma-separated list.
environment_namestringrequired
The environment name. You need to provide at least one of environment_name or environment_uuid.
environment_uuidstringrequired
The environment UUID. You need to provide at least one of environment_name or environment_uuid.
force_domain_overridebooleanoptional
Force domain usage even if conflicts are detected. Default is false.
git_branchstringrequired
The git branch.
git_commit_shastringoptional
The git commit SHA.
git_repositorystringrequired
The git repository URL.
gpu_countstringoptional
Number of GPUs to allocate.
gpu_device_idsstringoptional
Comma-separated GPU device IDs.
gpu_driverstringoptional
GPU driver name.
gpu_optionsstringoptional
Additional GPU options.
health_check_enabledbooleanoptional
Health check enabled.
health_check_hoststringoptional
Health check host.
health_check_intervalintegeroptional
Health check interval in seconds.
health_check_methodstringoptional
Health check method.
health_check_pathstringoptional
Health check path.
health_check_portstringoptional
Health check port.
health_check_response_textstringoptional
Health check response text.
health_check_retriesintegeroptional
Health check retries count.
health_check_return_codeintegeroptional
Health check return code.
health_check_schemestringoptional
Health check scheme.
health_check_start_periodintegeroptional
Health check start period in seconds.
health_check_timeoutintegeroptional
Health check timeout in seconds.
http_basic_auth_argon2id_memory_costintegeroptional
Argon2id memory cost in KiB for the HTTP Basic Authentication password.
Default:65536
http_basic_auth_argon2id_time_costintegeroptional
Argon2id time cost (iterations) for the HTTP Basic Authentication password.
Default:4
http_basic_auth_bcrypt_costintegeroptional
Bcrypt cost for the HTTP Basic Authentication password.
Default:10
http_basic_auth_hash_algorithmstringoptional
Hash algorithm for the HTTP Basic Authentication password. Argon2id needs the Caddy proxy, version 2.11 or newer.
Allowed:bcryptargon2idDefault:bcrypt
http_basic_auth_passwordstringoptional
Password for HTTP Basic Authentication
http_basic_auth_usernamestringoptional
Username for HTTP Basic Authentication
include_coolify_default_variablesbooleanoptional
Add the predefined COOLIFY_* variables (COOLIFY_URL, COOLIFY_FQDN, ...) to the environment. Requires team admin permissions. Redeploy to apply it.
Default:true
include_source_commit_in_buildbooleanoptional
Include the source commit in the build.
inject_build_args_to_dockerfilebooleanoptional
Inject build arguments into the Dockerfile build.
install_commandstringoptional
The install command.
instant_deploybooleanoptional
The flag to indicate if the application should be deployed instantly.
is_auto_deploy_enabledbooleanoptional
The flag to indicate if auto-deploy is enabled on git push. Defaults to true.
is_consistent_container_name_enabledbooleanoptional
Use a consistent container name across deployments.
is_container_label_escape_enabledbooleanoptional
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.
Default:true
is_container_label_readonly_enabledbooleanoptional
Let Coolify manage the container labels. True regenerates custom_labels from domains, redirect, and proxy settings. False keeps custom_labels as you set them: domains, redirect, and basic auth changes then do not change the labels.
Default:true
is_env_sorting_enabledbooleanoptional
Sort environment variables.
is_force_https_enabledbooleanoptional
The flag to indicate if HTTPS is forced. Defaults to true.
is_git_lfs_enabledbooleanoptional
Enable Git LFS.
is_git_shallow_clone_enabledbooleanoptional
Use a shallow Git clone.
is_git_submodules_enabledbooleanoptional
Clone Git submodules.
is_gpu_enabledbooleanoptional
Enable GPU support.
is_gzip_enabledbooleanoptional
Enable gzip compression.
is_http_basic_auth_enabledbooleanoptional
HTTP Basic Authentication enabled.
is_log_drain_enabledbooleanoptional
Enable log drain for the application.
is_permanent_redirect_enabledbooleanoptional
Use permanent redirects (301/308) instead of temporary (302/307) for the HTTP to HTTPS and www redirects. Defaults to false.
is_pr_deployments_public_enabledbooleanoptional
Make pull request deployments public.
is_preserve_repository_enabledbooleanoptional
Preserve repository during deployment.
Default:false
is_preview_deployments_enabledbooleanoptional
Enable preview deployments for pull requests.
is_raw_compose_deployment_enabledbooleanoptional
Deploy the raw Docker Compose definition.
is_spabooleanoptional
The flag to indicate if the application is a single-page application (SPA). Only relevant when is_static is true.
is_staticbooleanoptional
The flag to indicate if the application is static.
is_stripprefix_enabledbooleanoptional
Enable path prefix stripping.
limits_cpu_sharesintegeroptional
CPU shares.
limits_cpusstringoptional
CPU limit.
limits_cpusetstringoptional
CPU set.
limits_memorystringoptional
Memory limit.
limits_memory_reservationstringoptional
Memory reservation.
limits_memory_swapstringoptional
Memory swap limit.
limits_memory_swappinessintegeroptional
Memory swappiness.
manual_webhook_secret_bitbucketstringoptional
Manual webhook secret for Bitbucket. Needs the deploy ability.
manual_webhook_secret_giteastringoptional
Manual webhook secret for Gitea. Needs the deploy ability.
manual_webhook_secret_githubstringoptional
Manual webhook secret for Github. Needs the deploy ability.
manual_webhook_secret_gitlabstringoptional
Manual webhook secret for Gitlab. Needs the deploy ability.
max_restart_countintegeroptional
Maximum container restart count before stopping.
namestringoptional
The application name.
noindex_domainsarray<string>optional
The subset of the application domains served with an X-Robots-Tag: noindex, nofollow response header, keeping them out of search engines. Entries that are not among the application domains are ignored.
ports_exposesstringoptional
The ports to expose.
ports_mappingsstringoptional
The ports mappings.
post_deployment_commandstringoptional
Post deployment command.
post_deployment_command_containerstringoptional
Post deployment command container.
pre_deployment_commandstringoptional
Pre deployment command.
pre_deployment_command_containerstringoptional
Pre deployment command container.
preview_url_templatestringoptional
Preview URL template.
project_uuidstringrequired
The project UUID.
publish_directorystringoptional
The publish directory.
redact_all_env_values_in_logsbooleanoptional
Redact all environment variable values in logs. When false, only locked (shown once) values are redacted. Requires team admin permissions.
redirectstringoptional
How to set redirect with Traefik / Caddy. www<->non-www.
Allowed:wwwnon-wwwboth
rolling_update_drain_secondsintegeroptional
Seconds to wait after the new container is healthy before old containers stop during a rolling update. 0 turns the wait off. Default: 5.
server_uuidstringrequired
The server UUID.
start_commandstringoptional
The start command.
static_imagestringoptional
The static image.
Allowed:nginx:alpine
stop_grace_periodintegeroptional
Container stop grace period in seconds.
tagsarray<string>optional
Tags to assign to the application.
traefik_certificate_resolverstringoptional
Traefik certificate resolver for this application. Null uses the server setting, "none" uses no resolver.
use_build_secretsbooleanoptional
Use Docker Build Secrets for build-time environment variables.
Default:false
use_build_serverbooleanoptional
Use build server.
watch_pathsstringoptional
Watch path patterns, one per line (newline-separated). Commas do not separate patterns.

5 status codes
201Application created successfully.
uuidstringoptional
400Invalid token.
messagestringoptional
401Unauthenticated.
messagestringoptional
403The token needs the deploy ability to set a manual webhook secret.
409Domain conflicts detected.
conflictsarray<object>optional
messagestringoptional
warningstringoptional

Error handling

A 400 is returned: Invalid token. A 401 is returned: Unauthenticated. A 403 is returned: The token needs the deploy ability to set a manual webhook secret. A 409 is returned: Domain conflicts detected.