v2_roles_CreateRole/
v2_roles_CreateRole.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_roles::RolesAPI;
4use datadog_api_client::datadogV2::model::PermissionsType;
5use datadog_api_client::datadogV2::model::RelationshipToPermissionData;
6use datadog_api_client::datadogV2::model::RelationshipToPermissions;
7use datadog_api_client::datadogV2::model::RoleCreateAttributes;
8use datadog_api_client::datadogV2::model::RoleCreateData;
9use datadog_api_client::datadogV2::model::RoleCreateRequest;
10use datadog_api_client::datadogV2::model::RoleRelationships;
11use datadog_api_client::datadogV2::model::RolesType;
12
13#[tokio::main]
14async fn main() {
15 let body = RoleCreateRequest::new(
16 RoleCreateData::new(RoleCreateAttributes::new("developers".to_string()))
17 .relationships(RoleRelationships::new().permissions(
18 RelationshipToPermissions::new().data(vec![
19 RelationshipToPermissionData::new().type_(PermissionsType::PERMISSIONS),
20 ]),
21 ))
22 .type_(RolesType::ROLES),
23 );
24 let configuration = datadog::Configuration::new();
25 let api = RolesAPI::with_config(configuration);
26 let resp = api.create_role(body).await;
27 if let Ok(value) = resp {
28 println!("{:#?}", value);
29 } else {
30 println!("{:#?}", resp.unwrap_err());
31 }
32}