Skip to main content
These tools manage domains for applications, compose services, and preview deployments. They handle domain retrieval, creation, updates, deletion, and domain generation.
Retrieves all domains associated with a specific application in Dokploy.Annotations:
  • Read-only: true
  • Idempotent: true
applicationId
string
required
The ID of the application to retrieve domains for.
domains
array
List of domain configurations including SSL settings, paths, and routing information.
Example:
{
  "applicationId": "app_abc123"
}
Response:
{
  "message": "Successfully retrieved domains for application app_abc123",
  "data": [
    {
      "domainId": "dom_xyz789",
      "host": "api.example.com",
      "https": true,
      "certificateType": "letsencrypt",
      "path": "/v1",
      "port": 3000
    }
  ]
}
Retrieves all domains associated with a specific compose stack/service in Dokploy.Annotations:
  • Read-only: true
  • Idempotent: true
composeId
string
required
The ID of the compose service to retrieve domains for.
domains
array
List of domain configurations including SSL settings, paths, and routing information.
Example:
{
  "composeId": "compose_xyz789"
}
Response:
{
  "message": "Successfully retrieved domains for compose compose_xyz789",
  "data": [
    {
      "domainId": "dom_abc456",
      "host": "service.example.com",
      "serviceName": "web",
      "https": true
    }
  ]
}
Retrieves a specific domain configuration by its ID in Dokploy.Annotations:
  • Read-only: true
  • Idempotent: true
domainId
string
required
The ID of the domain to retrieve.
domain
object
Complete domain configuration including host, SSL settings, routing, and associations.
Example:
{
  "domainId": "dom_xyz789"
}
Response:
{
  "message": "Successfully retrieved domain dom_xyz789",
  "data": {
    "domainId": "dom_xyz789",
    "host": "api.example.com",
    "path": "/v1",
    "port": 3000,
    "https": true,
    "certificateType": "letsencrypt",
    "stripPath": false,
    "applicationId": "app_abc123",
    "domainType": "application"
  }
}
Creates a new domain configuration in Dokploy. Domains can be configured for applications, compose services, or preview deployments with SSL/TLS certificate options.Annotations:
  • Destructive: false
  • Idempotent: false
  • External API: true
host
string
required
The domain host (e.g., example.com or subdomain.example.com).
https
boolean
required
Whether to enable HTTPS for this domain.
certificateType
enum
required
The type of SSL certificate.
  • letsencrypt: Automatic Let’s Encrypt certificates
  • none: No SSL
  • custom: Custom certificates
stripPath
boolean
required
Whether to strip the path prefix when forwarding requests to the backend service.
path
string
Optional path for the domain (e.g., /api). Used for path-based routing.
port
number
The port number for the service (1-65535). If not specified, defaults will be used.
applicationId
string
The ID of the application to associate this domain with. Required if domainType is ‘application’.
customCertResolver
string
Custom certificate resolver name. Required when certificateType is ‘custom’.
composeId
string
The ID of the compose service to associate this domain with. Required if domainType is ‘compose’.
serviceName
string
The name of the service within the compose stack. Used with composeId.
domainType
enum
The type of domain.
  • application: For app domains
  • compose: For compose services
  • preview: For preview deployments
previewDeploymentId
string
The ID of the preview deployment. Required if domainType is ‘preview’.
internalPath
string
Internal path for routing within the container/service.
Example:
{
  "host": "api.example.com",
  "path": "/v1",
  "port": 3000,
  "https": true,
  "certificateType": "letsencrypt",
  "applicationId": "app_abc123",
  "stripPath": false,
  "domainType": "application"
}
Response:
{
  "message": "Domain \"api.example.com\" created successfully with letsencrypt certificate type",
  "data": {
    "domainId": "dom_new789",
    "host": "api.example.com",
    "certificateType": "letsencrypt",
    "https": true
  }
}
Updates an existing domain configuration in Dokploy. Allows modifying domain settings including host, SSL configuration, routing options, and service associations.Annotations:
  • Destructive: false
  • Idempotent: true
domainId
string
required
The ID of the domain to update.
host
string
required
The domain host (e.g., example.com or subdomain.example.com).
https
boolean
required
Whether to enable HTTPS for this domain.
certificateType
enum
required
The type of SSL certificate: ‘letsencrypt’, ‘none’, or ‘custom’.
stripPath
boolean
required
Whether to strip the path prefix when forwarding requests to the backend service.
path
string
Optional path for the domain (e.g., /api). Used for path-based routing.
port
number
The port number for the service (1-65535).
customCertResolver
string
Custom certificate resolver name. Required when certificateType is ‘custom’.
serviceName
string
The name of the service within the compose stack.
domainType
enum
The type of domain: ‘application’, ‘compose’, or ‘preview’.
internalPath
string
Internal path for routing within the container/service.
Example:
{
  "domainId": "dom_xyz789",
  "host": "api.example.com",
  "path": "/v2",
  "https": true,
  "certificateType": "letsencrypt",
  "stripPath": true
}
Response:
{
  "message": "Domain \"api.example.com\" updated successfully",
  "data": {
    "domainId": "dom_xyz789",
    "host": "api.example.com",
    "path": "/v2",
    "stripPath": true
  }
}
Deletes an existing domain configuration in Dokploy by its ID.Annotations:
  • Destructive: true
  • Idempotent: false
domainId
string
required
The ID of the domain to delete.
Example:
{
  "domainId": "dom_xyz789"
}
Response:
{
  "message": "Domain dom_xyz789 deleted successfully"
}
This operation is destructive and cannot be undone. The domain configuration will be permanently removed.
Generates a suggested domain for a given application name, optionally scoped to a server.Annotations:
  • Read-only: true
  • Idempotent: true
appName
string
required
The application name to generate a domain for.
serverId
string
Optional server ID to use when generating the domain.
Example:
{
  "appName": "my-api",
  "serverId": "server_123"
}
Response:
{
  "message": "Successfully generated domain for app \"my-api\"",
  "data": {
    "suggestedDomain": "my-api-server123.traefik.me",
    "available": true
  }
}
Checks whether Traefik.me domains can be generated for a specific server in Dokploy.Annotations:
  • Read-only: true
  • Idempotent: true
serverId
string
required
The server ID to verify Traefik.me domain generation support for.
Example:
{
  "serverId": "server_123"
}
Response:
{
  "message": "Retrieved Traefik.me domain generation availability for server server_123",
  "data": {
    "canGenerate": true,
    "serverIp": "192.168.1.100"
  }
}

Common Use Cases

Creating a Domain with Let’s Encrypt SSL

{
  "tool": "domain-create",
  "input": {
    "host": "myapp.example.com",
    "https": true,
    "certificateType": "letsencrypt",
    "applicationId": "app_abc123",
    "stripPath": false
  }
}

Updating Domain Path Routing

{
  "tool": "domain-update",
  "input": {
    "domainId": "dom_xyz789",
    "host": "api.example.com",
    "path": "/api/v2",
    "https": true,
    "certificateType": "letsencrypt",
    "stripPath": true
  }
}

Generating a Traefik.me Domain

{
  "tool": "domain-generateDomain",
  "input": {
    "appName": "my-app",
    "serverId": "server_123"
  }
}

Build docs developers (and LLMs) love