{ "openapi": "3.0.3", "info": { "title": "Dokploy API", "description": "Complete API documentation for Dokploy - Deploy applications, manage databases, and orchestrate your infrastructure. This API allows you to programmatically manage all aspects of your Dokploy instance.", "version": "1.0.0", "contact": { "name": "Dokploy Team", "url": "https://dokploy.com" }, "license": { "name": "Apache 2.0", "url": "https://github.com/dokploy/dokploy/blob/canary/LICENSE" } }, "servers": [ { "url": "https://your-dokploy-instance.com/api" } ], "paths": { "/admin.setupMonitoring": { "post": { "operationId": "admin-setupMonitoring", "tags": ["admin"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "metricsConfig": { "type": "object", "properties": { "server": { "type": "object", "properties": { "refreshRate": { "type": "number", "minimum": 2 }, "port": { "type": "number", "minimum": 1 }, "token": { "type": "string" }, "urlCallback": { "type": "string", "format": "uri" }, "retentionDays": { "type": "number", "minimum": 1 }, "cronJob": { "type": "string", "minLength": 1 }, "thresholds": { "type": "object", "properties": { "cpu": { "type": "number", "minimum": 0 }, "memory": { "type": "number", "minimum": 0 } }, "required": ["cpu", "memory"], "additionalProperties": false } }, "required": [ "refreshRate", "port", "token", "urlCallback", "retentionDays", "cronJob", "thresholds" ], "additionalProperties": false }, "containers": { "type": "object", "properties": { "refreshRate": { "type": "number", "minimum": 2 }, "services": { "type": "object", "properties": { "include": { "type": "array", "items": { "type": "string" } }, "exclude": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false } }, "required": ["refreshRate", "services"], "additionalProperties": false } }, "required": ["server", "containers"], "additionalProperties": false } }, "required": ["metricsConfig"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainers": { "get": { "operationId": "docker-getContainers", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.restartContainer": { "post": { "operationId": "docker-restartContainer", "tags": ["docker"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "containerId": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, "required": ["containerId"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getConfig": { "get": { "operationId": "docker-getConfig", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "containerId", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainersByAppNameMatch": { "get": { "operationId": "docker-getContainersByAppNameMatch", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appType", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string", "enum": ["stack"] }, { "type": "string", "enum": ["docker-compose"] } ] } }, { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainersByAppLabel": { "get": { "operationId": "docker-getContainersByAppLabel", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } }, { "name": "type", "in": "query", "required": true, "schema": { "type": "string", "enum": ["standalone", "swarm"] } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getStackContainersByAppName": { "get": { "operationId": "docker-getStackContainersByAppName", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getServiceContainersByAppName": { "get": { "operationId": "docker-getServiceContainersByAppName", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/project.create": { "post": { "operationId": "project-create", "tags": ["project"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "description": { "type": "string", "nullable": true }, "env": { "type": "string" } }, "required": ["name"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": {Lines 1–500 of 20004. Load more
{ "openapi": "3.0.3", "info": { "title": "Dokploy API", "description": "Complete API documentation for Dokploy - Deploy applications, manage databases, and orchestrate your infrastructure. This API allows you to programmatically manage all aspects of your Dokploy instance.", "version": "1.0.0", "contact": { "name": "Dokploy Team", "url": "https://dokploy.com" }, "license": { "name": "Apache 2.0", "url": "https://github.com/dokploy/dokploy/blob/canary/LICENSE" } }, "servers": [ { "url": "https://your-dokploy-instance.com/api" } ], "paths": { "/admin.setupMonitoring": { "post": { "operationId": "admin-setupMonitoring", "tags": ["admin"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "metricsConfig": { "type": "object", "properties": { "server": { "type": "object", "properties": { "refreshRate": { "type": "number", "minimum": 2 }, "port": { "type": "number", "minimum": 1 }, "token": { "type": "string" }, "urlCallback": { "type": "string", "format": "uri" }, "retentionDays": { "type": "number", "minimum": 1 }, "cronJob": { "type": "string", "minLength": 1 }, "thresholds": { "type": "object", "properties": { "cpu": { "type": "number", "minimum": 0 }, "memory": { "type": "number", "minimum": 0 } }, "required": ["cpu", "memory"], "additionalProperties": false } }, "required": [ "refreshRate", "port", "token", "urlCallback", "retentionDays", "cronJob", "thresholds" ], "additionalProperties": false }, "containers": { "type": "object", "properties": { "refreshRate": { "type": "number", "minimum": 2 }, "services": { "type": "object", "properties": { "include": { "type": "array", "items": { "type": "string" } }, "exclude": { "type": "array", "items": { "type": "string" } } }, "additionalProperties": false } }, "required": ["refreshRate", "services"], "additionalProperties": false } }, "required": ["server", "containers"], "additionalProperties": false } }, "required": ["metricsConfig"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainers": { "get": { "operationId": "docker-getContainers", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.restartContainer": { "post": { "operationId": "docker-restartContainer", "tags": ["docker"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "containerId": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, "required": ["containerId"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getConfig": { "get": { "operationId": "docker-getConfig", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "containerId", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainersByAppNameMatch": { "get": { "operationId": "docker-getContainersByAppNameMatch", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appType", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string", "enum": ["stack"] }, { "type": "string", "enum": ["docker-compose"] } ] } }, { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getContainersByAppLabel": { "get": { "operationId": "docker-getContainersByAppLabel", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } }, { "name": "type", "in": "query", "required": true, "schema": { "type": "string", "enum": ["standalone", "swarm"] } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getStackContainersByAppName": { "get": { "operationId": "docker-getStackContainersByAppName", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/docker.getServiceContainersByAppName": { "get": { "operationId": "docker-getServiceContainersByAppName", "tags": ["docker"], "security": [ { "Authorization": [] } ], "parameters": [ { "name": "appName", "in": "query", "required": true, "schema": { "type": "string", "minLength": 1, "pattern": "^[a-zA-Z0-9.\\-_]+$" } }, { "name": "serverId", "in": "query", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": { "$ref": "#/components/responses/error" } } } }, "/project.create": { "post": { "operationId": "project-create", "tags": ["project"], "security": [ { "Authorization": [] } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "description": { "type": "string", "nullable": true }, "env": { "type": "string" } }, "required": ["name"], "additionalProperties": false } } } }, "parameters": [], "responses": { "200": { "description": "Successful response", "content": { "application/json": {} } }, "default": {