A Project is a workspace within a Customer used to organize cloud resources, manage team access, and track costs for a specific initiative or department. Every resource, such as a virtual machine or a database, must belong to a Project.
This entity acts as a scope for collaboration, allowing a subset of users from the parent Customer to work together with specific permissions.
Key Concepts
Hierarchical Structure: Every Project must belong to exactly one Customer. It cannot exist independently.
Resource Container: Projects are the direct parents of all provisioned resources in the cloud.
Team Collaboration: A Project has its own team of members with roles (e.g., Project Manager, Administrator) that are scoped only to that project.
Cost Tracking: While billing is handled by the parent Customer, costs are tracked on a per-project basis, enabling fine-grained financial reporting.
Return a list of projects where current user is admin.
can_manage
boolean
Return a list of projects where current user is manager or a customer owner.
conceal_finished_projects
boolean
Conceal finished projects
created
string (date-time)
Created after
customer
array
Multiple values may be separated by commas.
customer_abbreviation
string
Customer abbreviation
customer_name
string
Customer name
customer_native_name
string
Customer native name
description
string
Description
field
array
include_terminated
boolean
Include soft-deleted (terminated) projects. Only available to staff and support users, or users with organizational roles who can see their terminated projects.
is_removed
boolean
Is removed
modified
string (date-time)
Modified after
name
string
Name
name_exact
string
Name (exact)
o
array
Ordering
page
integer
A page number within the paginated result set.
page_size
integer
Number of results to return per page.
query
string
Filter by name, slug, UUID, backend ID or resource effective ID
slug
string
Slug
200 -
The response body is an array of objects, where each object has the following structure:
Field
Type
Description
url
string (uri)
uuid
string (uuid)
name
string
slug
string
customer
string (uri)
customer_uuid
string (uuid)
customer_name
string
customer_slug
string
customer_native_name
string
customer_abbreviation
string
description
string
customer_display_billing_info_in_projects
boolean
created
string (date-time)
type
string (uri)
type_name
string
type_uuid
string (uuid)
backend_id
string
start_date
string (date)
end_date
string (date)
end_date_requested_by
string (uri)
oecd_fos_2007_code
any
oecd_fos_2007_label
string
is_industry
boolean
image
string (uri)
resources_count
integer
max_service_accounts
integer
Maximum number of service accounts allowed
kind
any
is_removed
boolean
termination_metadata
any
staff_notes
string
grace_period_days
integer
Number of extra days after project end date before resources are terminated. Overrides customer-level setting.
project_credit
number (double)
marketplace_resource_count
object (free-form)
billing_price_estimate
any
Retrieve project details
Fetch the details of a specific project by its UUID. Users can access details of terminated projects they previously had access to.
Number of extra days after project end date before resources are terminated. Overrides customer-level setting.
200 -
Field
Type
Description
url
string (uri)
uuid
string (uuid)
name
string
slug
string
customer
string (uri)
customer_uuid
string (uuid)
customer_name
string
customer_slug
string
customer_native_name
string
customer_abbreviation
string
description
string
customer_display_billing_info_in_projects
boolean
created
string (date-time)
type
string (uri)
type_name
string
type_uuid
string (uuid)
backend_id
string
start_date
string (date)
end_date
string (date)
end_date_requested_by
string (uri)
oecd_fos_2007_code
any
oecd_fos_2007_label
string
is_industry
boolean
image
string (uri)
resources_count
integer
max_service_accounts
integer
Maximum number of service accounts allowed
kind
any
is_removed
boolean
termination_metadata
any
staff_notes
string
grace_period_days
integer
Number of extra days after project end date before resources are terminated. Overrides customer-level setting.
project_credit
number (double)
marketplace_resource_count
object (free-form)
billing_price_estimate
any
Delete a project
Delete a project. If the project has any active resources, the deletion request will fail with a 409 Conflict response. This action performs a soft-delete, and the project can be recovered later.
Recovers a soft-deleted (terminated) project, making it active again. Provides options to restore previous team members automatically (staff-only) or send them new invitations.
Whether to automatically restore team members who had access before project deletion (staff only) Constraints: default: False
send_invitations_to_previous_members
boolean
Whether to send invitations to users who had access before project deletion Constraints: default: False
end_date
string (date)
End date for the recovered project
200 -
Field
Type
Description
url
string (uri)
uuid
string (uuid)
name
string
slug
string
customer
string (uri)
customer_uuid
string (uuid)
customer_name
string
customer_slug
string
customer_native_name
string
customer_abbreviation
string
description
string
customer_display_billing_info_in_projects
boolean
created
string (date-time)
type
string (uri)
type_name
string
type_uuid
string (uuid)
backend_id
string
start_date
string (date)
end_date
string (date)
end_date_requested_by
string (uri)
oecd_fos_2007_code
any
oecd_fos_2007_label
string
is_industry
boolean
image
string (uri)
resources_count
integer
max_service_accounts
integer
Maximum number of service accounts allowed
kind
any
is_removed
boolean
termination_metadata
any
staff_notes
string
grace_period_days
integer
Number of extra days after project end date before resources are terminated. Overrides customer-level setting.
project_credit
number (double)
marketplace_resource_count
object (free-form)
billing_price_estimate
any
User Management
List users and their roles in a scope
Retrieves a list of users who have a role within a specific scope (e.g., a project or an organization). The list can be filtered by user details or role.
Updates the expiration time for a user's existing role in the current scope. This is useful for extending or shortening the duration of a permission. To make a role permanent, set expiration_time to null.
Moves a project and its associated resources to a different customer. This is a staff-only action. You can choose whether to preserve existing project permissions for users.
Number of extra days after project end date before resources are terminated. Overrides customer-level setting.
project_credit
number (double)
marketplace_resource_count
object (free-form)
billing_price_estimate
any
400 -
Field
Type
Description
non_field_errors
array of strings
Data & Reporting
Get project resource usage statistics
Provides statistics about the resource usage (e.g., CPU, RAM, storage) for all resources within a project. Can be filtered to show usage for the current month only.
List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
questions.allowed_mime_types
any
List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
questions.max_file_size_mb
integer
Maximum file size in megabytes. If not set, no size limit is enforced.
questions.max_files_count
integer
Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
UUID of the parent object (e.g., customer UUID for new projects)
200 -
Field
Type
Description
checklist
object (free-form)
questions
array of objects
questions.uuid
string (uuid)
questions.required
boolean
questions.description
string
questions.user_guidance
string
Additional guidance text visible to users when answering and reviewing
questions.question_options
array of objects
questions.question_options.uuid
string (uuid)
questions.question_options.label
string
questions.question_options.order
integer
questions.question_type
any
Type of question and expected answer format
questions.order
integer
questions.min_value
string (decimal)
Minimum value allowed for NUMBER type questions
questions.max_value
string (decimal)
Maximum value allowed for NUMBER type questions
questions.allowed_file_types
any
List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
questions.allowed_mime_types
any
List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
questions.max_file_size_mb
integer
Maximum file size in megabytes. If not set, no size limit is enforced.
questions.max_files_count
integer
Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
questions.operator
any
questions.review_answer_value
any
Answer value that trigger review.
questions.always_requires_review
boolean
This question always requires review regardless of answer
questions.guidance_answer_value
any
Answer value that triggers display of user guidance.
questions.guidance_operator
any
Operator to use when comparing answer with guidance_answer_value
questions.always_show_guidance
boolean
Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator
questions.dependency_logic_operator
any
Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.
initial_visible_questions
array of objects
initial_visible_questions.uuid
string (uuid)
initial_visible_questions.required
boolean
initial_visible_questions.description
string
initial_visible_questions.user_guidance
string
Additional guidance text visible to users when answering and reviewing
initial_visible_questions.question_options
array of objects
initial_visible_questions.question_options.uuid
string (uuid)
initial_visible_questions.question_options.label
string
initial_visible_questions.question_options.order
integer
initial_visible_questions.question_type
any
Type of question and expected answer format
initial_visible_questions.order
integer
initial_visible_questions.min_value
string (decimal)
Minimum value allowed for NUMBER type questions
initial_visible_questions.max_value
string (decimal)
Maximum value allowed for NUMBER type questions
initial_visible_questions.allowed_file_types
any
List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
initial_visible_questions.allowed_mime_types
any
List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
initial_visible_questions.max_file_size_mb
integer
Maximum file size in megabytes. If not set, no size limit is enforced.
initial_visible_questions.max_files_count
integer
Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
initial_visible_questions.operator
any
initial_visible_questions.review_answer_value
any
Answer value that trigger review.
initial_visible_questions.always_requires_review
boolean
This question always requires review regardless of answer
initial_visible_questions.guidance_answer_value
any
Answer value that triggers display of user guidance.
initial_visible_questions.guidance_operator
any
Operator to use when comparing answer with guidance_answer_value
initial_visible_questions.always_show_guidance
boolean
Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator