Skip to main content

Projects

Projects are the top-level organizational unit for your resources. Each project contains one or more environments (e.g., production, staging, development).

List Projects​

GET /api/v1/projects

Response:

{
"data": [
{
"uuid": "proj-abc123",
"name": "My SaaS App",
"description": "Production SaaS application",
"environments": [
{
"id": 1,
"name": "production",
"created_at": "2024-01-15T10:30:00Z"
},
{
"id": 2,
"name": "staging",
"created_at": "2024-01-20T08:00:00Z"
}
],
"created_at": "2024-01-15T10:30:00Z"
}
]
}

Get Project​

GET /api/v1/projects/{uuid}

Returns the project with all its environments and resource counts.

Create Project​

POST /api/v1/projects
{
"name": "My SaaS App",
"description": "Production SaaS application"
}
ParameterTypeRequiredDescription
namestringYesProject name
descriptionstringNoProject description

Response: 201 Created

{
"uuid": "proj-abc123",
"name": "My SaaS App",
"description": "Production SaaS application",
"environments": [
{
"id": 1,
"name": "production"
}
]
}

A default production environment is created automatically with every new project.

Update Project​

PATCH /api/v1/projects/{uuid}
{
"name": "Updated Project Name",
"description": "Updated description"
}

Delete Project​

DELETE /api/v1/projects/{uuid}
warning

Deleting a project removes all environments and resources within it. This action cannot be undone.

Response:

{
"message": "Project deleted."
}

Environments​

Environments provide logical separation within a project (e.g., production, staging, development).

List Environments​

GET /api/v1/projects/{uuid}/environments

Response:

{
"data": [
{
"id": 1,
"name": "production",
"created_at": "2024-01-15T10:30:00Z"
},
{
"id": 2,
"name": "staging",
"created_at": "2024-01-20T08:00:00Z"
}
]
}

Get Environment Details​

GET /api/v1/projects/{uuid}/{environment_name_or_uuid}

Returns environment details with all resources (applications, databases, services).

Create Environment​

POST /api/v1/projects/{uuid}/environments
{
"name": "staging"
}
ParameterTypeRequiredDescription
namestringYesEnvironment name (lowercase, alphanumeric, hyphens)

Response: 201 Created

{
"message": "Environment created.",
"data": {
"id": 2,
"name": "staging"
}
}

Delete Environment​

DELETE /api/v1/projects/{uuid}/environments/{environment_name_or_uuid}
warning

Deleting an environment removes all resources within it. This action cannot be undone.