Projects are the top-level organizational containers in Dokploy. Each project holds one or more environments (e.g., production, staging, preview), and each environment hosts applications, databases, and Compose stacks. The Projects API lets you create, update, duplicate, and remove projects, as well as manage the environments within them. Duplicating a project copies its entire service configuration into a new environment, making it simple to spin up staging clones.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Nettalco/dokploy/llms.txt
Use this file to discover all available pages before exploring further.
Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /project.create | Create a new project |
| GET | /project.one | Fetch a project by ID |
| GET | /project.all | List all projects |
| GET | /project.allForPermissions | List projects with permission metadata |
| GET | /project.search | Search projects by name or description |
| POST | /project.remove | Delete a project |
| POST | /project.update | Update a project |
| POST | /project.duplicate | Duplicate a project environment |
| POST | /environment.create | Create an environment inside a project |
| GET | /environment.one | Fetch an environment by ID |
| GET | /environment.byProjectId | List environments for a project |
| POST | /environment.remove | Delete an environment |
| POST | /environment.update | Update an environment |
| POST | /environment.duplicate | Duplicate an environment |
| GET | /environment.search | Search environments |
Key Endpoints
POST /project.create
Create a new project in your Dokploy organization.
Display name for the project.
Optional description of the project.
Default environment variables shared across all services in this project (newline-separated
KEY=VALUE pairs).Unique ID of the created project.
Display name of the project.
ISO timestamp of project creation.
POST /project.duplicate
Duplicate an environment from an existing project into a new or the same project. Optionally select which services to copy.
ID of the environment to duplicate.
Name for the new environment.
Optional description.
Copy all services into the new environment (default:
true).If
includeServices is false, specify individual services to copy. Each item requires id (string) and type (application, postgres, mysql, mariadb, mongo, redis, or compose).When
true, duplicate into the same project instead of creating a new one (default: false).POST /environment.create
Create a new environment within an existing project. Environments are isolated namespaces for services.
Display name for the environment (e.g.,
production, staging).ID of the parent project.
Optional description.
Unique ID of the created environment.
GET /project.search
Search projects by name or description with pagination support.
Full-text search query matching name or description.
Filter by exact or partial project name.
Maximum results to return (default:
20).Pagination offset (default:
0).POST /project.remove
Delete a project and all its environments and services.
ID of the project to delete.
Notes
Every application, database, and Compose stack belongs to an environment, not directly to a project. Always create an environment first, then create services inside it.