Customers
A Customer (often referred to as an "Organization") is the top-level entity in the platform that represents a legal body or an independent division. It serves as the primary container for billing, user management, and resource ownership.
All projects, resources, and costs are ultimately tied to a Customer. Users are granted permissions within the scope of a Customer or one of its child Projects.
Key Concepts
- Billing Root: Invoices are generated at the Customer level, aggregating costs from all its projects.
- Ownership: A Customer is owned by one or more users who have full administrative control over its properties, team, and projects.
- Team Management: Users can be added as team members to a Customer with specific roles (e.g., Owner, Manager), granting them permissions across the entire organization.
Operations Summary
| Method | Endpoint | Description |
|---|---|---|
| Core CRUD | ||
| GET | /api/customers/ |
List customers |
| GET | /api/customers/{uuid}/ |
Retrieve customer details |
| POST | /api/customers/ |
Create a new customer |
| PUT | /api/customers/{uuid}/ |
Update a customer |
| PATCH | /api/customers/{uuid}/ |
Partially update a customer |
| DELETE | /api/customers/{uuid}/ |
Delete a customer |
| User Management | ||
| GET | /api/customers/{uuid}/list_users/ |
List users |
| GET | /api/customers/{customer_uuid}/users/ |
List users of a customer |
| POST | /api/customers/{uuid}/add_user/ |
Add user |
| POST | /api/customers/{uuid}/delete_user/ |
Delete user |
| POST | /api/customers/{uuid}/update_user/ |
Update user |
| Compliance | ||
| GET | /api/customers/{customer_uuid}/project-metadata-compliance-details/ |
Get detailed project metadata compliance |
| GET | /api/customers/{customer_uuid}/project-metadata-compliance-overview/ |
Get project metadata compliance overview |
| GET | /api/customers/{customer_uuid}/project-metadata-compliance-projects/ |
List projects with compliance data |
| GET | /api/customers/{customer_uuid}/project-metadata-question-answers/ |
List questions with project answers |
| Configuration & Updates | ||
| POST | /api/customers/{uuid}/update_organization_groups/ |
Update organization groups for a customer |
| Data & Reporting | ||
| GET | /api/customers/countries/ |
Get list of available countries |
| GET | /api/customers/{uuid}/stats/ |
Get customer resource usage statistics |
Core CRUD
List customers
Retrieve a list of customers. The list is filtered based on the user's permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
- API Source:
customers_list
1 2 3 4 5 6 7 8 9 10 | |
| Name | Type | Description |
|---|---|---|
abbreviation |
string | |
agreement_number |
string | |
archived |
boolean | |
backend_id |
string | |
contact_details |
string | |
field |
array | |
name |
string | |
name_exact |
string | |
native_name |
string | |
o |
string | Which field to use when ordering the results. |
organization_group_name |
string | |
organization_group_uuid |
array | organization_group_uuid |
owned_by_current_user |
boolean | Return a list of customers where current user is owner. |
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, native name, abbreviation, domain, UUID, registration code or agreement number |
registration_code |
string |
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) | |
created |
string (date-time) | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
display_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string (uuid) | |
projects.name |
string | |
projects.image |
string (uri) | |
projects.resource_count |
integer | |
projects.end_date |
string (date) | The date is inclusive. Once reached, all project resource will be scheduled for termination. |
backend_id |
string | Organization identifier in another application. |
image |
string (uri) | |
blocked |
boolean | |
archived |
boolean | |
display_billing_info_in_projects |
boolean | |
default_tax_percent |
string (decimal) | |
accounting_start_date |
string (date-time) | |
projects_count |
integer | |
users_count |
integer | |
sponsor_number |
integer | External ID of the sponsor covering the costs |
country_name |
string | |
max_service_accounts |
integer | Maximum number of service accounts allowed |
project_metadata_checklist |
string (uuid) | |
grace_period_days |
integer | Number of extra days after project end date before resources are terminated |
name |
string | |
slug |
string | |
native_name |
string | |
abbreviation |
string | |
description |
string | |
contact_details |
string | |
agreement_number |
string | |
email |
string (email) | |
phone_number |
string | |
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. |
registration_code |
string | |
homepage |
string (uri) | |
domain |
string | |
vat_code |
string | VAT number |
postal |
string | |
address |
string | |
bank_name |
string | |
latitude |
number (double) | |
longitude |
number (double) | |
bank_account |
string | |
country |
any | |
notification_emails |
string | Comma-separated list of notification email addresses |
payment_profiles |
array of objects | |
payment_profiles.uuid |
string (uuid) | |
payment_profiles.url |
string (uri) | |
payment_profiles.name |
string | |
payment_profiles.organization_uuid |
string (uuid) | |
payment_profiles.organization |
string (uri) | |
payment_profiles.attributes |
object | |
payment_profiles.attributes.end_date |
string | |
payment_profiles.attributes.agreement_number |
string | |
payment_profiles.attributes.contract_sum |
integer | |
payment_profiles.payment_type |
string | Enum: fixed_price, invoices, payment_gw_monthly |
payment_profiles.payment_type_display |
string | |
payment_profiles.is_active |
boolean | |
customer_credit |
number (double) | |
customer_unallocated_credit |
number (double) | |
is_service_provider |
boolean | |
service_provider |
string (uri) | |
service_provider_uuid |
string (uuid) | |
call_managing_organization_uuid |
string | |
billing_price_estimate |
any |
Retrieve customer details
Fetch the details of a specific customer by its UUID.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
customers_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Name | Type |
|---|---|
field |
array |
200 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
display_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string (uuid) | |
projects.name |
string | |
projects.image |
string (uri) | |
projects.resource_count |
integer | |
projects.end_date |
string (date) | The date is inclusive. Once reached, all project resource will be scheduled for termination. |
backend_id |
string | Organization identifier in another application. |
image |
string (uri) | |
blocked |
boolean | |
archived |
boolean | |
display_billing_info_in_projects |
boolean | |
default_tax_percent |
string (decimal) | |
accounting_start_date |
string (date-time) | |
projects_count |
integer | |
users_count |
integer | |
sponsor_number |
integer | External ID of the sponsor covering the costs |
country_name |
string | |
max_service_accounts |
integer | Maximum number of service accounts allowed |
project_metadata_checklist |
string (uuid) | |
grace_period_days |
integer | Number of extra days after project end date before resources are terminated |
name |
string | |
slug |
string | |
native_name |
string | |
abbreviation |
string | |
description |
string | |
contact_details |
string | |
agreement_number |
string | |
email |
string (email) | |
phone_number |
string | |
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. |
registration_code |
string | |
homepage |
string (uri) | |
domain |
string | |
vat_code |
string | VAT number |
postal |
string | |
address |
string | |
bank_name |
string | |
latitude |
number (double) | |
longitude |
number (double) | |
bank_account |
string | |
country |
any | |
notification_emails |
string | Comma-separated list of notification email addresses |
payment_profiles |
array of objects | |
payment_profiles.uuid |
string (uuid) | |
payment_profiles.url |
string (uri) | |
payment_profiles.name |
string | |
payment_profiles.organization_uuid |
string (uuid) | |
payment_profiles.organization |
string (uri) | |
payment_profiles.attributes |
object | |
payment_profiles.attributes.end_date |
string | |
payment_profiles.attributes.agreement_number |
string | |
payment_profiles.attributes.contract_sum |
integer | |
payment_profiles.payment_type |
string | Enum: fixed_price, invoices, payment_gw_monthly |
payment_profiles.payment_type_display |
string | |
payment_profiles.is_active |
boolean | |
customer_credit |
number (double) | |
customer_unallocated_credit |
number (double) | |
is_service_provider |
boolean | |
service_provider |
string (uri) | |
service_provider_uuid |
string (uuid) | |
call_managing_organization_uuid |
string | |
billing_price_estimate |
any |
Create a new customer
A new customer can only be created by users with staff privilege.
1 2 3 4 5 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
- Model Source:
CustomerRequest - API Source:
customers_create
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Field | Type | Required | Description |
|---|---|---|---|
backend_id |
string | Organization identifier in another application. | |
image |
string (binary) | ||
blocked |
boolean | ||
archived |
boolean | ||
display_billing_info_in_projects |
boolean | ||
default_tax_percent |
string (decimal) | ||
accounting_start_date |
string (date-time) | ||
sponsor_number |
integer | External ID of the sponsor covering the costs | |
max_service_accounts |
integer | Maximum number of service accounts allowed | |
project_metadata_checklist |
string (uuid) | ||
grace_period_days |
integer | Number of extra days after project end date before resources are terminated | |
name |
string | ✓ | |
slug |
string | ||
native_name |
string | ||
abbreviation |
string | ||
description |
string | ||
contact_details |
string | ||
agreement_number |
string | ||
email |
string (email) | ||
phone_number |
string | ||
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. | |
registration_code |
string | ||
homepage |
string (uri) | ||
domain |
string | ||
vat_code |
string | VAT number | |
postal |
string | ||
address |
string | ||
bank_name |
string | ||
latitude |
number (double) | ||
longitude |
number (double) | ||
bank_account |
string | ||
country |
any | ||
notification_emails |
string | Comma-separated list of notification email addresses |
201 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
display_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string (uuid) | |
projects.name |
string | |
projects.image |
string (uri) | |
projects.resource_count |
integer | |
projects.end_date |
string (date) | The date is inclusive. Once reached, all project resource will be scheduled for termination. |
backend_id |
string | Organization identifier in another application. |
image |
string (uri) | |
blocked |
boolean | |
archived |
boolean | |
display_billing_info_in_projects |
boolean | |
default_tax_percent |
string (decimal) | |
accounting_start_date |
string (date-time) | |
projects_count |
integer | |
users_count |
integer | |
sponsor_number |
integer | External ID of the sponsor covering the costs |
country_name |
string | |
max_service_accounts |
integer | Maximum number of service accounts allowed |
project_metadata_checklist |
string (uuid) | |
grace_period_days |
integer | Number of extra days after project end date before resources are terminated |
name |
string | |
slug |
string | |
native_name |
string | |
abbreviation |
string | |
description |
string | |
contact_details |
string | |
agreement_number |
string | |
email |
string (email) | |
phone_number |
string | |
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. |
registration_code |
string | |
homepage |
string (uri) | |
domain |
string | |
vat_code |
string | VAT number |
postal |
string | |
address |
string | |
bank_name |
string | |
latitude |
number (double) | |
longitude |
number (double) | |
bank_account |
string | |
country |
any | |
notification_emails |
string | Comma-separated list of notification email addresses |
payment_profiles |
array of objects | |
payment_profiles.uuid |
string (uuid) | |
payment_profiles.url |
string (uri) | |
payment_profiles.name |
string | |
payment_profiles.organization_uuid |
string (uuid) | |
payment_profiles.organization |
string (uri) | |
payment_profiles.attributes |
object | |
payment_profiles.attributes.end_date |
string | |
payment_profiles.attributes.agreement_number |
string | |
payment_profiles.attributes.contract_sum |
integer | |
payment_profiles.payment_type |
string | Enum: fixed_price, invoices, payment_gw_monthly |
payment_profiles.payment_type_display |
string | |
payment_profiles.is_active |
boolean | |
customer_credit |
number (double) | |
customer_unallocated_credit |
number (double) | |
is_service_provider |
boolean | |
service_provider |
string (uri) | |
service_provider_uuid |
string (uuid) | |
call_managing_organization_uuid |
string | |
billing_price_estimate |
any |
Update a customer
Update the details of an existing customer. Requires customer owner or staff permissions.
1 2 3 4 5 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
- Model Source:
CustomerRequest - API Source:
customers_update
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required | Description |
|---|---|---|---|
backend_id |
string | Organization identifier in another application. | |
image |
string (binary) | ||
blocked |
boolean | ||
archived |
boolean | ||
display_billing_info_in_projects |
boolean | ||
default_tax_percent |
string (decimal) | ||
accounting_start_date |
string (date-time) | ||
sponsor_number |
integer | External ID of the sponsor covering the costs | |
max_service_accounts |
integer | Maximum number of service accounts allowed | |
project_metadata_checklist |
string (uuid) | ||
grace_period_days |
integer | Number of extra days after project end date before resources are terminated | |
name |
string | ✓ | |
slug |
string | ||
native_name |
string | ||
abbreviation |
string | ||
description |
string | ||
contact_details |
string | ||
agreement_number |
string | ||
email |
string (email) | ||
phone_number |
string | ||
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. | |
registration_code |
string | ||
homepage |
string (uri) | ||
domain |
string | ||
vat_code |
string | VAT number | |
postal |
string | ||
address |
string | ||
bank_name |
string | ||
latitude |
number (double) | ||
longitude |
number (double) | ||
bank_account |
string | ||
country |
any | ||
notification_emails |
string | Comma-separated list of notification email addresses |
200 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
display_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string (uuid) | |
projects.name |
string | |
projects.image |
string (uri) | |
projects.resource_count |
integer | |
projects.end_date |
string (date) | The date is inclusive. Once reached, all project resource will be scheduled for termination. |
backend_id |
string | Organization identifier in another application. |
image |
string (uri) | |
blocked |
boolean | |
archived |
boolean | |
display_billing_info_in_projects |
boolean | |
default_tax_percent |
string (decimal) | |
accounting_start_date |
string (date-time) | |
projects_count |
integer | |
users_count |
integer | |
sponsor_number |
integer | External ID of the sponsor covering the costs |
country_name |
string | |
max_service_accounts |
integer | Maximum number of service accounts allowed |
project_metadata_checklist |
string (uuid) | |
grace_period_days |
integer | Number of extra days after project end date before resources are terminated |
name |
string | |
slug |
string | |
native_name |
string | |
abbreviation |
string | |
description |
string | |
contact_details |
string | |
agreement_number |
string | |
email |
string (email) | |
phone_number |
string | |
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. |
registration_code |
string | |
homepage |
string (uri) | |
domain |
string | |
vat_code |
string | VAT number |
postal |
string | |
address |
string | |
bank_name |
string | |
latitude |
number (double) | |
longitude |
number (double) | |
bank_account |
string | |
country |
any | |
notification_emails |
string | Comma-separated list of notification email addresses |
payment_profiles |
array of objects | |
payment_profiles.uuid |
string (uuid) | |
payment_profiles.url |
string (uri) | |
payment_profiles.name |
string | |
payment_profiles.organization_uuid |
string (uuid) | |
payment_profiles.organization |
string (uri) | |
payment_profiles.attributes |
object | |
payment_profiles.attributes.end_date |
string | |
payment_profiles.attributes.agreement_number |
string | |
payment_profiles.attributes.contract_sum |
integer | |
payment_profiles.payment_type |
string | Enum: fixed_price, invoices, payment_gw_monthly |
payment_profiles.payment_type_display |
string | |
payment_profiles.is_active |
boolean | |
customer_credit |
number (double) | |
customer_unallocated_credit |
number (double) | |
is_service_provider |
boolean | |
service_provider |
string (uri) | |
service_provider_uuid |
string (uuid) | |
call_managing_organization_uuid |
string | |
billing_price_estimate |
any |
Partially update a customer
Partially update the details of an existing customer. Requires customer owner or staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
- Model Source:
PatchedCustomerRequest - API Source:
customers_partial_update
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required | Description |
|---|---|---|---|
backend_id |
string | Organization identifier in another application. | |
image |
string (binary) | ||
blocked |
boolean | ||
archived |
boolean | ||
display_billing_info_in_projects |
boolean | ||
default_tax_percent |
string (decimal) | ||
accounting_start_date |
string (date-time) | ||
sponsor_number |
integer | External ID of the sponsor covering the costs | |
max_service_accounts |
integer | Maximum number of service accounts allowed | |
project_metadata_checklist |
string (uuid) | ||
grace_period_days |
integer | Number of extra days after project end date before resources are terminated | |
name |
string | ||
slug |
string | ||
native_name |
string | ||
abbreviation |
string | ||
description |
string | ||
contact_details |
string | ||
agreement_number |
string | ||
email |
string (email) | ||
phone_number |
string | ||
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. | |
registration_code |
string | ||
homepage |
string (uri) | ||
domain |
string | ||
vat_code |
string | VAT number | |
postal |
string | ||
address |
string | ||
bank_name |
string | ||
latitude |
number (double) | ||
longitude |
number (double) | ||
bank_account |
string | ||
country |
any | ||
notification_emails |
string | Comma-separated list of notification email addresses |
200 -
| Field | Type | Description |
|---|---|---|
url |
string (uri) | |
uuid |
string (uuid) | |
created |
string (date-time) | |
organization_groups |
array of objects | |
organization_groups.uuid |
string (uuid) | |
organization_groups.url |
string (uri) | |
organization_groups.name |
string | |
organization_groups.parent_uuid |
string (uuid) | |
organization_groups.parent_name |
string | |
organization_groups.parent |
string (uri) | |
organization_groups.customers_count |
integer | |
display_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string (uuid) | |
projects.name |
string | |
projects.image |
string (uri) | |
projects.resource_count |
integer | |
projects.end_date |
string (date) | The date is inclusive. Once reached, all project resource will be scheduled for termination. |
backend_id |
string | Organization identifier in another application. |
image |
string (uri) | |
blocked |
boolean | |
archived |
boolean | |
display_billing_info_in_projects |
boolean | |
default_tax_percent |
string (decimal) | |
accounting_start_date |
string (date-time) | |
projects_count |
integer | |
users_count |
integer | |
sponsor_number |
integer | External ID of the sponsor covering the costs |
country_name |
string | |
max_service_accounts |
integer | Maximum number of service accounts allowed |
project_metadata_checklist |
string (uuid) | |
grace_period_days |
integer | Number of extra days after project end date before resources are terminated |
name |
string | |
slug |
string | |
native_name |
string | |
abbreviation |
string | |
description |
string | |
contact_details |
string | |
agreement_number |
string | |
email |
string (email) | |
phone_number |
string | |
access_subnets |
string | Enter a comma separated list of IPv4 or IPv6 CIDR addresses from where connection to self-service is allowed. |
registration_code |
string | |
homepage |
string (uri) | |
domain |
string | |
vat_code |
string | VAT number |
postal |
string | |
address |
string | |
bank_name |
string | |
latitude |
number (double) | |
longitude |
number (double) | |
bank_account |
string | |
country |
any | |
notification_emails |
string | Comma-separated list of notification email addresses |
payment_profiles |
array of objects | |
payment_profiles.uuid |
string (uuid) | |
payment_profiles.url |
string (uri) | |
payment_profiles.name |
string | |
payment_profiles.organization_uuid |
string (uuid) | |
payment_profiles.organization |
string (uri) | |
payment_profiles.attributes |
object | |
payment_profiles.attributes.end_date |
string | |
payment_profiles.attributes.agreement_number |
string | |
payment_profiles.attributes.contract_sum |
integer | |
payment_profiles.payment_type |
string | Enum: fixed_price, invoices, payment_gw_monthly |
payment_profiles.payment_type_display |
string | |
payment_profiles.is_active |
boolean | |
customer_credit |
number (double) | |
customer_unallocated_credit |
number (double) | |
is_service_provider |
boolean | |
service_provider |
string (uri) | |
service_provider_uuid |
string (uuid) | |
call_managing_organization_uuid |
string | |
billing_price_estimate |
any |
Delete a customer
Delete a customer. This action is only available to staff users. If a customer has any active projects, the deletion request will fail with a 409 Conflict response.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
customers_destroy
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
204 - No response body
User Management
List users
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
- API Source:
customers_list_users_list
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Name | Type | Description |
|---|---|---|
field |
array | Fields to include in response |
full_name |
string | User full name |
native_name |
string | User native name |
o |
array | Ordering fields |
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
role |
string (uuid) | Role UUID or name |
search_string |
string | Search string for user |
user |
string (uuid) | User UUID |
user_slug |
string | User slug |
user_url |
string | User URL |
username |
string | User username |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
created |
string (date-time) | |
expiration_time |
string (date-time) | |
role_name |
string | |
role_uuid |
string (uuid) | |
user_email |
string (email) | |
user_full_name |
string | |
user_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
user_uuid |
string (uuid) | |
user_image |
string (uri) | |
created_by_full_name |
string | |
created_by_uuid |
string (uuid) |
List users of a customer
Lists all users who have a role in the specified customer or any of its projects. Requires permissions to list customer users.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
- API Source:
customers_users_list
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required | Description |
|---|---|---|---|
customer_uuid |
string (uuid) | ✓ | UUID of the customer |
| Name | Type | Description |
|---|---|---|
agreement_date |
string (date-time) | Agreement date after |
civil_number |
string | |
date_joined |
string (date-time) | Date joined after |
description |
string | |
email |
string | |
field |
array | |
full_name |
string | Full name |
is_active |
boolean | |
job_title |
string | |
modified |
string (date-time) | Date modified after |
native_name |
string | |
o |
string | Ordering. Sort by a combination of first name, last name, and username. Enum: concatenated_name, -concatenated_name |
organization |
string | |
organization_role |
array | Filter by one or more organization roles. Select a standard role or provide a custom role string. Can be specified multiple times. |
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
phone_number |
string | |
project_role |
array | Filter by one or more project roles. Select a standard role or provide a custom role string. Can be specified multiple times. |
registration_method |
string | |
user_keyword |
string | User keyword |
username |
string |
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) | |
username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
full_name |
string | |
email |
string (email) | |
role_name |
string | |
projects |
array of objects | |
projects.url |
string (uri) | |
projects.uuid |
string | |
projects.name |
string | |
projects.role_name |
string | |
projects.expiration_time |
string (date-time) | |
expiration_time |
string (date-time) | |
image |
string (uri) |
Add user
1 2 3 4 5 6 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
- Model Source:
UserRoleCreateRequest - API Source:
customers_add_user
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
role |
string | ✓ |
user |
string (uuid) | ✓ |
expiration_time |
string (date-time) |
201 -
| Field | Type |
|---|---|
expiration_time |
string (date-time) |
400 -
| Field | Type | Description |
|---|---|---|
non_field_errors |
array of strings |
Delete user
1 2 3 4 5 6 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
- Model Source:
UserRoleDeleteRequest - API Source:
customers_delete_user
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
role |
string | ✓ |
user |
string (uuid) | ✓ |
expiration_time |
string (date-time) |
200 - No response body
Update user
1 2 3 4 5 6 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
- Model Source:
UserRoleUpdateRequest - API Source:
customers_update_user
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
role |
string | ✓ |
user |
string (uuid) | ✓ |
expiration_time |
string (date-time) |
200 -
| Field | Type |
|---|---|
expiration_time |
string (date-time) |
Compliance
Get detailed project metadata compliance
Provides detailed compliance status for all projects within a customer, including individual answers and completion status.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required | Description |
|---|---|---|---|
customer_uuid |
string (uuid) | ✓ | UUID of the customer |
| Name | Type | Description |
|---|---|---|
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type |
|---|---|
checklist |
any |
total_projects |
integer |
projects_with_completions |
integer |
fully_completed_projects |
integer |
projects_requiring_review |
integer |
project_details |
array of objects |
project_details.project_uuid |
string (uuid) |
project_details.project_name |
string |
project_details.completion_uuid |
string (uuid) |
project_details.completion_percentage |
number (double) |
project_details.is_completed |
boolean |
project_details.requires_review |
boolean |
project_details.answers |
array of anys |
project_details.unanswered_required_questions |
array of anys |
Get project metadata compliance overview
Provides aggregated statistics about project metadata compliance for all projects within a customer.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required | Description |
|---|---|---|---|
customer_uuid |
string (uuid) | ✓ | UUID of the customer |
| Name | Type | Description |
|---|---|---|
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type |
|---|---|
total_projects |
integer |
projects_with_completions |
integer |
fully_completed_projects |
integer |
projects_requiring_review |
integer |
average_completion_percentage |
number (double) |
List projects with compliance data
Provides a paginated list of projects with their checklist completion status and answer details.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required | Description |
|---|---|---|---|
customer_uuid |
string (uuid) | ✓ | UUID of the customer |
| Name | Type | Description |
|---|---|---|
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
project_uuid |
string (uuid) | |
project_name |
string | |
completion_uuid |
string | Get completion UUID. |
completion_percentage |
number (double) | Get completion percentage. |
is_completed |
boolean | Get completion status. |
requires_review |
boolean | Get review requirement status. |
answers_count |
integer | Get count of answers. |
unanswered_required_count |
integer | Get count of unanswered required questions. |
List questions with project answers
Provides a paginated list of all questions from the customer's compliance checklist, including the answers given in each project.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
- API Source:
customers_project_metadata_question_answers_list
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required | Description |
|---|---|---|---|
customer_uuid |
string (uuid) | ✓ | UUID of the customer |
| Name | Type | Description |
|---|---|---|
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
question_uuid |
string (uuid) | |
question_description |
string | |
question_type |
string | |
required |
boolean | |
order |
integer | |
min_value |
string (decimal) | |
max_value |
string (decimal) | |
total_projects |
integer | Get total projects count. |
answered_projects_count |
integer | Get count of projects that answered this question. |
project_answers |
array of objects | Get all project answers for this question. |
question_options |
array of objects | Get question options for select-type questions. |
Configuration & Updates
Update organization groups for a customer
Assigns a customer to one or more organization groups. This action is restricted to staff users.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
- Model Source:
OrganizationGroupsRequest - API Source:
customers_update_organization_groups
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required |
|---|---|---|
organization_groups |
array of string (uri)s |
200 - No response body
Data & Reporting
Get list of available countries
Returns a list of countries that can be used when creating or updating a customer. The list can be configured by the service provider.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
- API Source:
customers_countries_list
1 2 3 4 5 6 7 8 9 10 | |
| Name | Type | Description |
|---|---|---|
abbreviation |
string | |
agreement_number |
string | |
archived |
boolean | |
backend_id |
string | |
contact_details |
string | |
name |
string | |
name_exact |
string | |
native_name |
string | |
o |
string | Which field to use when ordering the results. |
organization_group_name |
string | |
organization_group_uuid |
array | organization_group_uuid |
owned_by_current_user |
boolean | Return a list of customers where current user is owner. |
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, native name, abbreviation, domain, UUID, registration code or agreement number |
registration_code |
string |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type |
|---|---|
label |
string |
value |
string |
Get customer resource usage statistics
Provides statistics about the resource usage (e.g., CPU, RAM, storage) for all projects within a customer. Can be filtered to show usage for the current month only.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
customers_stats_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Name | Type | Description |
|---|---|---|
for_current_month |
boolean | If true, returns usage data for the current month only. Otherwise, returns total usage. |
200 -
| Field | Type |
|---|---|
components |
array of objects |
components.type |
string |
components.name |
string |
components.description |
string |
components.measured_unit |
string |
components.billing_type |
string |
components.usage |
integer |
components.limit_usage |
integer |
components.limit |
integer |
components.offering_name |
string |
components.offering_uuid |
string (uuid) |