From faa6b290752ff637973efd99f4075842d28e45b6 Mon Sep 17 00:00:00 2001 From: Emiel Verkade Date: Tue, 28 Jul 2026 11:38:44 +0100 Subject: [PATCH 1/3] Document feature flag experiment permissions --- content/en/feature_flags/concepts/targeting_rules.md | 6 ++++++ content/en/mcp_server/tools.md | 4 ++-- data/api/v2/full_spec.yaml | 12 ++++++++++++ data/api/v2/translate_actions.json | 6 +++--- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/content/en/feature_flags/concepts/targeting_rules.md b/content/en/feature_flags/concepts/targeting_rules.md index 163f95a86c3..6cb025f4ffa 100644 --- a/content/en/feature_flags/concepts/targeting_rules.md +++ b/content/en/feature_flags/concepts/targeting_rules.md @@ -30,6 +30,12 @@ Datadog supports different targeting rule types depending on your rollout strate | **Progressive rollout** | Randomized rollout over a schedule with multiple steps | | **Experiment** | Randomized allocation associated with an experiment | +## Permissions + +Creating or editing targeting rules requires the **Feature Flag Write** permission. Changes that create, update, or remove experiment-owned allocation state also require the **Product Analytics Experiments Write** permission. Experiment-owned state includes canary allocations, experiment allocations, progressive rollout exposure schedules, and guardrail metrics. + +Saving targeting rules replaces the complete allocation set for the flag environment. As a result, the additional permission is required when either the new rules or the existing allocation set contains experiment-owned state. + ## Configure targeting rules To configure targeting rules for a flag: diff --git a/content/en/mcp_server/tools.md b/content/en/mcp_server/tools.md index 44ca70f346c..6c703384a6f 100644 --- a/content/en/mcp_server/tools.md +++ b/content/en/mcp_server/tools.md @@ -1067,7 +1067,7 @@ Lists allocations for a feature flag in a specific environment. ### `update_datadog_feature_flag_environment` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`*\ +*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the environment contains experiment-owned allocation state.*\ Updates a feature flag configuration in a specific environment. - Enable the `dark-mode` flag in the staging environment. @@ -1082,7 +1082,7 @@ Checks if a feature flag is implemented in code. ### `sync_datadog_feature_flag_allocations` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Write`*\ +*Permissions Required: `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the request or the existing environment contains experiment-owned allocation state.*\ Syncs feature flag allocations for a specific environment. - Sync the allocations for flag `new-checkout-flow` in production. diff --git a/data/api/v2/full_spec.yaml b/data/api/v2/full_spec.yaml index 43765ff91f2..02529c5bddd 100644 --- a/data/api/v2/full_spec.yaml +++ b/data/api/v2/full_spec.yaml @@ -140659,6 +140659,11 @@ paths: post: description: |- Creates a new targeting rule (allocation) for a specific feature flag in a specific environment. + + This operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation + state also requires the **Product Analytics Experiments Write** permission. Experiment-owned state + includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or + `guardrail_metrics`. operationId: CreateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" @@ -140779,6 +140784,13 @@ paths: description: |- Updates targeting rules (allocations) for a specific feature flag in a specific environment. This operation replaces the existing allocation set with the request payload. + + This operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned + allocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned + state includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or + `guardrail_metrics`. Because this operation replaces the complete allocation set, the additional + permission is required when either the request or the existing allocation set contains experiment-owned + state. operationId: UpdateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" diff --git a/data/api/v2/translate_actions.json b/data/api/v2/translate_actions.json index c948b3a447c..ceee628cadb 100644 --- a/data/api/v2/translate_actions.json +++ b/data/api/v2/translate_actions.json @@ -1905,13 +1905,13 @@ "summary": "Archive a feature flag" }, "CreateAllocationsForFeatureFlagInEnvironment": { - "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.", + "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.\n\nThis operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation\nstate also requires the **Product Analytics Experiments Write** permission. Experiment-owned state\nincludes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or\n`guardrail_metrics`.", "summary": "Create targeting rules for a flag env", "request_description": "", "request_schema_description": "Request to create targeting rules (allocations) for a feature flag in an environment." }, "UpdateAllocationsForFeatureFlagInEnvironment": { - "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.", + "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.\n\nThis operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned\nallocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned\nstate includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or\n`guardrail_metrics`. Because this operation replaces the complete allocation set, the additional\npermission is required when either the request or the existing allocation set contains experiment-owned\nstate.", "summary": "Update targeting rules for a flag", "request_description": "", "request_schema_description": "Request to overwrite targeting rules (allocations) for a feature flag in an environment." @@ -6936,4 +6936,4 @@ "description": "Cancels a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access).", "summary": "Cancel a workflow instance" } -} \ No newline at end of file +} From d1fcf4ac8b2707dcc4a89588c103f905ee29335a Mon Sep 17 00:00:00 2001 From: Emiel Verkade Date: Tue, 28 Jul 2026 12:25:15 +0100 Subject: [PATCH 2/3] Clarify targeting rule permission requirements --- .../en/feature_flags/concepts/targeting_rules.md | 2 +- content/en/mcp_server/tools.md | 4 ++-- data/api/v2/full_spec.yaml | 14 ++++++++------ data/api/v2/translate_actions.json | 4 ++-- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/content/en/feature_flags/concepts/targeting_rules.md b/content/en/feature_flags/concepts/targeting_rules.md index 6cb025f4ffa..938f93be221 100644 --- a/content/en/feature_flags/concepts/targeting_rules.md +++ b/content/en/feature_flags/concepts/targeting_rules.md @@ -32,7 +32,7 @@ Datadog supports different targeting rule types depending on your rollout strate ## Permissions -Creating or editing targeting rules requires the **Feature Flag Write** permission. Changes that create, update, or remove experiment-owned allocation state also require the **Product Analytics Experiments Write** permission. Experiment-owned state includes canary allocations, experiment allocations, progressive rollout exposure schedules, and guardrail metrics. +Creating or editing targeting rules requires the **Feature Flag Write** permission. Changes that create, update, or remove experiment-owned allocation state also require the **Product Analytics Experiments Write** permission. Experiment-owned state includes canary allocations, experiment allocations, progressive rollout exposure schedules, and guardrail metrics. Instant targeting rules with a `NO_ROLLOUT` exposure schedule require only the **Feature Flag Write** permission. Saving targeting rules replaces the complete allocation set for the flag environment. As a result, the additional permission is required when either the new rules or the existing allocation set contains experiment-owned state. diff --git a/content/en/mcp_server/tools.md b/content/en/mcp_server/tools.md index 6c703384a6f..f284fb7948e 100644 --- a/content/en/mcp_server/tools.md +++ b/content/en/mcp_server/tools.md @@ -1067,7 +1067,7 @@ Lists allocations for a feature flag in a specific environment. ### `update_datadog_feature_flag_environment` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the environment contains experiment-owned allocation state.*\ +*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the environment contains a canary allocation, experiment-linked allocation, progressive rollout exposure schedule, or guardrail metrics. Instant `NO_ROLLOUT` targeting rules require only `Feature Flag Write`.*\ Updates a feature flag configuration in a specific environment. - Enable the `dark-mode` flag in the staging environment. @@ -1082,7 +1082,7 @@ Checks if a feature flag is implemented in code. ### `sync_datadog_feature_flag_allocations` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the request or the existing environment contains experiment-owned allocation state.*\ +*Permissions Required: `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the request or the existing environment contains a canary allocation, experiment-linked allocation, progressive rollout exposure schedule, or guardrail metrics. Instant `NO_ROLLOUT` targeting rules require only `Feature Flag Write`.*\ Syncs feature flag allocations for a specific environment. - Sync the allocations for flag `new-checkout-flow` in production. diff --git a/data/api/v2/full_spec.yaml b/data/api/v2/full_spec.yaml index 02529c5bddd..37080567394 100644 --- a/data/api/v2/full_spec.yaml +++ b/data/api/v2/full_spec.yaml @@ -140662,8 +140662,9 @@ paths: This operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned state - includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or - `guardrail_metrics`. + includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and + allocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant + `NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. operationId: CreateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" @@ -140787,10 +140788,11 @@ paths: This operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned allocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned - state includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or - `guardrail_metrics`. Because this operation replaces the complete allocation set, the additional - permission is required when either the request or the existing allocation set contains experiment-owned - state. + state includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and + allocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant + `NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. Because this operation + replaces the complete allocation set, the additional permission is required when either the request or + the existing allocation set contains experiment-owned state. operationId: UpdateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" diff --git a/data/api/v2/translate_actions.json b/data/api/v2/translate_actions.json index ceee628cadb..24e9a97c7a2 100644 --- a/data/api/v2/translate_actions.json +++ b/data/api/v2/translate_actions.json @@ -1905,13 +1905,13 @@ "summary": "Archive a feature flag" }, "CreateAllocationsForFeatureFlagInEnvironment": { - "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.\n\nThis operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation\nstate also requires the **Product Analytics Experiments Write** permission. Experiment-owned state\nincludes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or\n`guardrail_metrics`.", + "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.\n\nThis operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation\nstate also requires the **Product Analytics Experiments Write** permission. Experiment-owned state\nincludes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and\nallocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant\n`NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission.", "summary": "Create targeting rules for a flag env", "request_description": "", "request_schema_description": "Request to create targeting rules (allocations) for a feature flag in an environment." }, "UpdateAllocationsForFeatureFlagInEnvironment": { - "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.\n\nThis operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned\nallocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned\nstate includes `CANARY` allocations and allocations with an `experiment_id`, `exposure_schedule`, or\n`guardrail_metrics`. Because this operation replaces the complete allocation set, the additional\npermission is required when either the request or the existing allocation set contains experiment-owned\nstate.", + "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.\n\nThis operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned\nallocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned\nstate includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and\nallocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant\n`NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. Because this operation\nreplaces the complete allocation set, the additional permission is required when either the request or\nthe existing allocation set contains experiment-owned state.", "summary": "Update targeting rules for a flag", "request_description": "", "request_schema_description": "Request to overwrite targeting rules (allocations) for a feature flag in an environment." From c68a5b4b3b283920c352f6b0fee5b7f997f8fc3b Mon Sep 17 00:00:00 2001 From: Emiel Verkade Date: Tue, 28 Jul 2026 14:08:24 +0100 Subject: [PATCH 3/3] Clarify standalone rollout permission requirements --- .../feature_flags/concepts/targeting_rules.md | 6 ++-- content/en/mcp_server/tools.md | 4 +-- data/api/v2/full_spec.yaml | 35 +++++++++++++------ data/api/v2/translate_actions.json | 12 +++---- 4 files changed, 37 insertions(+), 20 deletions(-) diff --git a/content/en/feature_flags/concepts/targeting_rules.md b/content/en/feature_flags/concepts/targeting_rules.md index 938f93be221..907cc4a212e 100644 --- a/content/en/feature_flags/concepts/targeting_rules.md +++ b/content/en/feature_flags/concepts/targeting_rules.md @@ -32,9 +32,11 @@ Datadog supports different targeting rule types depending on your rollout strate ## Permissions -Creating or editing targeting rules requires the **Feature Flag Write** permission. Changes that create, update, or remove experiment-owned allocation state also require the **Product Analytics Experiments Write** permission. Experiment-owned state includes canary allocations, experiment allocations, progressive rollout exposure schedules, and guardrail metrics. Instant targeting rules with a `NO_ROLLOUT` exposure schedule require only the **Feature Flag Write** permission. +Creating or editing targeting rules requires the **Feature Flag Write** permission. Changes that create, update, or remove experiment-owned allocation state also require the **Product Analytics Experiments Write** permission. An allocation is experiment-owned when it has a non-empty `experiment_id` or guardrail metrics. A standalone canary allocation or progressive rollout exposure schedule requires only the **Feature Flag Write** permission. -Saving targeting rules replaces the complete allocation set for the flag environment. As a result, the additional permission is required when either the new rules or the existing allocation set contains experiment-owned state. +Saving targeting rules replaces the complete allocation set for the flag environment. As a result, the additional permission is required when either the new rules or the existing allocation set contains an experiment-linked or guardrail-backed allocation. + +Starting, pausing, resuming, stopping, or deleting a standalone progressive rollout requires the **Feature Flag Write** permission. If the rollout's allocation is experiment-owned, the operation also requires the **Product Analytics Experiments Write** permission. ## Configure targeting rules diff --git a/content/en/mcp_server/tools.md b/content/en/mcp_server/tools.md index f284fb7948e..79df8ebb497 100644 --- a/content/en/mcp_server/tools.md +++ b/content/en/mcp_server/tools.md @@ -1067,7 +1067,7 @@ Lists allocations for a feature flag in a specific environment. ### `update_datadog_feature_flag_environment` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the environment contains a canary allocation, experiment-linked allocation, progressive rollout exposure schedule, or guardrail metrics. Instant `NO_ROLLOUT` targeting rules require only `Feature Flag Write`.*\ +*Permissions Required: `Feature Flag Environment Read` and `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the environment contains an allocation with a non-empty `experiment_id` or guardrail metrics. Standalone canary allocations and progressive rollout exposure schedules require only `Feature Flag Write`.*\ Updates a feature flag configuration in a specific environment. - Enable the `dark-mode` flag in the staging environment. @@ -1082,7 +1082,7 @@ Checks if a feature flag is implemented in code. ### `sync_datadog_feature_flag_allocations` *Toolset: **feature-flags***\ -*Permissions Required: `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the request or the existing environment contains a canary allocation, experiment-linked allocation, progressive rollout exposure schedule, or guardrail metrics. Instant `NO_ROLLOUT` targeting rules require only `Feature Flag Write`.*\ +*Permissions Required: `Feature Flag Write`. `Product Analytics Experiments Write` is also required when the request or the existing environment contains an allocation with a non-empty `experiment_id` or guardrail metrics. Standalone canary allocations and progressive rollout exposure schedules require only `Feature Flag Write`.*\ Syncs feature flag allocations for a specific environment. - Sync the allocations for flag `new-checkout-flow` in production. diff --git a/data/api/v2/full_spec.yaml b/data/api/v2/full_spec.yaml index 37080567394..e12fc928418 100644 --- a/data/api/v2/full_spec.yaml +++ b/data/api/v2/full_spec.yaml @@ -140176,6 +140176,10 @@ paths: post: description: |- Pauses a progressive rollout while preserving rollout state. + + This operation requires the **Feature Flag Write** permission. If the rollout's allocation has + a non-empty `experiment_id` or guardrail metrics, it also requires the + **Product Analytics Experiments Write** permission. operationId: PauseExposureSchedule parameters: - $ref: "#/components/parameters/exposure_schedule_id" @@ -140243,6 +140247,10 @@ paths: post: description: |- Resumes progression for a previously paused progressive rollout. + + This operation requires the **Feature Flag Write** permission. If the rollout's allocation has + a non-empty `experiment_id` or guardrail metrics, it also requires the + **Product Analytics Experiments Write** permission. operationId: ResumeExposureSchedule parameters: - $ref: "#/components/parameters/exposure_schedule_id" @@ -140310,6 +140318,10 @@ paths: post: description: |- Starts a progressive rollout and begins progression. + + This operation requires the **Feature Flag Write** permission. If the rollout's allocation has + a non-empty `experiment_id` or guardrail metrics, it also requires the + **Product Analytics Experiments Write** permission. operationId: StartExposureSchedule parameters: - $ref: "#/components/parameters/exposure_schedule_id" @@ -140377,6 +140389,10 @@ paths: post: description: |- Stops a progressive rollout and marks it as aborted. + + This operation requires the **Feature Flag Write** permission. If the rollout's allocation has + a non-empty `experiment_id` or guardrail metrics, it also requires the + **Product Analytics Experiments Write** permission. operationId: StopExposureSchedule parameters: - $ref: "#/components/parameters/exposure_schedule_id" @@ -140661,10 +140677,10 @@ paths: Creates a new targeting rule (allocation) for a specific feature flag in a specific environment. This operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation - state also requires the **Product Analytics Experiments Write** permission. Experiment-owned state - includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and - allocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant - `NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. + state also requires the **Product Analytics Experiments Write** permission. An allocation is + experiment-owned when it has a non-empty `experiment_id` or `guardrail_metrics`. A standalone + `CANARY` allocation or progressive `exposure_schedule` requires only the **Feature Flag Write** + permission. operationId: CreateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" @@ -140787,12 +140803,11 @@ paths: This operation replaces the existing allocation set with the request payload. This operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned - allocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned - state includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and - allocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant - `NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. Because this operation - replaces the complete allocation set, the additional permission is required when either the request or - the existing allocation set contains experiment-owned state. + allocation state also requires the **Product Analytics Experiments Write** permission. An allocation is + experiment-owned when it has a non-empty `experiment_id` or `guardrail_metrics`. A standalone `CANARY` + allocation or progressive `exposure_schedule` requires only the **Feature Flag Write** permission. + Because this operation replaces the complete allocation set, the additional permission is required when + either the request or the existing allocation set contains experiment-owned state. operationId: UpdateAllocationsForFeatureFlagInEnvironment parameters: - $ref: "#/components/parameters/feature_flag_id" diff --git a/data/api/v2/translate_actions.json b/data/api/v2/translate_actions.json index 24e9a97c7a2..cdcb975ba1f 100644 --- a/data/api/v2/translate_actions.json +++ b/data/api/v2/translate_actions.json @@ -1875,19 +1875,19 @@ "request_schema_description": "Request to update an environment." }, "PauseExposureSchedule": { - "description": "Pauses a progressive rollout while preserving rollout state.", + "description": "Pauses a progressive rollout while preserving rollout state.\n\nThis operation requires the **Feature Flag Write** permission. If the rollout's allocation has\na non-empty `experiment_id` or guardrail metrics, it also requires the\n**Product Analytics Experiments Write** permission.", "summary": "Pause a progressive rollout" }, "ResumeExposureSchedule": { - "description": "Resumes progression for a previously paused progressive rollout.", + "description": "Resumes progression for a previously paused progressive rollout.\n\nThis operation requires the **Feature Flag Write** permission. If the rollout's allocation has\na non-empty `experiment_id` or guardrail metrics, it also requires the\n**Product Analytics Experiments Write** permission.", "summary": "Resume a progressive rollout" }, "StartExposureSchedule": { - "description": "Starts a progressive rollout and begins progression.", + "description": "Starts a progressive rollout and begins progression.\n\nThis operation requires the **Feature Flag Write** permission. If the rollout's allocation has\na non-empty `experiment_id` or guardrail metrics, it also requires the\n**Product Analytics Experiments Write** permission.", "summary": "Start a progressive rollout" }, "StopExposureSchedule": { - "description": "Stops a progressive rollout and marks it as aborted.", + "description": "Stops a progressive rollout and marks it as aborted.\n\nThis operation requires the **Feature Flag Write** permission. If the rollout's allocation has\na non-empty `experiment_id` or guardrail metrics, it also requires the\n**Product Analytics Experiments Write** permission.", "summary": "Stop a progressive rollout" }, "GetFeatureFlag": { @@ -1905,13 +1905,13 @@ "summary": "Archive a feature flag" }, "CreateAllocationsForFeatureFlagInEnvironment": { - "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.\n\nThis operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation\nstate also requires the **Product Analytics Experiments Write** permission. Experiment-owned state\nincludes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and\nallocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant\n`NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission.", + "description": "Creates a new targeting rule (allocation) for a specific feature flag in a specific environment.\n\nThis operation requires the **Feature Flag Write** permission. Creating experiment-owned allocation\nstate also requires the **Product Analytics Experiments Write** permission. An allocation is\nexperiment-owned when it has a non-empty `experiment_id` or `guardrail_metrics`. A standalone\n`CANARY` allocation or progressive `exposure_schedule` requires only the **Feature Flag Write**\npermission.", "summary": "Create targeting rules for a flag env", "request_description": "", "request_schema_description": "Request to create targeting rules (allocations) for a feature flag in an environment." }, "UpdateAllocationsForFeatureFlagInEnvironment": { - "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.\n\nThis operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned\nallocation state also requires the **Product Analytics Experiments Write** permission. Experiment-owned\nstate includes `CANARY` allocations, allocations with an `experiment_id` or `guardrail_metrics`, and\nallocations with a progressive `exposure_schedule` (a strategy other than `NO_ROLLOUT`). An instant\n`NO_ROLLOUT` targeting rule requires only the **Feature Flag Write** permission. Because this operation\nreplaces the complete allocation set, the additional permission is required when either the request or\nthe existing allocation set contains experiment-owned state.", + "description": "Updates targeting rules (allocations) for a specific feature flag in a specific environment.\nThis operation replaces the existing allocation set with the request payload.\n\nThis operation requires the **Feature Flag Write** permission. Updating or removing experiment-owned\nallocation state also requires the **Product Analytics Experiments Write** permission. An allocation is\nexperiment-owned when it has a non-empty `experiment_id` or `guardrail_metrics`. A standalone `CANARY`\nallocation or progressive `exposure_schedule` requires only the **Feature Flag Write** permission.\nBecause this operation replaces the complete allocation set, the additional permission is required when\neither the request or the existing allocation set contains experiment-owned state.", "summary": "Update targeting rules for a flag", "request_description": "", "request_schema_description": "Request to overwrite targeting rules (allocations) for a feature flag in an environment."