Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.
Permission type
Least privileged permissions
Higher privileged permissions
Delegated (work or school account)
CustomSecAttributeDefinition.Read.All
CustomSecAttributeDefinition.ReadWrite.All
Delegated (personal Microsoft account)
Not supported.
Not supported.
Application
CustomSecAttributeDefinition.Read.All
CustomSecAttributeDefinition.ReadWrite.All
The signed-in user must also be assigned at least one of the following directory roles:
Attribute Assignment Reader
Attribute Definition Reader
Attribute Assignment Administrator
Attribute Definition Administrator
By default, Global Administrator and other administrator roles don't have permissions to read, define, or assign custom security attributes.
HTTP request
GET /directory/customSecurityAttributeDefinitions/{customSecurityAttributeDefinitionId}/allowedValues
Optional query parameters
This method supports the $select OData query parameter to help customize the response. For general information, see OData query parameters.
Request headers
Name
Description
Authorization
Bearer {token}. Required.
Request body
Don't supply a request body for this method.
Response
If successful, this method returns a 200 OK response code and a collection of allowedValue objects in the response body.
Examples
Request
The following example gets all predefined values for a custom security attribute definition.
GET https://graph.microsoft.com/v1.0/directory/customSecurityAttributeDefinitions/Engineering_Project/allowedValues
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Directory.CustomSecurityAttributeDefinitions["{customSecurityAttributeDefinition-id}"].AllowedValues.GetAsync();
// THE CLI IS IN PREVIEW. NON-PRODUCTION USE ONLY
mgc directory custom-security-attribute-definitions allowed-values list --custom-security-attribute-definition-id {customSecurityAttributeDefinition-id}
<?php
// THIS SNIPPET IS A PREVIEW VERSION OF THE SDK. NON-PRODUCTION USE ONLY
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$result = $graphServiceClient->directory()->customSecurityAttributeDefinitions()->byCustomSecurityAttributeDefinitionId('customSecurityAttributeDefinition-id')->allowedValues()->get()->wait();
# THE PYTHON SDK IS IN PREVIEW. FOR NON-PRODUCTION USE ONLY
graph_client = GraphServiceClient(credentials, scopes)
result = await graph_client.directory.custom_security_attribute_definitions.by_custom_security_attribute_definition_id('customSecurityAttributeDefinition-id').allowed_values.get()