Marketplace Resource Projects
Operations Summary
| Method | Endpoint | Description |
|---|---|---|
| Core CRUD | ||
| GET | /api/marketplace-resource-projects/ |
List Marketplace Resource Projects |
| GET | /api/marketplace-resource-projects/{uuid}/ |
Retrieve |
| POST | /api/marketplace-resource-projects/ |
Create |
| PUT | /api/marketplace-resource-projects/{uuid}/ |
Update |
| PATCH | /api/marketplace-resource-projects/{uuid}/ |
Partial Update |
| DELETE | /api/marketplace-resource-projects/{uuid}/ |
Delete |
| Permissions & Users | ||
| GET | /api/marketplace-resource-projects/{uuid}/list_users/ |
List users and their roles in a scope |
| POST | /api/marketplace-resource-projects/{uuid}/add_user/ |
Grant a role to a user |
| POST | /api/marketplace-resource-projects/{uuid}/delete_user/ |
Revoke a role from a user |
| POST | /api/marketplace-resource-projects/{uuid}/update_user/ |
Update a user's role expiration |
| Other Actions | ||
| POST | /api/marketplace-resource-projects/{uuid}/recover/ |
Recover a soft-deleted resource project |
Core CRUD
List Marketplace Resource Projects
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
- API Source:
marketplace_resource_projects_list
1 2 3 4 5 6 7 8 9 10 | |
| Name | Type | Description |
|---|---|---|
name |
string | |
page |
integer | A page number within the paginated result set. |
page_size |
integer | Number of results to return per page. |
resource |
string (uri) | Resource URL |
resource_uuid |
string (uuid) | Resource UUID |
200 -
The response body is an array of objects, where each object has the following structure:
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |
Retrieve
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
marketplace_resource_projects_retrieve
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
200 -
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |
Create
1 2 3 4 5 6 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
- Model Source:
ResourceProjectRequest - API Source:
marketplace_resource_projects_create
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
| Field | Type | Required | Description |
|---|---|---|---|
resource |
string (uuid) | ✓ | |
name |
string | ✓ | |
description |
string | ||
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
201 -
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |
Update
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:
ResourceProjectRequest - API Source:
marketplace_resource_projects_update
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 | Description |
|---|---|---|---|
resource |
string (uuid) | ✓ | |
name |
string | ✓ | |
description |
string | ||
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
200 -
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |
Partial Update
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
- Model Source:
PatchedResourceProjectRequest - API Source:
marketplace_resource_projects_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 |
|---|---|---|---|
resource |
string (uuid) | ||
name |
string | ||
description |
string | ||
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
200 -
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |
Delete
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
- API Source:
marketplace_resource_projects_destroy
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Name | Type | Description |
|---|---|---|
force |
boolean | Staff-only: when true, hard-delete the resource project instead of soft-deleting it. |
204 - No response body
Permissions & Users
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.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | |
- Model Source:
UserRoleDetailsFieldEnum - Model Source:
UserRoleDetailsOEnum - API Source:
marketplace_resource_projects_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) |
Grant a role to a user
Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set.
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:
marketplace_resource_projects_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 - Validation error, for example when trying to add a user to a terminated project.
Revoke a role from a user
Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role.
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:
marketplace_resource_projects_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 - Role revoked successfully.
Update a user's role expiration
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.
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:
marketplace_resource_projects_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) |
Other Actions
Recover a soft-deleted resource project
Flips is_removed back to False on a previously soft-deleted resource project. Optionally restores the team members captured at soft-delete time, or sends them new invitations. Pass ?include_removed=true on the lookup so the soft-deleted row can be resolved.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
- Model Source:
ResourceProjectRecoveryRequest - API Source:
marketplace_resource_projects_recover
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
| Name | Type | Required |
|---|---|---|
uuid |
string (uuid) | ✓ |
| Field | Type | Required | Description |
|---|---|---|---|
restore_team_members |
boolean | Recreate the UserRole rows captured at soft-delete time. Requires termination_metadata to be present (set on soft-deletes performed after the recovery feature shipped). Constraints: default: False |
|
send_invitations_to_previous_members |
boolean | Send invitations to users who had access before soft-delete. Mutually exclusive with restore_team_members. Constraints: default: False |
200 -
| Field | Type | Description |
|---|---|---|
uuid |
string (uuid) | |
resource |
string (uuid) | |
name |
string | |
description |
string | |
backend_id |
string | |
state |
string | |
error_message |
string | |
limits |
object (free-form) | Dictionary mapping component types to quota values. Same format as Resource.limits. |
current_usages |
object (free-form) | Dictionary mapping component types to current usage amounts. Populated by backend synchronization. |
resource_uuid |
string (uuid) | |
resource_name |
string | |
created |
string (date-time) | |
modified |
string (date-time) | |
is_removed |
boolean | |
removed_date |
string (date-time) | |
removed_by |
integer | |
removed_by_username |
string | Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters |
termination_metadata |
object (free-form) |