Query
query CustomRole($customRoleId: ID!) {
customRole(customRoleId: $customRoleId) {
id
name
description
permissionsPreset
scopeDefinitions {
resource
scopes {
primitiveType
accessMode
values
}
}
createdAt {
unixTimestamp
iso8601
}
}
}Variables
{
"customRoleId": "id"
}Response
{
"data": {
"customRole": {
"id": "id",
"name": "string",
"description": "string",
"permissionsPreset": "string",
"scopeDefinitions": [
{
"resource": "THREAD",
"scopes": [
{
"primitiveType": "LABEL",
"accessMode": "VIEW_ANY",
"values": [
"id"
]
}
]
}
],
"createdAt": {
"unixTimestamp": "string",
"iso8601": "string"
}
}
}
}Queries
customRole
Returns a single custom role by its ID, or null if not found. Requires the roles:read permission.
QUERY
customRole(customRoleId: ID!): CustomRoleArguments
customRoleId
ID!
required
Returns
id
ID!
name
String!
description
String
permissionsPreset
String!
The built-in role whose permissions this custom role inherits (e.g. role_support, role_viewer). Determines what actions users with this role can perform.
scopeDefinitions
The thread-visibility scope rules configured for this role. An empty array means no restrictions — users can see all threads.
createdAt
createdBy
updatedAt
updatedBy
Query
query CustomRole($customRoleId: ID!) {
customRole(customRoleId: $customRoleId) {
id
name
description
permissionsPreset
scopeDefinitions {
resource
scopes {
primitiveType
accessMode
values
}
}
createdAt {
unixTimestamp
iso8601
}
}
}Variables
{
"customRoleId": "id"
}Response
{
"data": {
"customRole": {
"id": "id",
"name": "string",
"description": "string",
"permissionsPreset": "string",
"scopeDefinitions": [
{
"resource": "THREAD",
"scopes": [
{
"primitiveType": "LABEL",
"accessMode": "VIEW_ANY",
"values": [
"id"
]
}
]
}
],
"createdAt": {
"unixTimestamp": "string",
"iso8601": "string"
}
}
}
}Was this page helpful?

