Coolify logoCoolify
POST
/applications/dockercompose

Deprecated: Use POST /api/v1/services instead.

Authorization

bearerAuth
AuthorizationBearer <token>

Go to Keys & Tokens / API tokens and create a new token. Use the token as the bearer token.

In: header

Request Body

application/json

Application object that needs to be created.

TypeScript Definitions

Use the request body type in TypeScript.

project_uuid*string

The project UUID.

server_uuid*string

The server UUID.

environment_name*string

The environment name. You need to provide at least one of environment_name or environment_uuid.

environment_uuid*string

The environment UUID. You need to provide at least one of environment_name or environment_uuid.

docker_compose_raw*string

The Docker Compose raw content.

destination_uuid?string

The destination UUID if the server has more than one destinations.

name?string

The application name.

description?string

The application description.

instant_deploy?boolean

The flag to indicate if the application should be deployed instantly.

use_build_server?boolean

Use build server.

connect_to_docker_network?boolean

The flag to connect the service to the predefined Docker network.

force_domain_override?boolean

Force domain usage even if conflicts are detected. Default is false.

is_container_label_escape_enabled?boolean

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.

Defaulttrue

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://app.coolify.io/api/v1/applications/dockercompose" \  -H "Content-Type: application/json" \  -d '{    "project_uuid": "string",    "server_uuid": "string",    "environment_name": "string",    "environment_uuid": "string",    "docker_compose_raw": "string"  }'
{  "uuid": "string"}
{  "message": "Invalid token."}
{  "message": "Unauthenticated."}
{  "message": "Domain conflicts detected. Use force_domain_override=true to proceed.",  "warning": "Using the same domain for multiple resources can cause routing conflicts and unpredictable behavior.",  "conflicts": [    {      "domain": "example.com",      "resource_name": "My Application",      "resource_uuid": "abc123-def456",      "resource_type": "application",      "message": "Domain example.com is already in use by application 'My Application'"    }  ]}