Microsoft Entra ID (formerly Azure AD) Identity.conditional Access Root API
The identity.conditionalAccessRoot API from Microsoft Entra ID (formerly Azure AD) — 36 operation(s) for identity.conditionalaccessroot.
Operations 64
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
GET
/identity/conditionalAccess/authenticationContextClassReferences
List authentication contexts · List authenticationContextClassReferences
#
Ask an LLM
“Which authentication contexts are defined for Conditional Access in my tenant?”
“Can I filter authentication context class references to only the ones available to apps?”
Tell an agent
List all authentication context class references.
Show authentication contexts matching {filter}.
POST
/identity/conditionalAccess/authenticationContextClassReferences
Add an authentication context · Create new navigation property to authenticationContextClassReferences for…
#
Ask an LLM
“How do I add a new authentication context like c5 for step-up Conditional Access?”
“Can I create an authentication context that is not yet available to apps?”
Tell an agent
Create authentication context {id} named {name}.
Add authentication context {id} described as {description}, marked available.
GET
/identity/conditionalAccess/authenticationContextClassReferences/{authenticationContextClassReference-id}
Get one authentication context · Get authenticationContextClassReference
#
Ask an LLM
“What are the details of a specific authentication context class reference?”
“Is a given authentication context currently published to apps?”
Tell an agent
Show authentication context {context}.
Get the display name and availability of authentication context {context}.
PATCH
/identity/conditionalAccess/authenticationContextClassReferences/{authenticationContextClassReference-id}
Create or update an authentication context · Create or Update authenticationContextClassReference
#
Ask an LLM
“Can I publish an existing authentication context so apps can start using it?”
“What happens if I PATCH an authentication context ID that hasn't been used yet?”
Tell an agent
Rename authentication context {context} to {name}.
Make authentication context {context} available to apps with description {description}.
DELETE
/identity/conditionalAccess/authenticationContextClassReferences/{authenticationContextClassReference-id}
Delete an authentication context · Delete authenticationContextClassReference
#
Ask an LLM
“How do I remove an authentication context that no policy uses anymore?”
“Why can't I delete an authentication context that a Conditional Access policy references?”
Tell an agent destructive · confirm first
Delete authentication context {context}.
Remove unused authentication context {context} from Conditional Access.
GET
/identity/conditionalAccess/authenticationContextClassReferences/$count
Count authentication contexts · Get the number of the resource
#
Ask an LLM
“How many authentication context class references does my tenant have?”
“Can I get just the total number of authentication contexts without the list?”
Tell an agent
Count the authentication contexts in the tenant.
Count authentication contexts matching {filter}.
GET
/identity/conditionalAccess/authenticationStrength
Get the authentication strength root · Get authenticationStrength from identity
#
Ask an LLM
“What does the authentication strength container under Conditional Access hold?”
“Where do I start to browse authentication strength policies and method modes?”
Tell an agent
Show the Conditional Access authentication strength root object.
Get the authentication strength root with its policies expanded.
PATCH
/identity/conditionalAccess/authenticationStrength
Update the authentication strength root · Update the navigation property authenticationStrength in identity
#
Ask an LLM
“How do I change the authentication strength root object as a whole?”
“Can I set the list of authentication combinations on the authentication strength root?”
Tell an agent
Update the authentication strength root combinations to {combinations}.
Replace the method modes on the authentication strength root with {modes}.
DELETE
/identity/conditionalAccess/authenticationStrength
Delete the authentication strength root · Delete navigation property authenticationStrength for identity
#
Ask an LLM
“Can the whole authentication strength navigation property be deleted from Conditional Access?”
“What removes the authentication strength root object rather than a single policy?”
Tell an agent destructive · confirm first
Delete the authentication strength root from Conditional Access.
Remove the authentication strength container using ETag {etag}.
GET
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes
List supported authentication method modes · List authenticationMethodModes
#
Ask an LLM
“Which authentication methods can be used in an authentication strength?”
“What method combinations like password plus SMS are supported for strengths?”
Tell an agent
List all supported authentication method modes.
Show authentication method modes matching {filter}.
POST
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes
Add an authentication method mode · Create new navigation property to authenticationMethodModes for identity
#
Ask an LLM
“How do I add a new authentication method mode detail entry?”
“Can I register a method mode with its own display name?”
Tell an agent
Add authentication method mode {method} named {name}.
Create a method mode detail for {method}.
GET
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes/{authenticationMethodModeDetail-id}
Get one authentication method mode · Get authenticationMethodModes from identity
#
Ask an LLM
“What is the name and description of a specific authentication method mode?”
“Which authentication method does a particular method mode detail represent?”
Tell an agent
Show authentication method mode {mode}.
Get the display name of method mode {mode}.
PATCH
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes/{authenticationMethodModeDetail-id}
Update an authentication method mode · Update the navigation property authenticationMethodModes in identity
#
Ask an LLM
“How do I rename an authentication method mode detail?”
“Can I change which authentication method a method mode entry points to?”
Tell an agent
Rename authentication method mode {mode} to {name}.
Set method mode {mode} to authentication method {method}.
DELETE
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes/{authenticationMethodModeDetail-id}
Delete an authentication method mode · Delete navigation property authenticationMethodModes for identity
#
Ask an LLM
“How do I remove an authentication method mode detail entry?”
“Can a method mode be deleted with an ETag check?”
Tell an agent destructive · confirm first
Delete authentication method mode {mode}.
Remove method mode {mode} only if its ETag is {etag}.
GET
/identity/conditionalAccess/authenticationStrength/authenticationMethodModes/$count
Count authentication method modes · Get the number of the resource
#
Ask an LLM
“How many authentication method modes are supported in my tenant?”
“Can I just get the number of method modes available for strengths?”
Tell an agent
Count the supported authentication method modes.
Count method modes matching {filter}.
GET
/identity/conditionalAccess/authenticationStrength/policies
List authentication strength policies · Get policies from identity
#
Ask an LLM
“Which authentication strength policies exist, both built-in and custom?”
“Can I list only the custom authentication strengths in my tenant?”
Tell an agent
List all authentication strength policies.
Show authentication strength policies matching {filter}.
POST
/identity/conditionalAccess/authenticationStrength/policies
Create an authentication strength policy · Create new navigation property to policies for identity
#
Ask an LLM
“How do I create a custom authentication strength such as phishing-resistant only?”
“Can a new authentication strength list exactly which method combinations it allows?”
Tell an agent
Create authentication strength {name} allowing {combinations}.
Create a custom authentication strength named {name} described as {description}.
GET
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}
Get one authentication strength policy · Get policies from identity
#
Ask an LLM
“What method combinations does a specific authentication strength allow?”
“Is a given authentication strength built-in or custom?”
Tell an agent
Show authentication strength policy {policy}.
Get the allowed combinations of authentication strength {policy}.
PATCH
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}
Update an authentication strength policy · Update the navigation property policies in identity
#
Ask an LLM
“How do I rename or re-describe a custom authentication strength?”
“Can I edit an authentication strength's name and description in one call?”
Tell an agent
Rename authentication strength {policy} to {name}.
Set the description of authentication strength {policy} to {description}.
DELETE
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}
Delete an authentication strength policy · Delete navigation property policies for identity
#
Ask an LLM
“How do I delete a custom authentication strength I no longer need?”
“Can I remove an authentication strength policy with an ETag precondition?”
Tell an agent destructive · confirm first
Delete authentication strength policy {policy}.
Remove custom authentication strength {policy} if its ETag is {etag}.
GET
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations
List a strength's combination configurations · List combinationConfigurations
#
Ask an LLM
“Which FIDO2 or certificate restrictions are configured on an authentication strength?”
“What combination configurations apply to a specific authentication strength policy?”
Tell an agent
List combination configurations for authentication strength {policy}.
Show the first {top} combination configurations on strength {policy}.
POST
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations
Add a combination configuration to a strength · Create authenticationCombinationConfiguration
#
Ask an LLM
“How do I restrict which FIDO2 keys satisfy a custom authentication strength?”
“Can I add a combination configuration that applies only to certain method combinations?”
Tell an agent
Add a combination configuration to strength {policy} applying to {combinations}.
Create a FIDO2 combination configuration on authentication strength {policy}.
GET
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations/{authenticationCombinationConfiguration-id}
Get one combination configuration · Get authenticationCombinationConfiguration
#
Ask an LLM
“What does a specific combination configuration on my authentication strength restrict?”
“Which method combinations does a given combination configuration apply to?”
Tell an agent
Show combination configuration {config} of strength {policy}.
Get the combinations that configuration {config} on {policy} applies to.
PATCH
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations/{authenticationCombinationConfiguration-id}
Update a combination configuration · Update authenticationCombinationConfiguration
#
Ask an LLM
“How do I change which combinations a strength's combination configuration covers?”
“Can I edit an existing FIDO2 restriction on an authentication strength?”
Tell an agent
Update configuration {config} on strength {policy} to apply to {combinations}.
Edit combination configuration {config} of authentication strength {policy}.
DELETE
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations/{authenticationCombinationConfiguration-id}
Delete a combination configuration · Delete authenticationCombinationConfiguration
#
Ask an LLM
“How do I remove a FIDO2 or certificate restriction from a custom authentication strength?”
“Can combination configurations be deleted from built-in strengths?”
Tell an agent destructive · confirm first
Delete combination configuration {config} from strength {policy}.
Remove restriction {config} on authentication strength {policy}.
GET
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/combinationConfigurations/$count
Count a strength's combination configurations · Get the number of the resource
#
Ask an LLM
“How many combination configurations are set on a given authentication strength?”
“Does a particular authentication strength have any combination configurations at all?”
Tell an agent
Count combination configurations on authentication strength {policy}.
Tell me how many restrictions strength {policy} carries.
POST
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/microsoft.graph.updateAllowedCombinations
Change a strength's allowed method combinations · Invoke action updateAllowedCombinations
#
Ask an LLM
“How do I change only the allowed method combinations on an authentication strength?”
“Is there a dedicated action for updating allowedCombinations rather than a full policy update?”
Tell an agent
Set the allowed combinations of strength {policy} to {combinations}.
Replace the permitted MFA combinations on authentication strength {policy} with {combinations}.
GET
/identity/conditionalAccess/authenticationStrength/policies/{authenticationStrengthPolicy-id}/microsoft.graph.usage()
See which CA policies use an auth strength · Invoke function usage
#
Ask an LLM
“Which Conditional Access policies reference a given authentication strength?”
“Are any MFA-requiring policies using this authentication strength before I change it?”
Tell an agent
Show Conditional Access policies that use authentication strength {policy}.
Check the usage of strength {policy} split by MFA and non-MFA policies.
GET
/identity/conditionalAccess/authenticationStrength/policies/$count
Count authentication strength policies · Get the number of the resource
#
Ask an LLM
“How many authentication strength policies does my tenant have?”
“Can I count just the custom authentication strengths?”
Tell an agent
Count all authentication strength policies.
Count authentication strengths matching {filter}.
GET
/identity/conditionalAccess/deletedItems
Get the Conditional Access deleted items · Get deletedItems from identity
#
Ask an LLM
“Where can I see Conditional Access policies and named locations that were deleted?”
“What is in the Conditional Access recycle bin container?”
Tell an agent
Show the Conditional Access deleted items container.
Get Conditional Access deleted items with deleted policies expanded.
PATCH
/identity/conditionalAccess/deletedItems
Update the CA deleted items container · Update the navigation property deletedItems in identity
#
Ask an LLM
“Can I modify the Conditional Access deleted items container object directly?”
“How do I set the deleted policies collection on the deleted items container?”
Tell an agent
Update the Conditional Access deleted items container with policies {policies}.
Set the deleted named locations on the CA deleted items container to {locations}.
DELETE
/identity/conditionalAccess/deletedItems
Delete the CA deleted items container · Delete navigation property deletedItems for identity
#
Ask an LLM
“Can I delete the whole Conditional Access deleted items container?”
“What removes the deletedItems navigation property from Conditional Access?”
Tell an agent destructive · confirm first
Delete the Conditional Access deleted items container.
Remove the CA deleted items object using ETag {etag}.
GET
/identity/conditionalAccess/deletedItems/namedLocations
List deleted named locations · Get namedLocations from identity
#
Ask an LLM
“Which named locations have been deleted from Conditional Access recently?”
“Can I find a deleted IP range named location before restoring it?”
Tell an agent
List deleted named locations.
Show deleted named locations matching {filter}.
POST
/identity/conditionalAccess/deletedItems/namedLocations
Add a named location to deleted items · Create new navigation property to namedLocations for identity
#
Ask an LLM
“Can I create an entry directly in the deleted named locations collection?”
“Is it possible to post a named location into Conditional Access deleted items?”
Tell an agent
Add named location {name} to the deleted named locations collection.
Create a deleted named location record called {name}.
GET
/identity/conditionalAccess/deletedItems/namedLocations/{namedLocation-id}
Get one deleted named location · Get namedLocations from identity
#
Ask an LLM
“When was a specific named location deleted?”
“What were the details of a named location that's now in deleted items?”
Tell an agent
Show deleted named location {location}.
Get the deletion time of named location {location} in deleted items.
PATCH
/identity/conditionalAccess/deletedItems/namedLocations/{namedLocation-id}
Update a deleted named location · Update the navigation property namedLocations in identity
#
Ask an LLM
“Can I edit a named location while it is still in deleted items?”
“How do I change the display name of a soft-deleted named location?”
Tell an agent
Rename deleted named location {location} to {name}.
Update the deleted named location record {location}.
DELETE
/identity/conditionalAccess/deletedItems/namedLocations/{namedLocation-id}
Permanently delete a deleted named location · Delete navigation property namedLocations for identity
#
Ask an LLM
“How do I permanently purge a named location from Conditional Access deleted items?”
“Can I hard-delete a soft-deleted named location so it can't be restored?”
Tell an agent destructive · confirm first
Permanently delete named location {location} from deleted items.
Purge deleted named location {location}.
POST
/identity/conditionalAccess/deletedItems/namedLocations/{namedLocation-id}/microsoft.graph.restore
Restore a named location from deleted items · Invoke action restore
#
Ask an LLM
“How do I bring back a named location from the Conditional Access deleted items?”
“Can I undo the deletion of a country or IP named location?”
Tell an agent
Restore named location {location} from deleted items.
Recover soft-deleted named location {location} via the deleted items path.
GET
/identity/conditionalAccess/deletedItems/namedLocations/$count
Count deleted named locations · Get the number of the resource
#
Ask an LLM
“How many named locations are sitting in Conditional Access deleted items?”
“Are there any deleted named locations I could still restore?”
Tell an agent
Count deleted named locations.
Count deleted named locations matching {filter}.
GET
/identity/conditionalAccess/deletedItems/policies
List deleted Conditional Access policies · Get policies from identity
#
Ask an LLM
“Which Conditional Access policies were deleted and can still be recovered?”
“Can I search the deleted CA policies by display name?”
Tell an agent
List deleted Conditional Access policies.
Show deleted CA policies matching {filter}.
POST
/identity/conditionalAccess/deletedItems/policies
Add a policy to CA deleted items · Create new navigation property to policies for identity
#
Ask an LLM
“Can I post a Conditional Access policy directly into the deleted policies collection?”
“Is creating a record under deleted policies supported?”
Tell an agent
Add policy {name} to the deleted Conditional Access policies collection.
Create a deleted CA policy record named {name} in state {state}.
GET
/identity/conditionalAccess/deletedItems/policies/{conditionalAccessPolicy-id}
Get one deleted Conditional Access policy · Get policies from identity
#
Ask an LLM
“What conditions and grant controls did a deleted Conditional Access policy have?”
“When was a particular CA policy deleted?”
Tell an agent
Show deleted Conditional Access policy {policy}.
Get the conditions of deleted CA policy {policy}.
PATCH
/identity/conditionalAccess/deletedItems/policies/{conditionalAccessPolicy-id}
Update a deleted CA policy · Update the navigation property policies in identity
#
Ask an LLM
“Can I edit a Conditional Access policy while it is still in deleted items?”
“How do I change the state of a soft-deleted CA policy record?”
Tell an agent
Rename deleted CA policy {policy} to {name}.
Set the state of deleted Conditional Access policy {policy} to {state}.
DELETE
/identity/conditionalAccess/deletedItems/policies/{conditionalAccessPolicy-id}
Permanently delete a deleted CA policy · Delete navigation property policies for identity
#
Ask an LLM
“How do I permanently purge a Conditional Access policy from deleted items?”
“Can I hard-delete a soft-deleted CA policy so nobody restores it?”
Tell an agent destructive · confirm first
Permanently delete CA policy {policy} from deleted items.
Purge deleted Conditional Access policy {policy}.
POST
/identity/conditionalAccess/deletedItems/policies/{conditionalAccessPolicy-id}/microsoft.graph.restore
Restore a CA policy from deleted items · Invoke action restore
#
Ask an LLM
“How do I recover a Conditional Access policy someone deleted by mistake?”
“Can a deleted CA policy be restored through the deleted items collection?”
Tell an agent
Restore Conditional Access policy {policy} from deleted items.
Undelete CA policy {policy} via the deleted items path.
GET
/identity/conditionalAccess/deletedItems/policies/$count
Count deleted CA policies · Get the number of the resource
#
Ask an LLM
“How many Conditional Access policies are in deleted items right now?”
“Is anything in the deleted CA policies collection?”
Tell an agent
Count deleted Conditional Access policies.
Count deleted CA policies matching {filter}.
POST
/identity/conditionalAccess/microsoft.graph.evaluate
Evaluate which CA policies apply to a sign-in · Invoke action evaluate
#
Ask an LLM
“Which Conditional Access policies would apply if a given user signed in to an app?”
“Can I simulate a sign-in to test my Conditional Access setup, like the What If tool?”
Tell an agent
Evaluate Conditional Access for sign-in identity {identity} into {context}.
Simulate a sign-in for {identity} under conditions {conditions}, applied policies only.
Ask an LLM
“Which trusted IP ranges and countries are defined as named locations?”
“Can I filter named locations to just the IP-based ones?”
Tell an agent
List all Conditional Access named locations.
Show named locations matching {filter}.
Ask an LLM
“How do I define a trusted office IP range for Conditional Access?”
“Can I create a country-based named location to block sign-ins from certain regions?”
Tell an agent
Create a named location called {name}.
Add a new IP or country named location {name} for Conditional Access.
GET
/identity/conditionalAccess/namedLocations/{namedLocation-id}
Get a named location · Get countryNamedLocation
#
Ask an LLM
“What countries or IP ranges does a specific named location cover?”
“When was a particular named location last modified?”
Tell an agent
Show named location {location}.
Get the countries included in named location {location}.
PATCH
/identity/conditionalAccess/namedLocations/{namedLocation-id}
Update a named location · Update countryNamedLocation
#
Ask an LLM
“How do I rename an existing active named location?”
“Can I update a country named location that policies already reference?”
Tell an agent
Rename named location {location} to {name}.
Update active named location {location}.
DELETE
/identity/conditionalAccess/namedLocations/{namedLocation-id}
Delete a named location · Delete countryNamedLocation
#
Ask an LLM
“How do I delete a named location that's no longer used by any policy?”
“What happens to a named location after I delete it from Conditional Access?”
Tell an agent destructive · confirm first
Delete named location {location}.
Remove Conditional Access named location {location} if its ETag is {etag}.
POST
/identity/conditionalAccess/namedLocations/{namedLocation-id}/microsoft.graph.restore
Restore a named location · Invoke action restore
#
Ask an LLM
“Is there a restore action on the named locations collection itself?”
“Can I call restore directly on a named location by its ID?”
Tell an agent
Run the restore action on named location {location}.
Invoke restore for named location {location} through the named locations path.
GET
/identity/conditionalAccess/namedLocations/$count
Count named locations · Get the number of the resource
#
Ask an LLM
“How many named locations are configured in my tenant?”
“Can I get only the number of active named locations?”
Tell an agent
Count the active named locations.
Count named locations matching {filter}.
Ask an LLM
“Which Conditional Access policies are configured in my Entra ID tenant?”
“Can I list only the CA policies that are enabled or in report-only mode?”
Tell an agent
List all Conditional Access policies.
Show Conditional Access policies matching {filter}.
POST
/identity/conditionalAccess/policies
Create a Conditional Access policy · Create conditionalAccessPolicy
#
Ask an LLM
“How do I create a Conditional Access policy that requires MFA for admins?”
“Can I create a new CA policy in report-only state first?”
Tell an agent
Create Conditional Access policy {name} with conditions {conditions} and grant controls {grant}.
Create CA policy {name} in state {state}.
GET
/identity/conditionalAccess/policies/{conditionalAccessPolicy-id}
Get a Conditional Access policy · Get conditionalAccessPolicy
#
Ask an LLM
“What conditions, grant controls and session controls does a specific CA policy have?”
“Is a particular Conditional Access policy enabled right now?”
Tell an agent
Show Conditional Access policy {policy}.
Get the grant controls of active CA policy {policy}.
PATCH
/identity/conditionalAccess/policies/{conditionalAccessPolicy-id}
Update a Conditional Access policy · Update conditionalaccesspolicy
#
Ask an LLM
“How do I switch a Conditional Access policy from report-only to enabled?”
“Can I change the session controls on an existing CA policy?”
Tell an agent
Set the state of CA policy {policy} to {state}.
Update conditions on Conditional Access policy {policy} to {conditions}.
DELETE
/identity/conditionalAccess/policies/{conditionalAccessPolicy-id}
Delete a Conditional Access policy · Delete conditionalAccessPolicy
#
Ask an LLM
“How do I delete a Conditional Access policy I no longer need?”
“Can a deleted CA policy be recovered later?”
Tell an agent destructive · confirm first
Delete Conditional Access policy {policy}.
Remove active CA policy {policy} if its ETag is {etag}.
POST
/identity/conditionalAccess/policies/{conditionalAccessPolicy-id}/microsoft.graph.restore
Restore a Conditional Access policy · Invoke action restore
#
Ask an LLM
“Is there a restore action on the active Conditional Access policies path?”
“Can I call restore on a CA policy directly by its ID?”
Tell an agent
Run the restore action on Conditional Access policy {policy}.
Invoke restore for CA policy {policy} through the policies path.
GET
/identity/conditionalAccess/policies/$count
Count Conditional Access policies · Get the number of the resource
#
Ask an LLM
“How many Conditional Access policies does my tenant have?”
“Can I count just the CA policies that are enabled?”
Tell an agent
Count the Conditional Access policies.
Count CA policies matching {filter}.
GET
/identity/conditionalAccess/templates
List Conditional Access templates · List conditionalAccessTemplates
#
Ask an LLM
“What Conditional Access policy templates does Microsoft provide?”
“Can I browse CA templates by scenario, like securing admins or remote work?”
Tell an agent
List all Conditional Access templates.
Show CA templates matching {filter}.
GET
/identity/conditionalAccess/templates/{conditionalAccessTemplate-id}
Get a Conditional Access template · Get conditionalAccessTemplate
#
Ask an LLM
“What settings does a specific Conditional Access template contain?”
“Which scenarios is a given CA template meant for?”
Tell an agent
Show Conditional Access template {template}.
Get the policy details of CA template {template}.
GET
/identity/conditionalAccess/templates/$count
Count Conditional Access templates · Get the number of the resource
#
Ask an LLM
“How many Conditional Access templates are available?”
“Can I get just the number of CA templates?”
Tell an agent
Count the Conditional Access templates.
Count CA templates matching {filter}.