Hi ar3diu,
You are correct—the curatedRuleSetDeployments resource only returns deployment state at the curated rule-set and precision level. It does not expose an override applied to one individual curated rule.
For the individual rule state, use the unified Rules API rather than curatedRules or rules/{id}/deployment.
First, list Google-owned curated rules using the configuration view:
GET https://{endpoint}/v1alpha/projects/{project}/locations/{location}/instances/{instance}/rules?filter=rule_owner%3A%22GOOGLE%22&view=CONFIG_ONLY&pageSize=5000
Locate the specific rule’s unified resource name:
projects/{project}/locations/{location}/instances/{instance}/rules/ur_{rule_id}
Then retrieve that individual curated rule:
GET https://{endpoint}/v1alpha/projects/{project}/locations/{location}/instances/{instance}/rules/ur_{rule_id}?view=CONFIG_ONLY
The returned Rule configuration contains the individual state:
{
"displayName": "...",
"ruleOwner": "GOOGLE",
"alertingEnabled": false,
"liveModeEnabled": true,
"archived": false,
"executionState": "DEFAULT"
}
The important distinction is that the identifier must be the unified ur_... rule ID. A legacy curated-rule ID passed to:
/rules/{rule}/deployment
will return a 404 because that endpoint expects the legacy RuleDeployment child resource.
CONFIG_ONLY is specifically intended to return the per-rule configuration, including alerting and live-mode state. The unified Rules API is currently Pre-GA, so availability may depend on whether the unified rules feature is enabled for the instance. �
Google Cloud Documentation +2
R.Q
whathehack81