The rolesPage() GraphQL query is used to get
searchable paginated roles. This field is not yet available. It's
described here as a preview and is used for getting a new pagination
pattern.
For more information on roles in LogScale, see the
Manage users & permissions documentation page. You may
also want to look at the Manage users & permissions
page for related information.
Below is the syntax for the rolesPage() query
field:
rolesPage(
search : string
pageNumber : integer!
pageSize : integer!
) : RolePage!
The input datatypes are standard ones. The return parameters for
RolePage can be found in the table listed in
the Returned Datatypes section. Below is an example of how this
query field might be used:
Show:
Raw Mac OS or Linux (curl) Mac OS or Linux (curl) One-line Windows Cmd and curl Windows Powershell and curl Perl Python Node.js
Raw query {
rolesPage( search : "member" , pageSize : 10 , pageNumber : 1 )
{ pageInfo { total, totalNumberOfRows} , page {
id, displayName, usersCount, viewPermissions
} }
}
Mac OS or Linux (curl) curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}
EOF
Mac OS or Linux (curl) One-line curl -v -X POST $YOUR_LOGSCALE_URL/graphql \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d @- << EOF
{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}
EOF
Windows Cmd and curl curl -v -X POST $YOUR_LOGSCALE_URL/graphql ^
-H "Authorization: Bearer $TOKEN" ^
-H "Content-Type: application/json" ^
-d @'{"query" : "query { ^
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1) ^
{pageInfo {total, totalNumberOfRows}, page { ^
id, displayName, usersCount, viewPermissions ^
}} ^
}" ^
} '
Windows Powershell and curl curl.exe -X POST
-H "Authorization: Bearer $TOKEN "
-H "Content-Type: application/json"
-d '{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}'
"$YOUR_LOGSCALE_URL /graphql"
Perl
use HTTP::Request;
use LWP;
my $INGEST_TOKEN = "TOKEN" ;
my $uri = '$YOUR_LOGSCALE_URL/graphql' ;
my $json = '{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}' ;
my $req = HTTP::Request->new("POST" , $uri );
$req->header("Authorization" => "Bearer $TOKEN" );
$req->header("Content-Type" => "application/json" );
$req->content( $json );
my $lwp = LWP::UserAgent->new;
my $result = $lwp->request( $req );
print $result->{"_content" },"\n" ;
Python
import requests
url = '$YOUR_LOGSCALE_URL/graphql'
mydata = r'''{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}'''
resp = requests.post(url,
data = mydata,
headers = {
"Authorization" : "Bearer $TOKEN" ,
"Content-Type" : "application/json"
}
)
print (resp.text)
Node.js const https = require ('https' );
const data = JSON .stringify (
{"query" : "query {
rolesPage(search: \"member\", pageSize: 10, pageNumber: 1)
{pageInfo {total, totalNumberOfRows}, page {
id, displayName, usersCount, viewPermissions
}}
}"
}
);
const options = {
hostname : '$YOUR_LOGSCALE_URL/graphql' ,
path : '/graphql' ,
port : 443 ,
method : 'POST' ,
headers : {
'Content-Type' : 'application/json' ,
'Content-Length' : data.length ,
Authorization : 'BEARER ' + process.env .TOKEN ,
'User-Agent' : 'Node' ,
},
};
const req = https.request (options, (res ) => {
let data = '' ;
console .log (`statusCode: ${res.statusCode} ` );
res.on ('data' , (d ) => {
data += d;
});
res.on ('end' , () => {
console .log (JSON .parse (data).data );
});
});
req.on ('error' , (error ) => {
console .error (error);
});
req.write (data);
req.end ();
Example Responses Show:
Success (HTTP Response Code 200 OK)
Success (HTTP Response Code 200 OK) {
"data" : {
"rolesPage" : {
"pageInfo" : {
"total" : 1 ,
"totalNumberOfRows" : 1
} ,
"page" : [
{
"id" : "pFLOxe7C8zkNbWOSP8VartJ0I6Kz0eK2" ,
"displayName" : "Member" ,
"usersCount" : 14 ,
"viewPermissions" : [
"ChangeDashboards" ,
"ChangeSavedQueries" ,
"ChangeTriggers" ,
"ChangeFiles" ,
"ChangeParsers" ,
"ReadAccess"
]
}
]
}
}
}
The returned datatype RolePage
has its own
parameters. Below is a list of them along with their datatypes and
a description of each:
Table: RolePage
Parameter Type Required Default Stability Description Some arguments may be required, as indicated in the Required column. For some fields, this column indicates that a result will always be returned for this column. Table last updated: Mar 17, 2025 page
[Role
] yes Long-Term
The roles to include in the page. See Role
. pageInfo
PageType
yes Long-Term
The page settings. See PageType
.