Policy Findings
List Policy Findings
/api/orgs/{orgName}/policy/findingsReturns the policy Findings for an organization, with pagination and filtering via the grid request format. A Finding is one resource failing one policy, tracked with a triage state; it keeps the same id when it recurs or when the policy pack version changes. Each Finding includes the failing resource, the policy pack and policy that flagged it, the enforcement level (advisory or mandatory), severity, and triage status.
Request Parameters
orgNamestring path requiredThe organization nameclosedboolean query optionalIf true, return closed Findings; if false or omitted, return active Findings
Request Body
startRowinteger optionalThe start rowendRowinteger optionalThe end row- List of row group cols
- List of value cols
groupKeysarray[string] requiredList of group keys- The filter model
- List of sort model
Responses
- The list of policy issues
- ↳
idstring requiredThe unique identifier of the policy issue. - ↳
entityTypeenum requiredThe type of entity this issue applies to.Values:stack— Stackinsights-account— InsightsAccount
- ↳
entityProjectstring requiredThe project name (for stack entities) or parent Insights account name (for resource entities). - ↳
entityIdstring requiredThe identifier of the entity this issue applies to. - ↳
stackVersioninteger optionalThe stack version where the issue was detected. - ↳
resourceVersioninteger optionalThe resource version where the issue was detected. - ↳
policyPackstring requiredThe name of the policy pack that produced this issue. - ↳
policyPackTagstring requiredThe tag of the policy pack version that produced this issue. - ↳
policyNamestring requiredThe name of the policy that was violated. - ↳
resourceURNstring requiredThe URN of the resource that violated the policy. - ↳
resourceProviderstring requiredThe provider of the resource that violated the policy. - ↳
resourceTypestring requiredThe type of the resource that violated the policy. - ↳
resourceNamestring requiredThe name of the resource that violated the policy. - ↳
messagestring optionalA human-readable message describing the policy violation. - ↳
observedAtstring requiredThe timestamp when the issue was first observed. - ↳
lastModifiedstring optionalThe timestamp when the issue was last modified. - ↳
levelstring requiredThe enforcement level of the policy (e.g. advisory, mandatory, disabled). - ↳
severityenum requiredThe severity of the policy violation.Values:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- ↳
statusenum requiredThe current status of the policy issue.Values:open— Openin_progress— InProgressby_design— ByDesignfixed— Fixedignored— Ignored
- ↳
kindenum requiredThe kind of policy issue (audit or preventative).Values:audit,preventative - ↳
priorityenum requiredThe priority level of the policy issue.Values:p0,p1,p2,p3,p4 - The user the policy issue is assigned to.
- ↳
policyGroupNamestring optionalThe name of the policy group this issue belongs to. - ↳
policyGroupTypeenum optionalThe type of the policy group this issue belongs to.Values:audit,preventative groupDataarray[object] requiredGrouped data for policy issue aggregationrowCountinteger optionalThe total number of policy issue rows
Get Policy Finding
/api/orgs/{orgName}/policy/findings/{findingId}Returns the details of a specific policy Finding, including the failing resource, the policy pack and policy that flagged it, the enforcement level (advisory or mandatory), severity, and the current triage status. A Finding is one resource failing one policy, tracked with a triage state; it keeps the same id when it recurs or when the policy pack version changes.
Request Parameters
orgNamestring path requiredThe organization namefindingIdstring path requiredThe Finding identifier
Responses
- The policy issue details
- ↳
idstring requiredThe unique identifier of the policy issue. - ↳
entityTypeenum requiredThe type of entity this issue applies to.Values:stack— Stackinsights-account— InsightsAccount
- ↳
entityProjectstring requiredThe project name (for stack entities) or parent Insights account name (for resource entities). - ↳
entityIdstring requiredThe identifier of the entity this issue applies to. - ↳
stackVersioninteger optionalThe stack version where the issue was detected. - ↳
resourceVersioninteger optionalThe resource version where the issue was detected. - ↳
policyPackstring requiredThe name of the policy pack that produced this issue. - ↳
policyPackTagstring requiredThe tag of the policy pack version that produced this issue. - ↳
policyNamestring requiredThe name of the policy that was violated. - ↳
resourceURNstring requiredThe URN of the resource that violated the policy. - ↳
resourceProviderstring requiredThe provider of the resource that violated the policy. - ↳
resourceTypestring requiredThe type of the resource that violated the policy. - ↳
resourceNamestring requiredThe name of the resource that violated the policy. - ↳
messagestring optionalA human-readable message describing the policy violation. - ↳
observedAtstring requiredThe timestamp when the issue was first observed. - ↳
lastModifiedstring optionalThe timestamp when the issue was last modified. - ↳
levelstring requiredThe enforcement level of the policy (e.g. advisory, mandatory, disabled). - ↳
severityenum requiredThe severity of the policy violation.Values:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- ↳
statusenum requiredThe current status of the policy issue.Values:open— Openin_progress— InProgressby_design— ByDesignfixed— Fixedignored— Ignored
- ↳
kindenum requiredThe kind of policy issue (audit or preventative).Values:audit,preventative - ↳
priorityenum requiredThe priority level of the policy issue.Values:p0,p1,p2,p3,p4 - The user the policy issue is assigned to.
- ↳
policyGroupNamestring optionalThe name of the policy group this issue belongs to. - ↳
policyGroupTypeenum optionalThe type of the policy group this issue belongs to.Values:audit,preventative - The policy definition that caused this issue. May be null if the policy has been deleted or is unavailable.
- ↳
namestring requiredUnique URL-safe name for the policy. This is unique to a specific version of a Policy Pack. - ↳
displayNamestring requiredThe display name - ↳
descriptionstring requiredDescription is used to provide more context about the purpose of the policy. - ↳
enforcementLevelenum requiredThe enforcement levelValues:advisory,mandatory,remediate,disabled - ↳
messagestring requiredMessage is the message that will be displayed to end users when they violate this policy. - The JSON schema for the Policy’s configuration.
- ↳
severityenum optionalThe severity of the policy.Values:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- The compliance framework that this policy belongs to.
- ↳
tagsarray[string] optionalTags associated with the policy. - ↳
remediationStepsstring optionalA description of the steps to take to remediate a policy violation. - ↳
urlstring optionalA URL to more information about the policy. - The registry policy pack metadata. May be null if the policy pack is unavailable.
- ↳
idstring requiredID is the unique identifier for this policy pack in the registry. This is a UUID that corresponds to the policy pack’s database ID. - ↳
sourcestring requiredSource indicates where this policy pack is hosted (e.g., “private”, “pulumi”). Currently, only “private” policy packs are supported. - ↳
publisherstring requiredPublisher is the organization or user that published this policy pack. This corresponds to the Pulumi organization name. - ↳
namestring requiredName is the unique identifier for this policy pack within the publisher’s namespace. Policy pack names must be URL-safe and unique per publisher. - ↳
versionstring requiredVersion is the semantic version of this policy pack. This represents the latest or specific version being referenced. - ↳
displayNamestring requiredDisplayName is a human-readable name for this policy pack. This is typically more descriptive than the technical name. - ↳
accessLevelenum requiredAccessLevel is the client’s level of access to this policy pack.Values:full— Full- Full access to a policy pack (view + use)
view-only— ViewOnly- Access to view a policy pack
deny— Deny- No access to a policy pack
- ↳
enforcementLevelsarray[string] requiredEnforcementLevels are the client’s allowed enforcement levels for this policy pack.
Update Policy Finding
/api/orgs/{orgName}/policy/findings/{findingId}Updates a policy Finding’s triage status and other mutable fields. All body fields are optional — only provide the fields you want to update.
status:open,in_progress, orignored(fixedandby_designcannot be set manually)priority:p0,p1,p2,p3, orp4assignedTo: username to assign the Finding to, ornullto unassign
Request Parameters
orgNamestring path requiredThe organization namefindingIdstring path requiredThe Finding identifier
Request Body
assignedTostring optionalThe user to assign the policy issue to.statusenum optionalThe new status for the policy issue. Valid values: open, in_progress, ignored. Note: fixed and by_design cannot be set manually.Values:open— Openin_progress— InProgressby_design— ByDesignfixed— Fixedignored— Ignored
priorityenum optionalThe new priority for the policy issue.Values:p0,p1,p2,p3,p4
Responses
- The policy issue details
- ↳
idstring requiredThe unique identifier of the policy issue. - ↳
entityTypeenum requiredThe type of entity this issue applies to.Values:stack— Stackinsights-account— InsightsAccount
- ↳
entityProjectstring requiredThe project name (for stack entities) or parent Insights account name (for resource entities). - ↳
entityIdstring requiredThe identifier of the entity this issue applies to. - ↳
stackVersioninteger optionalThe stack version where the issue was detected. - ↳
resourceVersioninteger optionalThe resource version where the issue was detected. - ↳
policyPackstring requiredThe name of the policy pack that produced this issue. - ↳
policyPackTagstring requiredThe tag of the policy pack version that produced this issue. - ↳
policyNamestring requiredThe name of the policy that was violated. - ↳
resourceURNstring requiredThe URN of the resource that violated the policy. - ↳
resourceProviderstring requiredThe provider of the resource that violated the policy. - ↳
resourceTypestring requiredThe type of the resource that violated the policy. - ↳
resourceNamestring requiredThe name of the resource that violated the policy. - ↳
messagestring optionalA human-readable message describing the policy violation. - ↳
observedAtstring requiredThe timestamp when the issue was first observed. - ↳
lastModifiedstring optionalThe timestamp when the issue was last modified. - ↳
levelstring requiredThe enforcement level of the policy (e.g. advisory, mandatory, disabled). - ↳
severityenum requiredThe severity of the policy violation.Values:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- ↳
statusenum requiredThe current status of the policy issue.Values:open— Openin_progress— InProgressby_design— ByDesignfixed— Fixedignored— Ignored
- ↳
kindenum requiredThe kind of policy issue (audit or preventative).Values:audit,preventative - ↳
priorityenum requiredThe priority level of the policy issue.Values:p0,p1,p2,p3,p4 - The user the policy issue is assigned to.
- ↳
policyGroupNamestring optionalThe name of the policy group this issue belongs to. - ↳
policyGroupTypeenum optionalThe type of the policy group this issue belongs to.Values:audit,preventative - The policy definition that caused this issue. May be null if the policy has been deleted or is unavailable.
- ↳
namestring requiredUnique URL-safe name for the policy. This is unique to a specific version of a Policy Pack. - ↳
displayNamestring requiredThe display name - ↳
descriptionstring requiredDescription is used to provide more context about the purpose of the policy. - ↳
enforcementLevelenum requiredThe enforcement levelValues:advisory,mandatory,remediate,disabled - ↳
messagestring requiredMessage is the message that will be displayed to end users when they violate this policy. - The JSON schema for the Policy’s configuration.
- ↳
severityenum optionalThe severity of the policy.Values:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- The compliance framework that this policy belongs to.
- ↳
tagsarray[string] optionalTags associated with the policy. - ↳
remediationStepsstring optionalA description of the steps to take to remediate a policy violation. - ↳
urlstring optionalA URL to more information about the policy. - The registry policy pack metadata. May be null if the policy pack is unavailable.
- ↳
idstring requiredID is the unique identifier for this policy pack in the registry. This is a UUID that corresponds to the policy pack’s database ID. - ↳
sourcestring requiredSource indicates where this policy pack is hosted (e.g., “private”, “pulumi”). Currently, only “private” policy packs are supported. - ↳
publisherstring requiredPublisher is the organization or user that published this policy pack. This corresponds to the Pulumi organization name. - ↳
namestring requiredName is the unique identifier for this policy pack within the publisher’s namespace. Policy pack names must be URL-safe and unique per publisher. - ↳
versionstring requiredVersion is the semantic version of this policy pack. This represents the latest or specific version being referenced. - ↳
displayNamestring requiredDisplayName is a human-readable name for this policy pack. This is typically more descriptive than the technical name. - ↳
accessLevelenum requiredAccessLevel is the client’s level of access to this policy pack.Values:full— Full- Full access to a policy pack (view + use)
view-only— ViewOnly- Access to view a policy pack
deny— Deny- No access to a policy pack
- ↳
enforcementLevelsarray[string] requiredEnforcementLevels are the client’s allowed enforcement levels for this policy pack.
Get Policy Findings Compliance
/api/orgs/{orgName}/policy/findings/complianceReturns compliance data for policy Findings grouped by entity. The grouping can be by stack, cloud account, or severity, providing different views of the organization’s policy compliance posture. This powers the compliance dashboard in the Pulumi Cloud console.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
entityenum requiredEntity type to filter byValues:stack,account,severitycontinuationTokenstring optionalContinuation token for paginationsizeinteger optionalNumber of results to return
Responses
columnsarray[string] requiredColumn names (policy pack names) in order- List of policy compliance result rows
- ↳
entityNamestring requiredEntity name (stack name or account name) - ↳
scoresarray[integer] requiredArray of compliance scores correlating to columns array. -1 indicates N/A continuationTokenstring optionalContinuation token for next page
Export Policy Findings
/api/orgs/{orgName}/policy/findings/exportExports the policy Findings for an organization to CSV for offline analysis or reporting. A Finding is one resource failing one policy, tracked with a triage state; it keeps the same id when it recurs or when the policy pack version changes. The export includes the failing resource, policy name, enforcement level, and severity of each Finding.
Request Parameters
orgNamestring path requiredThe organization nameclosedboolean query optionalIf true, return closed Findings; if false or omitted, return active Findings
Request Body
startRowinteger optionalThe start rowendRowinteger optionalThe end row- List of row group cols
- List of value cols
groupKeysarray[string] requiredList of group keys- The filter model
- List of sort model
Responses
Get Policy Findings Filters
/api/orgs/{orgName}/policy/findings/filtersReturns the available filter options for listing policy Findings, such as policy pack names, enforcement levels, severity values, and resource types. Use it to populate filter controls for the Findings list.
Request Parameters
orgNamestring path requiredThe organization nameclosedboolean query optionalIf true, return filters for closed Findings; if false or omitted, return filters for active Findings
Request Body
- Optional filter model to apply when getting available filter values. Same format as used in policy issues list.
fieldstring requiredField name
Responses
fieldstring requiredThe field name for which filter values are provided.- The available filter values for the field.
- ↳
namestring requiredThe name of the filter value. - ↳
countinteger requiredThe count of policy issues matching this filter value.
Get Policy Findings Metadata
/api/orgs/{orgName}/policy/findings/metadataReturns high-level policy compliance counts for an organization: the number of enabled policies, the number of policies with open Findings, the number of resources with open Findings, and the number of resources governed by a policy group.
Request Parameters
orgNamestring path requiredThe organization name
Responses
policyTotalCountinteger requiredTotal number of policiespolicyWithIssuesCountinteger requiredNumber of policies with issuesresourcesTotalCountinteger requiredTotal number of resources covered by policiesresourcesWithIssuesCountinteger requiredNumber of resources with issues
List Policy Findings Policies
/api/orgs/{orgName}/policy/findings/policiesReturns policy compliance data grouped by policy pack and policy name, showing how many stacks are in compliance or have open Findings for each individual policy rule. Supports pagination and filtering via the grid request format.
Request Parameters
orgNamestring path requiredThe organization name
Request Body
startRowinteger optionalThe start rowendRowinteger optionalThe end row- List of row group cols
- List of value cols
groupKeysarray[string] requiredList of group keys- The filter model
- List of sort model
Responses
- The list of policy compliance rows
- ↳
policyNamestring requiredThe name of the policy - ↳
severityenum requiredThe severity level of the policyValues:— Unspecifiedlow— Lowmedium— Mediumhigh— Highcritical— Critical
- ↳
failingResourcesinteger requiredNumber of resources failing this policy - ↳
governedResourcesinteger requiredTotal number of resources governed by this policy - ↳
percentCompliantinteger requiredPercentage of resources that are compliant (0-100) - ↳
policyPackstring requiredThe policy pack this policy belongs to - ↳
policyGroupNamestring requiredThe policy group this policy belongs to - ↳
policyGroupTypeenum requiredThe type of the policy group this policy belongs toValues:audit,preventative totalCountinteger optionalThe total number of policiescontinuationTokenstring optionalContinuation token for pagination