CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/pypi-azure-mgmt-policyinsights

Microsoft Azure Policy Insights Client Library for Python providing comprehensive Azure Policy services management.

Pending

Quality

Pending

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

Overview
Eval results
Files

policy-states.mddocs/

Policy States Operations

Overview

Policy States operations enable querying and summarizing policy compliance states across different Azure scopes. These operations provide detailed compliance information and support triggering policy evaluations.

Core Functionality

Query Operations

list_query_results_for_management_group

def list_query_results_for_management_group(
    policy_states_resource: str,
    management_group_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a management group.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • management_group_name: Management group name
  • query_options: Optional query parameters (top, filter, orderby, select, from, to, apply)

Returns: Paginated collection of PolicyState objects

list_query_results_for_subscription

def list_query_results_for_subscription(
    policy_states_resource: str, 
    subscription_id: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a subscription.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_resource_group

def list_query_results_for_resource_group(
    policy_states_resource: str,
    subscription_id: str, 
    resource_group_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a resource group.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • resource_group_name: Resource group name
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_resource

def list_query_results_for_resource(
    policy_states_resource: str,
    resource_id: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a specific resource.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • resource_id: Full Azure resource ID
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_policy_set_definition

def list_query_results_for_policy_set_definition(
    policy_states_resource: str,
    subscription_id: str,
    policy_set_definition_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a policy set definition.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • policy_set_definition_name: Policy set definition name
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_policy_definition

def list_query_results_for_policy_definition(
    policy_states_resource: str,
    subscription_id: str,
    policy_definition_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a policy definition.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • policy_definition_name: Policy definition name
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_subscription_level_policy_assignment

def list_query_results_for_subscription_level_policy_assignment(
    policy_states_resource: str,
    subscription_id: str,
    policy_assignment_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a subscription-level policy assignment.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • policy_assignment_name: Policy assignment name
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

list_query_results_for_resource_group_level_policy_assignment

def list_query_results_for_resource_group_level_policy_assignment(
    policy_states_resource: str,
    subscription_id: str,
    resource_group_name: str,
    policy_assignment_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> ItemPaged[PolicyStatesQueryResults]

{ .api }

Query policy states for a resource group-level policy assignment.

Parameters:

  • policy_states_resource: Resource type ("default" or "latest")
  • subscription_id: Azure subscription ID
  • resource_group_name: Resource group name
  • policy_assignment_name: Policy assignment name
  • query_options: Optional query parameters

Returns: Paginated collection of PolicyState objects

Summary Operations

summarize_for_management_group

def summarize_for_management_group(
    management_group_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a management group.

Parameters:

  • management_group_name: Management group name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_subscription

def summarize_for_subscription(
    subscription_id: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a subscription.

Parameters:

  • subscription_id: Azure subscription ID
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_resource_group

def summarize_for_resource_group(
    subscription_id: str,
    resource_group_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a resource group.

Parameters:

  • subscription_id: Azure subscription ID
  • resource_group_name: Resource group name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_resource

def summarize_for_resource(
    resource_id: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a specific resource.

Parameters:

  • resource_id: Full Azure resource ID
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_policy_set_definition

def summarize_for_policy_set_definition(
    subscription_id: str,
    policy_set_definition_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a policy set definition.

Parameters:

  • subscription_id: Azure subscription ID
  • policy_set_definition_name: Policy set definition name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_policy_definition

def summarize_for_policy_definition(
    subscription_id: str,
    policy_definition_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a policy definition.

Parameters:

  • subscription_id: Azure subscription ID
  • policy_definition_name: Policy definition name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_subscription_level_policy_assignment

def summarize_for_subscription_level_policy_assignment(
    subscription_id: str,
    policy_assignment_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a subscription-level policy assignment.

Parameters:

  • subscription_id: Azure subscription ID
  • policy_assignment_name: Policy assignment name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

summarize_for_resource_group_level_policy_assignment

def summarize_for_resource_group_level_policy_assignment(
    subscription_id: str,
    resource_group_name: str,
    policy_assignment_name: str,
    query_options: Optional[QueryOptions] = None,
    **kwargs
) -> SummarizeResults

{ .api }

Summarize policy states for a resource group-level policy assignment.

Parameters:

  • subscription_id: Azure subscription ID
  • resource_group_name: Resource group name
  • policy_assignment_name: Policy assignment name
  • query_options: Optional query parameters

Returns: SummarizeResults object with compliance summary

Evaluation Trigger Operations

begin_trigger_subscription_evaluation

def begin_trigger_subscription_evaluation(
    subscription_id: str,
    **kwargs
) -> LROPoller[None]

{ .api }

Trigger policy evaluation for a subscription (long-running operation).

Parameters:

  • subscription_id: Azure subscription ID

Returns: LROPoller for monitoring operation progress

begin_trigger_resource_group_evaluation

def begin_trigger_resource_group_evaluation(
    subscription_id: str,
    resource_group_name: str,
    **kwargs
) -> LROPoller[None]

{ .api }

Trigger policy evaluation for a resource group (long-running operation).

Parameters:

  • subscription_id: Azure subscription ID
  • resource_group_name: Resource group name

Returns: LROPoller for monitoring operation progress

Related Types

PolicyState

class PolicyState:
    timestamp: Optional[datetime.datetime]
    resource_id: Optional[str]
    policy_assignment_id: Optional[str]
    policy_definition_id: Optional[str]
    effective_parameters: Optional[str]
    is_compliant: Optional[bool]
    subscription_id: Optional[str]
    resource_type: Optional[str]
    resource_location: Optional[str]
    resource_group: Optional[str]
    resource_tags: Optional[str]
    policy_assignment_name: Optional[str]
    policy_assignment_owner: Optional[str]
    policy_assignment_parameters: Optional[str]
    policy_assignment_scope: Optional[str]
    policy_definition_name: Optional[str]
    policy_definition_action: Optional[str]
    policy_definition_category: Optional[str]
    policy_set_definition_id: Optional[str]
    policy_set_definition_name: Optional[str]
    policy_set_definition_owner: Optional[str]
    policy_set_definition_category: Optional[str]
    policy_set_definition_parameters: Optional[str]
    management_group_ids: Optional[str]
    policy_definition_reference_id: Optional[str]
    compliance_state: Optional[str]
    policy_evaluation_details: Optional[PolicyEvaluationDetails]
    policy_definition_group_names: Optional[List[str]]
    components: Optional[List[ComponentStateDetails]]
    policy_definition_version: Optional[str]
    policy_set_definition_version: Optional[str]
    policy_assignment_version: Optional[str]

{ .api }

QueryOptions

class QueryOptions:
    top: Optional[int]
    filter: Optional[str]
    orderby: Optional[str]
    select: Optional[str]
    from_property: Optional[datetime.datetime]
    to: Optional[datetime.datetime]
    apply: Optional[str]
    expand: Optional[str]

{ .api }

SummarizeResults

class SummarizeResults:
    odata_context: Optional[str]
    odata_count: Optional[int]
    value: Optional[List[Summary]]

{ .api }

PolicyStatesResource Enum

class PolicyStatesResource(str, Enum):
    DEFAULT = "default"
    LATEST = "latest"

{ .api }

Usage Examples

Query Latest Policy States

# Query latest policy states for subscription with filtering
query_options = QueryOptions(
    filter="isCompliant eq false",
    top=100,
    orderby="timestamp desc"
)

policy_states = client.policy_states.list_query_results_for_subscription(
    policy_states_resource=PolicyStatesResource.LATEST,
    subscription_id=subscription_id,
    query_options=query_options
)

for state in policy_states:
    print(f"Resource: {state.resource_id}, Compliant: {state.is_compliant}")

Trigger Evaluation and Monitor Progress

# Trigger subscription evaluation
poller = client.policy_states.begin_trigger_subscription_evaluation(
    subscription_id=subscription_id
)

# Wait for completion
result = poller.result()  # This will block until completion
print("Policy evaluation completed")

# Or poll for status
while not poller.done():
    print("Evaluation in progress...")
    time.sleep(30)

Get Compliance Summary

# Get compliance summary for resource group
summary = client.policy_states.summarize_for_resource_group(
    subscription_id=subscription_id,
    resource_group_name="my-resource-group"
)

print(f"Total resources: {summary.odata_count}")
for summary_item in summary.value:
    print(f"Policy: {summary_item}")

Install with Tessl CLI

npx tessl i tessl/pypi-azure-mgmt-policyinsights

docs

index.md

policy-events.md

policy-metadata.md

policy-restrictions.md

policy-states.md

policy-tracked-resources.md

remediations.md

tile.json