arazzo: 1.0.1 info: title: Microsoft Endpoint Configuration Management Data Warehouse Policy Compliance Analytics summary: Correlate Data Warehouse policies with their device activity and the device population. description: >- A historical analytics flow over the Intune Data Warehouse. The workflow lists policy dimension records, pulls the policy device activity facts that track compliance counts over time, and lists the device population so the counts can be put in context. Together these give an analyst the inputs to build a compliance trend report. Every step spells out its request inline so the flow can be read and executed without opening the underlying OpenAPI description. version: 1.0.0 sourceDescriptions: - name: intuneDataWarehouseApi url: ../openapi/microsoft-endpoint-configuration-management-intune-data-warehouse-api-openapi.yml type: openapi workflows: - workflowId: warehouse-policy-compliance-analytics summary: List policies, their device activity facts, and the device population. description: >- Lists policy dimension records, lists policy device activity facts, and lists device records, all bounded by the supplied history window. inputs: type: object required: - apiVersion properties: accessToken: type: string description: OAuth 2.0 bearer token for the Intune Data Warehouse resource. apiVersion: type: string description: API version to use (v1.0 or beta). maxHistoryDays: type: integer description: Maximum number of days of history to retrieve. top: type: integer description: Maximum number of records to return per list. steps: - stepId: listPolicies description: List compliance and configuration policy dimension records. operationId: listPolicies parameters: - name: api-version in: query value: $inputs.apiVersion - name: $top in: query value: $inputs.top - name: Authorization in: header value: "Bearer $inputs.accessToken" successCriteria: - condition: $statusCode == 200 outputs: policies: $response.body#/value - stepId: listPolicyActivities description: List policy device activity facts that track compliance counts over time. operationId: listPolicyDeviceActivities parameters: - name: api-version in: query value: $inputs.apiVersion - name: maxhistorydays in: query value: $inputs.maxHistoryDays - name: $top in: query value: $inputs.top - name: Authorization in: header value: "Bearer $inputs.accessToken" successCriteria: - condition: $statusCode == 200 outputs: policyActivities: $response.body#/value - stepId: listDevices description: List device records to contextualize the compliance activity counts. operationId: listDevices parameters: - name: api-version in: query value: $inputs.apiVersion - name: maxhistorydays in: query value: $inputs.maxHistoryDays - name: $top in: query value: $inputs.top - name: Authorization in: header value: "Bearer $inputs.accessToken" successCriteria: - condition: $statusCode == 200 outputs: devices: $response.body#/value outputs: policies: $steps.listPolicies.outputs.policies policyActivities: $steps.listPolicyActivities.outputs.policyActivities devices: $steps.listDevices.outputs.devices