ControlUp Roles API
The Roles API from ControlUp — 2 operation(s) for roles.
The Roles API from ControlUp — 2 operation(s) for roles.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/controlup-roles-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Dex Roles API
version: 1.0.0
description: Dex API Description
contact: {}
servers:
- url: https://api.controlup.com/v1
tags:
- name: Roles
paths:
/organizations/{orgId}/roles:
get:
operationId: OrgRolesPublicController_getAll
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllRolesResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__'
'401':
description: 'Unauthorized: Access is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__'
'403':
description: 'Forbidden: Access to this resource is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__'
'404':
description: 'Not Found: The requested resource could not be found'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound__'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError__'
description: Returns a list of all roles.
summary: List all roles
tags:
- Roles
security:
- apiKey: []
parameters:
- description: 'The page of results to return.
The first page is page number 1.'
in: query
name: _page
required: false
schema:
default: '1'
format: int32
type: integer
minimum: 1
example: 1
style: form
- description: The number of results returned per page.
in: query
name: _limit
required: false
schema:
default: '10'
format: int32
type: integer
minimum: 1
example: 10
style: form
- description: Sorts results according to the specified field.
in: query
name: _sortBy
required: false
schema:
default: id
type: string
enum:
- description
- id
- createdAt
- updatedAt
- name
- isDefault
- childOrganizationIds
example: id
style: form
- description: The sort order (ascending / descending) of the field specified by the `_sortBy` parameter.
in: query
name: _order
required: false
schema:
default: asc
type: string
enum:
- asc
- desc
example: asc
style: form
- description: 'A search filter that is applied to all fields.
Only results that contain the specified string are returned.'
in: query
name: _search
required: false
schema:
type: string
style: form
- description: The format of returned results.
in: query
name: _format
required: false
schema:
default: json
type: string
enum:
- json
- xml
- csv
example: json
style: form
- description: ID of your ControlUp organization. You can find your organization ID on the [API Key Management page](how-to-make-api-requests#how-to-find-your-controlup-organization-id) in the DEX platform.
in: path
name: orgId
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: 'Filter roles by a specific tenant manager child organization ID.
Returns roles that apply to this child organization (either roles with no specific child organizations, or roles that include this child organization).'
in: query
name: childOrganizationId
required: false
schema:
type: string
style: form
- description: A search filter on the `isDefault` field.
in: query
name: isDefault
required: false
schema:
type: array
items:
type: boolean
style: form
- description: A search filter on the `description` field.
in: query
name: description
required: false
schema:
type: array
items:
$ref: '#/components/schemas/NonEmptyString'
style: form
- description: A search filter on the `name` field.
in: query
name: name
required: false
schema:
type: array
items:
$ref: '#/components/schemas/NonEmptyString'
style: form
- description: A search filter on the `id` field.
in: query
name: id
required: false
schema:
type: array
items:
$ref: '#/components/schemas/NonEmptyString'
style: form
post:
operationId: OrgRolesPublicController_create
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRoleResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__'
'401':
description: 'Unauthorized: Access is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__'
'403':
description: 'Forbidden: Access to this resource is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__'
'404':
description: 'Not Found: The requested resource could not be found'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound__'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError__'
description: Creates a new role.
summary: Create a role
tags:
- Roles
security:
- apiKey: []
parameters:
- description: ID of your ControlUp organization. You can find your organization ID on the [API Key Management page](how-to-make-api-requests#how-to-find-your-controlup-organization-id) in the DEX platform.
in: path
name: orgId
required: true
schema:
$ref: '#/components/schemas/UUID'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RoleToCreate'
/organizations/{orgId}/roles/{id}:
get:
operationId: OrgRolesPublicController_getOneById
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/GetRoleResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__'
'401':
description: 'Unauthorized: Access is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__'
'403':
description: 'Forbidden: Access to this resource is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__'
'404':
description: 'Not Found: The requested resource could not be found'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound__'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError__'
description: Returns the details for a role, including the permissions within the role and the users to which the role is assigned.
summary: Retrieve a role
tags:
- Roles
security:
- apiKey: []
parameters:
- description: The format of returned results.
in: query
name: _format
required: false
schema:
default: json
type: string
enum:
- json
- xml
- csv
example: json
style: form
- description: ID of your ControlUp organization. You can find your organization ID on the [API Key Management page](how-to-make-api-requests#how-to-find-your-controlup-organization-id) in the DEX platform.
in: path
name: orgId
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: 'ID of the role to retrieve. You can use [GET /roles](orgrolespubliccontroller_getall) to see the ID of each role.
Default role IDs:
* Admin - 1
* Editor - 2
* Viewer - 3
* No Permissions - 4
* VDI and DaaS Admins - 5
* Access Real-Time DX Console - 6'
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/PositiveInteger'
patch:
operationId: OrgRolesPublicController_update
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/CreateRoleResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__'
'401':
description: 'Unauthorized: Access is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__'
'403':
description: 'Forbidden: Access to this resource is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__'
'404':
description: 'Not Found: The requested resource could not be found'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound__'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError__'
description: Updates an existing role by its ID.
summary: Update a role
tags:
- Roles
security:
- apiKey: []
parameters:
- description: ID of your ControlUp organization. You can find your organization ID on the [API Key Management page](how-to-make-api-requests#how-to-find-your-controlup-organization-id) in the DEX platform.
in: path
name: orgId
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: ID of the role to update. You can use [GET /roles](orgrolespubliccontroller_getall) to see the ID of each role.
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/PositiveInteger'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RoleToUpdate'
delete:
operationId: OrgRolesPublicController_delete
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/APIResponse_DeletedActionResponse_'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__'
'401':
description: 'Unauthorized: Access is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__'
'403':
description: 'Forbidden: Access to this resource is denied'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__'
'404':
description: 'Not Found: The requested resource could not be found'
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound__'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponseBody_ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError__'
description: 'Deletes a role.
If you delete a role, then the role is removed from any users/groups that are assigned the role.'
summary: Delete a role
tags:
- Roles
security:
- apiKey: []
parameters:
- description: ID of your ControlUp organization. You can find your organization ID on the [API Key Management page](how-to-make-api-requests#how-to-find-your-controlup-organization-id) in the DEX platform.
in: path
name: orgId
required: true
schema:
$ref: '#/components/schemas/UUID'
- description: ID of the role to delete. You can use [GET /roles](orgrolespubliccontroller_getall) to see the ID of each role.
in: path
name: id
required: true
schema:
$ref: '#/components/schemas/PositiveInteger'
components:
schemas:
CHATBOT:
enum:
- access_chatbot
type: string
GetRoleResponse:
$ref: '#/components/schemas/APIResponse_RoleWithData_'
example:
id: 1
name: Admin
description: null
isDefault: true
usersIds:
- d1cb6131-7361-4e39-84c7-049e06921a18
- 775448cf-4f16-472d-904a-2983c10b380e
groupsIds:
- 69cdd6bc-e81f-4c0e-8f21-a8f35ce4763c
- 991419b2-cd58-408c-a5e4-4675916941d5
permissions:
- permissionTreeName: dex_access_control
selectedPermissions:
- id: view_settings
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_users
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_roles
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_sso_access
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
customer_success_hub:
items:
$ref: '#/components/schemas/CUSTOMER_SUCCESS_HUB'
type: array
description: The "Customer Success Hub" permission category.
api_keys:
items:
$ref: '#/components/schemas/API_KEYS'
type: array
description: The "API keys" permission category.
ErrorCode.Forbidden:
enum:
- 4
type: number
REMEDIATION_FLOW:
enum:
- manage_remediation_flow_mappings
- view_remediation_flow_mappings
type: string
chatbot:
items:
$ref: '#/components/schemas/CHATBOT'
type: array
description: The "Chatbot" permission category.
APP_DX:
enum:
- access_app_dx
- configure_app_dx
type: string
edge_asset_library:
items:
$ref: '#/components/schemas/EDGE_ASSET_LIBRARY'
type: array
description: The "Media Library" permission category.
ErrorResponseBody_ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized__:
properties:
metadata:
$ref: '#/components/schemas/ErrorResponseMetadata'
error:
$ref: '#/components/schemas/ErrorType_ErrorMessage.Unauthorized.HttpStatusCode.UNAUTHORIZED.ErrorCode.Unauthorized_'
required:
- error
- metadata
type: object
ErrorType_ErrorMessage.NotFound.HttpStatusCode.NOT_FOUND.ErrorCode.NotFound_:
properties:
message:
$ref: '#/components/schemas/ErrorMessage.NotFound'
code:
$ref: '#/components/schemas/ErrorCode.NotFound'
status:
$ref: '#/components/schemas/HttpStatusCode.NOT_FOUND'
data:
additionalProperties: true
type: object
required:
- status
- code
- message
type: object
PaginatedResponseMetadata:
properties:
total:
type: number
format: double
description: The total number of results across all pages.
limitPerPage:
type: number
format: double
description: The maximum number of results returned per page (set by the `_limit` parameter).
currentPageNumber:
type: number
format: double
description: The page of result returned (set by the `_page` parameter).
currentPageSize:
type: number
format: double
description: The number of results on the current page.
remaining:
type: number
format: double
description: The total number of results on all pages higher than the current page.
required:
- remaining
- currentPageSize
- currentPageNumber
- limitPerPage
- total
type: object
example:
total: 18
limitPerPage: 10
currentPageNumber: 1
currentPageSize: 10
remaining: 8
reports:
items:
$ref: '#/components/schemas/REPORTS'
type: array
description: The "Reports" permission category.
ErrorType_ErrorMessage.InternalServerError.HttpStatusCode.INTERNAL_SERVER_ERROR.ErrorCode.InternalServerError_:
properties:
message:
$ref: '#/components/schemas/ErrorMessage.InternalServerError'
code:
$ref: '#/components/schemas/ErrorCode.InternalServerError'
status:
$ref: '#/components/schemas/HttpStatusCode.INTERNAL_SERVER_ERROR'
data:
additionalProperties: true
type: object
required:
- status
- code
- message
type: object
ErrorMessage.Unauthorized:
enum:
- Unauthorized
type: string
ErrorMessage.InternalServerError:
enum:
- Internal Server Error
type: string
APIResponse_RoleWithData_:
properties:
data:
allOf:
- $ref: '#/components/schemas/RoleWithData'
required:
- data
type: object
HttpStatusCode.FORBIDDEN:
enum:
- 403
type: number
NonEmptyString:
type: string
minLength: 1
ErrorResponseBody_ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes__:
properties:
metadata:
$ref: '#/components/schemas/ErrorResponseMetadata'
error:
$ref: '#/components/schemas/ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes_'
required:
- error
- metadata
type: object
SECURITY_RISK_MANAGEMENT:
enum:
- sdx_overview
- sdx_devices_remediate
- sdx_devices_scan
- sdx_devices_view_devices_page
- sdx_devices_view_drill_down_device_page
- sdx_issues_remediate
- sdx_issues_view_issues_page
- sdx_issues_view_drill_down_issue_page
- sdx_templates_view_page
- sdx_templates_view_drill_down_page
- sdx_templates_create
- sdx_templates_edit
- sdx_templates_delete
- sdx_templates_disable
- sdx_templates_scan_categories_misconfig
- sdx_templates_scan_categories_compliance
- sdx_templates_scan_categories_vulnerabilities
- sdx_templates_scan_categories_patches
- sdx_templates_remediation_categories_misconfig
- sdx_templates_remediation_categories_compliance
- sdx_templates_remediation_categories_vulnerabilities
- sdx_templates_remediation_categories_patches
- sdx_apps_remediate
- sdx_apps_view_page
- sdx_apps_view_drill_down_page
- sdx_jobs_view_page
- sdx_jobs_view_drill_down_page
- sdx_users_view_page
- sdx_users_view_drill_down_page
- sdx_settings_manage_devices
- sdx_settings_license_information
- sdx_settings_manage_agent
- sdx_settings_manage_custom_issues
- sdx_settings_manage_identity_risk
type: string
Scope:
properties:
type:
type: string
description: The method of targeting devices for the permission scope.
values:
items:
type: string
type: array
description: The values of the permission scope targets.
required:
- values
- type
type: object
HttpStatusCode.BAD_REQUEST:
enum:
- 400
type: number
UUID:
type: string
format: uuid
description: 'Stringified UUIDv4.
See [RFC 4112](https://tools.ietf.org/html/rfc4122)'
pattern: ^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-4[0-9A-Fa-f]{3}-[89ABab][0-9A-Fa-f]{3}-[0-9A-Fa-f]{12}$
edge_devices:
items:
$ref: '#/components/schemas/EDGE_DEVICES'
type: array
description: The "Device Permissions" permission category.
SB_MONITORING:
enum:
- sb_create_scout
- sb_read_scout
- sb_update_scout
- sb_delete_scout
- sb_create_alert
- sb_read_alert
- sb_update_alert
- sb_delete_alert
- sb_create_hive
- sb_read_hive
- sb_update_hive
- sb_delete_hive
- sb_create_maintenance_window
- sb_read_maintenance_window
- sb_update_maintenance_window
- sb_delete_maintenance_window
- sb_create_integration
- sb_read_integration
- sb_update_integration
- sb_delete_integration
- sb_create_api_key
- sb_read_api_key
- sb_update_api_key
- sb_delete_api_key
- sb_update_organization_settings
type: string
REPORTS:
enum:
- environment_assessment
- sizing_recommendations
- session_count
- session_activity
- logon_duration
- protocol_trends
- machine_trends
- machine_statistics
- host_trends
- host_statistics
- top_windows_errors
- netscaler
- load_balancing
- gateway
- citrix_license_usage
- app_statistics
- app_usage_details
- app_trends
- published_apps
- personal_automated_reports
- all_automated_reports
- cost_saving_reports
type: string
GetAllRolesResponse:
$ref: '#/components/schemas/APIPaginatedResponse_RolePublic-Array_'
example:
metadata:
total: 7
limitPerPage: 3
currentPageNumber: 1
currentPageSize: 3
remaining: 4
data:
- id: 1
name: Admin
description: null
isDefault: true
createdAt: '2024-08-01T13:09:41.640Z'
updatedAt: '2024-08-01T13:09:41.640Z'
- id: 2
name: Editor
description: null
isDefault: true
createdAt: '2024-08-01T13:09:41.640Z'
updatedAt: '2024-08-01T13:09:41.640Z'
- id: 709
name: Help Desk
description: Role for Help desk employees
isDefault: false
childOrganizationIds:
- 12345678-1234-1234-1234-123456789012
createdAt: '2024-08-01T13:09:41.640Z'
updatedAt: '2024-08-01T13:09:41.640Z'
API_KEYS:
enum:
- manage_api_keys
- vdi_daas_host_get_metrics_per_folder
- vdi_daas_host_get_host_counts
- vdi_daas_user_get_user_activity_status
- vdi_daas_netscaler_get_netscaler_metrics
- vdi_daas_netscaler_get_loadbalancer_metrics
- vdi_daas_netscaler_get_gateway_metrics
- vdi_daas_machine_get_machine_statistics
- vdi_daas_machine_get_virtual_environments_sizing_recommendations
- vdi_daas_machine_get_azure_environment_sizing_recommendations
- vdi_daas_session_get_session_statistics
- vdi_daas_apps_get_app_usage_details
- vdi_daas_apps_get_all_apps_usage_details
- vdi_daas_apps_get_app_statistics
- access_dex_settings
type: string
EDGE_UNIFIED_COMMUNICATIONS_AND_COLLABORATION:
enum:
- pr_ucc_view_dashboard
- pr_ucc_view_zoom_call_topic
- pc_ucc_api_configuration
type: string
ErrorResponseBody_ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden__:
properties:
metadata:
$ref: '#/components/schemas/ErrorResponseMetadata'
error:
$ref: '#/components/schemas/ErrorType_ErrorMessage.Forbidden.HttpStatusCode.FORBIDDEN.ErrorCode.Forbidden_'
required:
- error
- metadata
type: object
CreateRoleResponse:
$ref: '#/components/schemas/APIResponse_RoleWithData_'
example:
id: 1
name: Admin
description: null
isDefault: true
usersIds:
- d1cb6131-7361-4e39-84c7-049e06921a18
- 775448cf-4f16-472d-904a-2983c10b380e
groupsIds:
- 69cdd6bc-e81f-4c0e-8f21-a8f35ce4763c
- 991419b2-cd58-408c-a5e4-4675916941d5
permissions:
- permissionTreeName: dex_access_control
selectedPermissions:
- id: view_settings
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_users
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_roles
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
- id: manage_sso_access
scopes:
- type: device_groups
values:
- All Devices
- type: device_tags
values:
- All Devices
RolePublic:
properties:
id:
type: integer
format: int32
description: ID of the role.
minimum: 1
name:
type: string
description: The role's name.
description:
type: string
description: The role's description.
isDefault:
type: boolean
description: Whether the role is one of the default roles configured by ControlUp.
childOrganizationIds:
items:
type: string
type: array
description: 'Specifies the target organizations where this role is applied. This parameter is relevant only for Tenant Manager organizations.
* **If omitted or empty:** The role is automatically applied to the Tenant Manager organization AND all of its child organizations.
* **If IDs are provided:** The role is restricted only to the specific organization IDs listed. You can include the IDs of child organizations and/or the ID of the Tenant Manager organization itself. If you target exactly one organization ID, you can use the `permissions.scopes` object to further restrict permissions to specific device groups or tags within that organization.'
createdAt:
type: string
description: The date at which the role was first created.
updatedAt:
type: string
description: The date at which the role was last updated.
required:
- isDefault
- description
- name
- id
type: object
security_risk_management:
items:
$ref: '#/components/schemas/SECURITY_RISK_MANAGEMENT'
type: array
description: The "Secure DX Management" permission category.
ErrorResponseMetadata:
properties:
cuRequestId:
type: string
orgId:
type: string
userId:
type: string
userIp:
type: string
required:
- userIp
- userId
- orgId
- cuRequestId
type: object
EDGE_USER_SENTIMENT:
enum:
- pc_create_edit_view_delete_surveys_from_library
- pc_create_edit_view_results_delete_surveys_owned_by_user
- pc_edit_delete_surveys_owned_by_other_user
- pc_view_survey_results_from_other_users
- pc_use_custom_action_surveys
- pc_sentiment_configure_global_settings
type: string
custom_dashboards:
items:
$ref: '#/components/schemas/CUSTOM_DASHBOARDS'
type: array
description: The "Custom Dashboards" permission category.
enrich:
items:
$ref: '#/components/schemas/ENRICH'
type: array
description: The "Enrich" permission category.
ErrorType_BadRequestErrorMessages.HttpStatusCode.BAD_REQUEST.BadRequestErrorCodes_:
properties:
message:
$ref: '#/components/schemas/BadRequestErrorMessages'
code:
$ref: '#/components/schemas/BadRequestErrorCodes'
status:
$ref: '#/components/schemas/HttpStatusCode.BAD_REQUEST'
data:
additionalProperties: true
type: object
required:
- status
- code
- message
# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/controlup/refs/heads/main/openapi/controlup-roles-api-openapi.yml