Returns all roles, including their names and their unique identifiers.
This endpoint requires the user_access_read permission.
OAuth apps require the user_access_read authorization scope to access this endpoint.
Arguments
Query Strings
Name
Type
Description
page[size]
integer
Size for a given page. The maximum allowed value is 100.
page[number]
integer
Specific page number to return.
sort
enum
Sort roles depending on the given field. Sort order is ascending by default.
Sort order is descending if the field is prefixed by a negative sign, for example:
sort=-name. Allowed enum values: name, -name, modified_at, -modified_at, user_count, -user_count
Response containing information about multiple roles.
Expand All
Field
Type
Description
data
[object]
Array of returned roles.
attributes
object
Attributes of the role.
created_at
date-time
Creation time of the role.
modified_at
date-time
Time of last role modification.
name
string
The name of the role. The name is neither unique nor a stable identifier of the role.
receives_permissions_from
[string]
The managed role from which this role automatically inherits new permissions.
Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role".
If empty or not specified, the role does not automatically inherit permissions from any managed role.
user_count
int64
Number of users with that role.
id
string
The unique identifier of the role.
relationships
object
Relationships of the role object returned by the API.
"""
List roles returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.roles_apiimportRolesApi# there is a valid "role" in the systemROLE_DATA_ATTRIBUTES_NAME=environ["ROLE_DATA_ATTRIBUTES_NAME"]configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=RolesApi(api_client)response=api_instance.list_roles(filter=ROLE_DATA_ATTRIBUTES_NAME,)print(response)
# List roles returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::RolesAPI.new# there is a valid "role" in the systemROLE_DATA_ATTRIBUTES_NAME=ENV["ROLE_DATA_ATTRIBUTES_NAME"]opts={filter:ROLE_DATA_ATTRIBUTES_NAME,}papi_instance.list_roles(opts)
// List roles returns "OK" responsepackagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){// there is a valid "role" in the systemRoleDataAttributesName:=os.Getenv("ROLE_DATA_ATTRIBUTES_NAME")ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewRolesApi(apiClient)resp,r,err:=api.ListRoles(ctx,*datadogV2.NewListRolesOptionalParameters().WithFilter(RoleDataAttributesName))iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `RolesApi.ListRoles`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `RolesApi.ListRoles`:\n%s\n",responseContent)}
// List roles returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.RolesApi;importcom.datadog.api.client.v2.api.RolesApi.ListRolesOptionalParameters;importcom.datadog.api.client.v2.model.RolesResponse;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();RolesApiapiInstance=newRolesApi(defaultClient);// there is a valid "role" in the systemStringROLE_DATA_ATTRIBUTES_NAME=System.getenv("ROLE_DATA_ATTRIBUTES_NAME");try{RolesResponseresult=apiInstance.listRoles(newListRolesOptionalParameters().filter(ROLE_DATA_ATTRIBUTES_NAME));System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling RolesApi#listRoles");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// List roles returns "OK" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_roles::ListRolesOptionalParams;usedatadog_api_client::datadogV2::api_roles::RolesAPI;#[tokio::main]asyncfnmain(){// there is a valid "role" in the system
letrole_data_attributes_name=std::env::var("ROLE_DATA_ATTRIBUTES_NAME").unwrap();letconfiguration=datadog::Configuration::new();letapi=RolesAPI::with_config(configuration);letresp=api.list_roles(ListRolesOptionalParams::default().filter(role_data_attributes_name.clone())).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<DD_API_KEY>"DD_APP_KEY="<DD_APP_KEY>"cargo run
/**
* List roles returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.RolesApi(configuration);// there is a valid "role" in the system
constROLE_DATA_ATTRIBUTES_NAME=process.env.ROLE_DATA_ATTRIBUTES_NAMEasstring;constparams: v2.RolesApiListRolesRequest={filter: ROLE_DATA_ATTRIBUTES_NAME,};apiInstance.listRoles(params).then((data: v2.RolesResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));