Patch a saved filter
https://api.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.us3.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.us5.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.datadoghq.eu/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.ap1.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.ap2.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.uk1.datadoghq.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.ddog-gov.com/api/v2/feature-flags/saved-filters/{saved_filter_id}https://api.us2.ddog-gov.com/api/v2/feature-flags/saved-filters/{saved_filter_id}概要
Partially updates a saved filter. Supports both LIST and RULES filters.
Supply at least one of name, description, or targeting_rules. Omitted or null fields
are preserved. Supplying targeting_rules replaces the entire collection and propagates
changes to every feature flag that references the saved filter.
Metadata-only updates do not require edit permission or approval on those feature flags.
Rule updates require edit permission on all consumer flags and are rejected when approval
is required, unless the caller has the feature_flag_approvals_override permission.
The optional last_updated_at field detects stale updates. It does not set the update time.
OAuth apps require the feature_flag_config_write authorization scope to access this endpoint.
引数
パスパラメーター
saved_filter_id [required]The ID of the saved filter.
リクエスト
Body Data (required)
data [required]The saved filter fields to update.
attributes [required]Fields to update. At least one of name, description, or targeting_rules must have a non-null value. Omitted or null fields are preserved. The creation type cannot be changed.
descriptionThe new description. Send an empty string to clear the description. If omitted or null, the existing description is preserved.
last_updated_atThe updated_at value returned by a previous read, as an RFC 3339 timestamp. If it differs from the stored update time, truncated to seconds, the request returns a 409 response. For metadata-only updates, this check does not prevent all concurrent writes. This field alone does not constitute an update.
nameThe new name of the saved filter. Must not be empty.
targeting_rulesThe complete replacement targeting rules, combined with OR. Conditions within each rule are combined with AND. Replaces all existing rules. Values are not appended. Must contain at least one rule. Saved filters cannot reference other saved filters.
conditions [required]Inline conditions combined with AND. Must contain at least one condition.
attribute [required]The attribute evaluated by the condition.
operator [required]The comparison operator used by a saved filter condition.
LT, LTE, GT, GTE, MATCHES, NOT_MATCHES, ONE_OF, NOT_ONE_OF, IS_NULL, EQUALSShow 6 more
SEMVER_EQ, SEMVER_NEQ, SEMVER_LT, SEMVER_LTE, SEMVER_GT, SEMVER_GTEvalue [required]Values used by the condition operator. Values must satisfy the selected operator and the organization targeting limits.
type [required]The saved filter resource type.
saved-filtersPatch a saved filter accepts the current timestamp for metadata
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}Patch a saved filter accepts the current timestamp for rules
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}Patch a saved filter clears the description with an empty string
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}応答
OK
Response containing a saved filter and its targeting rules.
data [required]A saved filter resource.
attributes [required]Saved filter details, including the full targeting rules and conditions.
archived_atThe time the saved filter was archived. Omitted when the filter is not archived.
created_at [required]The time the saved filter was created.
created_by [required]The ID of the user who created the saved filter.
creation_type [required]How the saved filter was authored. RULES indicates rule-based authoring and LIST indicates list import. Both types return targeting rules and conditions.
RULES, LISTdescriptionA description of the saved filter. Omitted when no description is set.
migration_metadataOptional JSON metadata supplied by migration tools for tracking the source of a saved filter.
name [required]The name of the saved filter.
targeting_rules [required]Targeting rules combined with OR. Conditions within each rule are combined with AND. Both saved lists and saved rules use this structure.
conditions [required]Conditions combined with AND within this targeting rule.
attribute [required]The attribute evaluated by the condition.
id [required]The ID of the condition.
operator [required]The comparison operator used by a saved filter condition.
LT, LTE, GT, GTE, MATCHES, NOT_MATCHES, ONE_OF, NOT_ONE_OF, IS_NULL, EQUALSShow 6 more
SEMVER_EQ, SEMVER_NEQ, SEMVER_LT, SEMVER_LTE, SEMVER_GT, SEMVER_GTEvalue [required]Values used by the condition operator.
id [required]The ID of the targeting rule.
updated_at [required]The time the saved filter was last updated.
id [required]The ID of the saved filter.
type [required]The saved filter resource type.
saved-filters{
"data": {
"attributes": {
"archived_at": "2026-01-03T12:00:00Z",
"created_at": "2026-01-01T12:00:00Z",
"created_by": "550e8400-e29b-41d4-a716-446655440091",
"creation_type": "RULES",
"description": "Users selected by email address or organization ID.",
"migration_metadata": {
"provider": "launchdarkly",
"segment_key": "early-access-users"
},
"name": "Early access users",
"targeting_rules": [
{
"conditions": [
{
"attribute": "email",
"id": "550e8400-e29b-41d4-a716-446655440093",
"operator": "ONE_OF",
"value": [
"user@example.com"
]
}
],
"id": "550e8400-e29b-41d4-a716-446655440092"
}
],
"updated_at": "2026-01-02T12:00:00Z"
},
"id": "550e8400-e29b-41d4-a716-446655440090",
"type": "saved-filters"
}
}Bad Request
API error response.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}Forbidden
An authentication or permission error, or a resource listing consumer flags that the caller cannot edit.
Option 1A saved filter authorization error containing at least one error message.
errors [required]The authorization error messages.
Option 2A saved filter error containing at least one JSON:API error object.
errors [required]The error details.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
Option 3The caller lacks edit permission on one or more feature flags that reference this saved filter.
data [required]The caller lacks edit permission on one or more feature flags that reference this saved filter.
attributes [required]The caller lacks edit permission on one or more feature flags that reference this saved filter.
denied_flags [required]Feature flags preventing this update.
id [required]The ID of the feature flag.
name [required]The name of the feature flag.
message [required]The reason the saved filter update was rejected.
id [required]The ID of the saved filter.
type [required]The resource type for this saved filter update error.
update-grace-denied{
"errors": [
"Forbidden",
"Failed permission authorization checks"
]
}Not Found
API error response.
errors [required]A list of errors.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}Conflict
A stale update, duplicate name, or other conflict, or a resource listing consumer flags requiring approval.
Option 1A saved filter error containing at least one JSON:API error object.
errors [required]The error details.
detailA human-readable explanation specific to this occurrence of the error.
metaNon-standard meta-information about the error
sourceReferences to the source of the error.
headerA string indicating the name of a single request header which caused the error.
parameterA string indicating which URI query parameter caused the error.
pointerA JSON pointer to the value in the request document that caused the error.
statusStatus code of the response.
titleShort human-readable summary of the error.
Option 2One or more feature flags that reference this saved filter require approval for the rule update.
data [required]One or more feature flags that reference this saved filter require approval for the rule update.
attributes [required]One or more feature flags that reference this saved filter require approval for the rule update.
approval_required_flags [required]Feature flags preventing this update.
id [required]The ID of the feature flag.
name [required]The name of the feature flag.
message [required]The reason the saved filter update was rejected.
id [required]The ID of the saved filter.
type [required]The resource type for this saved filter update error.
update-approval-conflict{
"errors": [
{
"detail": "Missing required attribute in body",
"meta": {},
"source": {
"header": "Authorization",
"parameter": "limit",
"pointer": "/data/attributes/title"
},
"status": "400",
"title": "Bad Request"
}
]
}Too many requests
API error response.
errors [required]A list of errors.
{
"errors": [
"Bad Request"
]
}コード例
Patch a saved filter accepts the current timestamp for metadata
# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"description": "Metadata with current timestamp.",
"last_updated_at": "2026-10-16T20:20:29Z"
},
"type": "saved-filters"
}
}
EOFPatch a saved filter accepts the current timestamp for rules
# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"attributes": {
"last_updated_at": "2026-10-16T20:20:30Z",
"targeting_rules": [
{
"conditions": [
{
"attribute": "user_id",
"operator": "ONE_OF",
"value": [
"test-user-2"
]
}
]
}
]
},
"type": "saved-filters"
}
}
EOFPatch a saved filter clears the description with an empty string
# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us3.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us5.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="datadoghq.eu"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ap2.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="uk1.datadoghq.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF# Path parameters
export saved_filter_id="550e8400-e29b-41d4-a716-446655440090"
# Set your Datadog site and credentials
export DD_SITE="us2.ddog-gov.com"
# Use a Personal Access Token or Service Access Token
export DD_BEARER_TOKEN="<PERSONAL_ACCESS_TOKEN OR SERVICE_ACCESS_TOKEN>"
curl -X PATCH "https://api.${DD_SITE}/api/v2/feature-flags/saved-filters/${saved_filter_id}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${DD_BEARER_TOKEN}" \
-d @- << EOF
{
"data": {
"type": "saved-filters",
"attributes": {
"description": ""
}
}
}
EOF