Get Application Details
curl https://your-dokploy-instance.com/api/application.one?applicationId=cm5r8k9p00001xyz \
-H "Authorization: Bearer YOUR_API_TOKEN"
{
"applicationId": "cm5r8k9p00001xyz",
"name": "My Web App",
"appName": "my-web-app",
"description": "Production web application",
"sourceType": "github",
"buildType": "nixpacks",
"applicationStatus": "done",
"replicas": 1,
"env": "NODE_ENV=production\nPORT=3000",
"buildArgs": null,
"buildSecrets": null,
"memoryLimit": "512m",
"memoryReservation": "256m",
"cpuLimit": "1.0",
"cpuReservation": "0.5",
"repository": "my-app",
"owner": "my-org",
"branch": "main",
"buildPath": "/",
"dockerfile": "Dockerfile",
"dockerContextPath": null,
"dockerBuildStage": null,
"autoDeploy": true,
"createdAt": "2024-01-15T10:30:00.000Z",
"refreshToken": "abc123def456",
"environmentId": "cm5r8k9p00002xyz",
"serverId": "cm5r8k9p00003xyz",
"githubId": "cm5r8k9p00004xyz",
"hasGitProviderAccess": true,
"unauthorizedProvider": null,
"environment": {
"environmentId": "cm5r8k9p00002xyz",
"name": "production",
"projectId": "cm5r8k9p00005xyz",
"project": {
"projectId": "cm5r8k9p00005xyz",
"name": "My Project",
"organizationId": "cm5r8k9p00006xyz"
}
},
"deployments": [],
"domains": [],
"ports": [],
"mounts": []
}
Retrieves detailed information about an application, including configuration, status, and related resources.
Endpoint
Query Parameters
Unique identifier of the application to retrieve.Example: "cm5r8k9p00001xyz"
Response Fields
Unique identifier for the application.
Display name of the application.
Internal application name used for Docker containers.
Current status: idle, running, done, or error.
ISO 8601 timestamp when the application was created.
Show Source Configuration
Source provider type: github, gitlab, bitbucket, gitea, docker, git, or drop.
Repository name (for GitHub/GitLab/Bitbucket/Gitea).
Repository owner or organization.
Path within repository to build from.
Docker image name (when sourceType is docker).
Whether the current user has access to the configured Git provider.
Name of provider user doesn’t have access to, or null if authorized.
Build strategy: nixpacks, dockerfile, heroku_buildpacks, paketo_buildpacks, railpack, or static.
Path to Dockerfile (when buildType is dockerfile).
Docker build context path.
Docker multi-stage build target stage.
Directory to publish for static sites.
Whether this is a static single-page application.
Show Environment & Resources
Environment variables (newline-separated KEY=VALUE pairs).
Memory limit (e.g., "512m", "1g").
Memory reservation (guaranteed memory).
CPU limit (e.g., "1.0" = 1 CPU core).
CPU reservation (guaranteed CPU).
Number of application replicas.
Environment object containing project information.
Array of deployment records.
Array of configured domains.
Update Application
curl -X POST https://your-dokploy-instance.com/api/application.update \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"applicationId": "cm5r8k9p00001xyz",
"name": "My Updated App",
"description": "Updated description",
"memoryLimit": "1g",
"cpuLimit": "2.0",
"replicas": 2,
"autoDeploy": false
}'
Updates application configuration. You can update any field except serverId. Most configuration changes require a redeploy to take effect.
Endpoint
Request Body
Unique identifier of the application to update.
All other fields from the application schema are optional and can be updated:
Display name of the application.
Internal application name. Must be unique.
Memory limit (e.g., "512m", "1g", "2g").
CPU limit (e.g., "0.5", "1.0", "2.0").
Enable/disable automatic deployments on git push.
Override container command.
Container command arguments.
See the full application schema in the Create Application endpoint for all available fields.
Start Application
curl -X POST https://your-dokploy-instance.com/api/application.start \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationId": "cm5r8k9p00001xyz"}'
{
"applicationId": "cm5r8k9p00001xyz",
"applicationStatus": "done"
}
Starts a stopped application container. The application status is updated to done.
Endpoint
Request Body
Unique identifier of the application to start.
Stop Application
curl -X POST https://your-dokploy-instance.com/api/application.stop \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationId": "cm5r8k9p00001xyz"}'
{
"applicationId": "cm5r8k9p00001xyz",
"applicationStatus": "idle"
}
Stops a running application container. The application status is updated to idle.
Endpoint
Request Body
Unique identifier of the application to stop.
Reload Application
curl -X POST https://your-dokploy-instance.com/api/application.reload \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"applicationId": "cm5r8k9p00001xyz",
"appName": "my-web-app"
}'
Reloads the application container configuration without rebuilding. Useful for applying Traefik configuration changes.
Endpoint
Request Body
Unique identifier of the application to reload.
Internal application name.
Delete Application
curl -X POST https://your-dokploy-instance.com/api/application.delete \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationId": "cm5r8k9p00001xyz"}'
{
"applicationId": "cm5r8k9p00001xyz",
"name": "My Web App",
"appName": "my-web-app"
}
Permanently deletes an application and all associated resources including:
- Application containers
- Deployment records
- Source code directory
- Monitoring data
- Traefik configuration
- Middlewares
Endpoint
Request Body
Unique identifier of the application to delete.
This action is irreversible. All application data, deployment history, and configurations will be permanently deleted.
Move Application
curl -X POST https://your-dokploy-instance.com/api/application.move \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"applicationId": "cm5r8k9p00001xyz",
"targetEnvironmentId": "cm5r8k9p00007xyz"
}'
{
"applicationId": "cm5r8k9p00001xyz",
"environmentId": "cm5r8k9p00007xyz"
}
Moves an application to a different environment within the same organization.
Endpoint
Request Body
Unique identifier of the application to move.
ID of the environment to move the application to.
Refresh Token
curl -X POST https://your-dokploy-instance.com/api/application.refreshToken \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"applicationId": "cm5r8k9p00001xyz"}'
Generates a new refresh token for the application. This token is used for webhook-based deployments.
Endpoint
POST /application.refreshToken
Request Body
Unique identifier of the application.
Best Practices
Always retrieve the current application state before making updates to avoid overwriting recent changes.
Most configuration changes (memory limits, CPU limits, environment variables) require a redeploy to take effect.
The appName field must remain unique. If you change it, ensure no other application is using that name.