Power Platform Admin V2 - Create Rule Set Explained
- Jul 14
- 3 min read

I was chatting to Cooky the other day about APIs for Power Platform with some work he was trying to do for some tools. I went down a bit of a rabbit hole with the connector in Power Automate, as that can do similar actions, so I started looking at the actions and got very confused.

The naming convention around managing platform seemed to not align with what they are called in the rest of the platform or the documentation. But I managed to figure out a couple of bits. Environment Groups is an Environment Group, that's not so hard, Rule Set is managed environment rules, but not all of them are available to be set and they are a little confusing. So as a way to help others, but mostly myself so I don't need to figure it out in the future, I decided to document all the settings that can currently be set and how they can be configured.
What's a Rule Set?
The rule sets in the connector contain several parameters. Type, ResourceType, Value Item ID and Value Item Value 🙃

A Rule Set is the Manged Environment rules applied to an Environment Group. The names of the parameters on the flow are different from the name of the parameters in code. Each rule defines:
Type: the category of rule (Sharing, Copilot, Lifecycle, SolutionChecker, etc.)
ResourceType: what it applies to (App, Flow, AuthoringBot, UsersBot, or NotSpecified)
Value Item Id (ruleId): the specific setting name
Value Items value (value): what you're setting it to (always a string, even for booleans and numbers)
I could not find any documentation around what these settings are, which ones are supported in the connector, how to configure them or even what they are. I did what any self respecting person who can't find documentation...set every single setting and then used the action "Get Rule Set for Environment Group" and this is a list of the only settings that was returned.
It appears that not all rules are currently configurable, but hopefully they will be in the future.
Type | ResourceType | Value Item Id (RuleId) | Value |
Sharing | App | CanShareWithSecurityGroups | "noLimit" or "excludeSharingToSecurityGroups" |
Sharing | App | IsGroupSharingDisabled | "true" or "false" |
Sharing | App | MaximumShareLimit | integer as a string ("-1" means no limit) |
Sharing | Flow | CanShareWithSecurityGroups | "noLimit", "excludeSharingToSecurityGroups", or "disableSharing" |
Sharing | Flow | MaximumShareLimit |
|
Sharing | AuthoringBot | CanShareWithSecurityGroups | "noLimit" or "excludeSharingToSecurityGroups" |
Sharing | UsersBot | CanShareWithSecurityGroups | "noLimit" or "excludeSharingToSecurityGroups" |
Sharing | UsersBot | MaximumShareLimit | integer as a string |
Copilot | App | DisableAiGeneratedDescriptions | "true" or "false" |
GenerativeAISettings | NotSpecified | crossGeoCopilotDataMovementEnabled | "true" or "false" |
GenerativeAISettings | NotSpecified | bingChatEnabled | "true" or "false" |
Lifecycle | NotSpecified | RetentionPeriod | "7.00:00:00", "14.00:00:00", "21.00:00:00", or "28.00:00:00" (TimeSpan format for 7, 14, 21, or 28 days) |
SolutionChecker | NotSpecified | solutionCheckerMode | "none", "warn", or "block" |
SolutionChecker | NotSpecified | suppressValidationEmails | "true" or "false" |
SolutionChecker | NotSpecified | solutionCheckerRuleOverrides | comma-prefixed rule IDs e.g. ",desktopflow-avoid-excessive-wait-actions" (the leading comma is intentional, not a typo) |
AdminDigest | NotSpecified | IncludeOnHomePageInsights | "true" or "false" |
AdminDigest | NotSpecified | ExcludeEnvironmentFromAnalysis | "true" or "false" |
An additional note, while I set the Maker Onboarding Content (which is super useful in my opinion) and it's an option to choose in the connector, I could not get it to return data and my efforts to set it, did not work.
Here's a JSON body you can drop straight into the Create Rule Set action in the connector if you switch to the array input, if you find code easier. This is just an example of how the content would look like.
[
{
"type": "Sharing",
"resourceType": "App",
"value": [
{
"id": "CanShareWithSecurityGroups",
"value": "excludeSharingToSecurityGroups"
},
{
"id": "MaximumShareLimit",
"value": "25"
},
{
"id": "IsGroupSharingDisabled",
"value": "true"
}
]
}
]Environment Groups and Rule Sets (even if named strangely) are a genuinely powerful governance feature, but the lack of documentation makes them frustrating to work with programmatically. Automating the creation of groups, configuring settings is great. Annoyingly, it doesn't seem to support all rules but maybe it will be updated later.
Ciao for now
MCJ










Comments