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.
Response containing information about a created role.
Expand All
Field
Type
Description
data
object
Role object returned by the API.
attributes
object
Attributes of the created role.
created_at
date-time
Creation time of the role.
modified_at
date-time
Time of last role modification.
name [required]
string
Name 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.
id
string
The unique identifier of the role.
relationships
object
Relationships of the role object returned by the API.
// Create role with a permission 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 "permission" in the systemPermissionID:=os.Getenv("PERMISSION_ID")body:=datadogV2.RoleCreateRequest{Data:datadogV2.RoleCreateData{Type:datadogV2.ROLESTYPE_ROLES.Ptr(),Attributes:datadogV2.RoleCreateAttributes{Name:"Example-Role",},Relationships:&datadogV2.RoleRelationships{Permissions:&datadogV2.RelationshipToPermissions{Data:[]datadogV2.RelationshipToPermissionData{{Id:datadog.PtrString(PermissionID),Type:datadogV2.PERMISSIONSTYPE_PERMISSIONS.Ptr(),},},},},},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewRolesApi(apiClient)resp,r,err:=api.CreateRole(ctx,body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `RolesApi.CreateRole`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `RolesApi.CreateRole`:\n%s\n",responseContent)}
// Create role with a permission returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.RolesApi;importcom.datadog.api.client.v2.model.PermissionsType;importcom.datadog.api.client.v2.model.RelationshipToPermissionData;importcom.datadog.api.client.v2.model.RelationshipToPermissions;importcom.datadog.api.client.v2.model.RoleCreateAttributes;importcom.datadog.api.client.v2.model.RoleCreateData;importcom.datadog.api.client.v2.model.RoleCreateRequest;importcom.datadog.api.client.v2.model.RoleCreateResponse;importcom.datadog.api.client.v2.model.RoleRelationships;importcom.datadog.api.client.v2.model.RolesType;importjava.util.Collections;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();RolesApiapiInstance=newRolesApi(defaultClient);// there is a valid "permission" in the systemStringPERMISSION_ID=System.getenv("PERMISSION_ID");RoleCreateRequestbody=newRoleCreateRequest().data(newRoleCreateData().type(RolesType.ROLES).attributes(newRoleCreateAttributes().name("Example-Role")).relationships(newRoleRelationships().permissions(newRelationshipToPermissions().data(Collections.singletonList(newRelationshipToPermissionData().id(PERMISSION_ID).type(PermissionsType.PERMISSIONS))))));try{RoleCreateResponseresult=apiInstance.createRole(body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling RolesApi#createRole");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
"""
Create role with a permission returns "OK" response
"""fromosimportenvironfromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.roles_apiimportRolesApifromdatadog_api_client.v2.model.permissions_typeimportPermissionsTypefromdatadog_api_client.v2.model.relationship_to_permission_dataimportRelationshipToPermissionDatafromdatadog_api_client.v2.model.relationship_to_permissionsimportRelationshipToPermissionsfromdatadog_api_client.v2.model.role_create_attributesimportRoleCreateAttributesfromdatadog_api_client.v2.model.role_create_dataimportRoleCreateDatafromdatadog_api_client.v2.model.role_create_requestimportRoleCreateRequestfromdatadog_api_client.v2.model.role_relationshipsimportRoleRelationshipsfromdatadog_api_client.v2.model.roles_typeimportRolesType# there is a valid "permission" in the systemPERMISSION_ID=environ["PERMISSION_ID"]body=RoleCreateRequest(data=RoleCreateData(type=RolesType.ROLES,attributes=RoleCreateAttributes(name="Example-Role",),relationships=RoleRelationships(permissions=RelationshipToPermissions(data=[RelationshipToPermissionData(id=PERMISSION_ID,type=PermissionsType.PERMISSIONS,),],),),),)configuration=Configuration()withApiClient(configuration)asapi_client:api_instance=RolesApi(api_client)response=api_instance.create_role(body=body)print(response)
# Create role with a permission returns "OK" responserequire"datadog_api_client"api_instance=DatadogAPIClient::V2::RolesAPI.new# there is a valid "permission" in the systemPERMISSION_ID=ENV["PERMISSION_ID"]body=DatadogAPIClient::V2::RoleCreateRequest.new({data:DatadogAPIClient::V2::RoleCreateData.new({type:DatadogAPIClient::V2::RolesType::ROLES,attributes:DatadogAPIClient::V2::RoleCreateAttributes.new({name:"Example-Role",}),relationships:DatadogAPIClient::V2::RoleRelationships.new({permissions:DatadogAPIClient::V2::RelationshipToPermissions.new({data:[DatadogAPIClient::V2::RelationshipToPermissionData.new({id:PERMISSION_ID,type:DatadogAPIClient::V2::PermissionsType::PERMISSIONS,}),],}),}),}),})papi_instance.create_role(body)
// Create role with a permission returns "OK" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_roles::RolesAPI;usedatadog_api_client::datadogV2::model::PermissionsType;usedatadog_api_client::datadogV2::model::RelationshipToPermissionData;usedatadog_api_client::datadogV2::model::RelationshipToPermissions;usedatadog_api_client::datadogV2::model::RoleCreateAttributes;usedatadog_api_client::datadogV2::model::RoleCreateData;usedatadog_api_client::datadogV2::model::RoleCreateRequest;usedatadog_api_client::datadogV2::model::RoleRelationships;usedatadog_api_client::datadogV2::model::RolesType;#[tokio::main]asyncfnmain(){// there is a valid "permission" in the system
letpermission_id=std::env::var("PERMISSION_ID").unwrap();letbody=RoleCreateRequest::new(RoleCreateData::new(RoleCreateAttributes::new("Example-Role".to_string())).relationships(RoleRelationships::new().permissions(RelationshipToPermissions::new().data(vec![RelationshipToPermissionData::new().id(permission_id.clone()).type_(PermissionsType::PERMISSIONS)]),)).type_(RolesType::ROLES),);letconfiguration=datadog::Configuration::new();letapi=RolesAPI::with_config(configuration);letresp=api.create_role(body).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
/**
* Create role with a permission returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();constapiInstance=newv2.RolesApi(configuration);// there is a valid "permission" in the system
constPERMISSION_ID=process.env.PERMISSION_IDasstring;constparams: v2.RolesApiCreateRoleRequest={body:{data:{type:"roles",attributes:{name:"Example-Role",},relationships:{permissions:{data:[{id: PERMISSION_ID,type:"permissions",},],},},},},};apiInstance.createRole(params).then((data: v2.RoleCreateResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));