---
title: Update Flaky Tests Management policies
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > API Reference > Test Optimization
---

# Update Flaky Tests Management policies{% #update-flaky-tests-management-policies %}
Copy pageCopied
{% tab title="v2" %}

| Datadog site      | API endpoint                                                                      |
| ----------------- | --------------------------------------------------------------------------------- |
| ap1.datadoghq.com | PATCH https://api.ap1.datadoghq.com/api/v2/ci/test-optimization/settings/policies |
| ap2.datadoghq.com | PATCH https://api.ap2.datadoghq.com/api/v2/ci/test-optimization/settings/policies |
| app.datadoghq.eu  | PATCH https://api.datadoghq.eu/api/v2/ci/test-optimization/settings/policies      |
| app.ddog-gov.com  | PATCH https://api.ddog-gov.com/api/v2/ci/test-optimization/settings/policies      |
| us2.ddog-gov.com  | PATCH https://api.us2.ddog-gov.com/api/v2/ci/test-optimization/settings/policies  |
| app.datadoghq.com | PATCH https://api.datadoghq.com/api/v2/ci/test-optimization/settings/policies     |
| us3.datadoghq.com | PATCH https://api.us3.datadoghq.com/api/v2/ci/test-optimization/settings/policies |
| us5.datadoghq.com | PATCH https://api.us5.datadoghq.com/api/v2/ci/test-optimization/settings/policies |

### Overview

Partially update Flaky Tests Management repository-level policies for the given repository. Only provided policy blocks are updated; omitted blocks are left unchanged. This endpoint requires the `test_optimization_settings_write` permission.

OAuth apps require the `test_optimization_settings_write` authorization [scope](https://docs.datadoghq.com/api/latest/scopes.md#test-optimization) to access this endpoint.



### Request

#### Body Data (required)



{% tab title="Model" %}

| Parent field         | Field                           | Type     | Description                                                                                                                                                                                                                                            |
| -------------------- | ------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|                      | data [*required*]          | object   | Data object for update Flaky Tests Management policies request.                                                                                                                                                                                        |
| data                 | attributes [*required*]    | object   | Attributes for updating Flaky Tests Management policies. Only provided policy blocks are updated; omitted blocks are left unchanged.                                                                                                                   |
| attributes           | attempt_to_fix                  | object   | Configuration for the attempt-to-fix Flaky Tests Management policy.                                                                                                                                                                                    |
| attempt_to_fix       | retries                         | int64    | Number of retries when attempting to fix a flaky test. Must be greater than 0.                                                                                                                                                                         |
| attributes           | disabled                        | object   | Configuration for the disabled Flaky Tests Management policy.                                                                                                                                                                                          |
| disabled             | auto_disable_rule               | object   | Automatic disable triggering rule based on a time window and test status.                                                                                                                                                                              |
| auto_disable_rule    | enabled                         | boolean  | Whether this auto-disable rule is enabled.                                                                                                                                                                                                             |
| auto_disable_rule    | status                          | enum     | Test status that the disable policy applies to. Must be either `active` or `quarantined`. Allowed enum values: `active,quarantined`                                                                                                                    |
| auto_disable_rule    | window_seconds                  | int64    | Time window in seconds over which flakiness is evaluated. Must be greater than 0.                                                                                                                                                                      |
| disabled             | branch_rule                     | object   | Branch filtering rule for a Flaky Tests Management policy.                                                                                                                                                                                             |
| branch_rule          | branches                        | [string] | List of branches to which the policy applies.                                                                                                                                                                                                          |
| branch_rule          | enabled                         | boolean  | Whether this branch rule is enabled.                                                                                                                                                                                                                   |
| branch_rule          | excluded_branches               | [string] | List of branches excluded from the policy.                                                                                                                                                                                                             |
| branch_rule          | excluded_test_services          | [string] | List of test services excluded from the policy.                                                                                                                                                                                                        |
| disabled             | enabled                         | boolean  | Whether the disabled policy is enabled.                                                                                                                                                                                                                |
| disabled             | failure_rate_rule               | object   | Failure-rate-based rule for the disabled policy.                                                                                                                                                                                                       |
| failure_rate_rule    | branches                        | [string] | List of branches to which this rule applies.                                                                                                                                                                                                           |
| failure_rate_rule    | enabled                         | boolean  | Whether this failure rate rule is enabled.                                                                                                                                                                                                             |
| failure_rate_rule    | min_runs                        | int64    | Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0.                                                                                                                                                      |
| failure_rate_rule    | status                          | enum     | Test status that the disable policy applies to. Must be either `active` or `quarantined`. Allowed enum values: `active,quarantined`                                                                                                                    |
| failure_rate_rule    | threshold                       | double   | Failure rate threshold (0.0–1.0) above which the rule triggers.                                                                                                                                                                                        |
| attributes           | quarantined                     | object   | Configuration for the quarantined Flaky Tests Management policy.                                                                                                                                                                                       |
| quarantined          | auto_quarantine_rule            | object   | Automatic quarantine triggering rule based on a time window.                                                                                                                                                                                           |
| auto_quarantine_rule | enabled                         | boolean  | Whether this auto-quarantine rule is enabled.                                                                                                                                                                                                          |
| auto_quarantine_rule | window_seconds                  | int64    | Time window in seconds over which flakiness is evaluated. Must be greater than 0.                                                                                                                                                                      |
| quarantined          | branch_rule                     | object   | Branch filtering rule for a Flaky Tests Management policy.                                                                                                                                                                                             |
| branch_rule          | branches                        | [string] | List of branches to which the policy applies.                                                                                                                                                                                                          |
| branch_rule          | enabled                         | boolean  | Whether this branch rule is enabled.                                                                                                                                                                                                                   |
| branch_rule          | excluded_branches               | [string] | List of branches excluded from the policy.                                                                                                                                                                                                             |
| branch_rule          | excluded_test_services          | [string] | List of test services excluded from the policy.                                                                                                                                                                                                        |
| quarantined          | enabled                         | boolean  | Whether the quarantined policy is enabled.                                                                                                                                                                                                             |
| quarantined          | failure_rate_rule               | object   | Failure-rate-based rule for the quarantined policy.                                                                                                                                                                                                    |
| failure_rate_rule    | branches                        | [string] | List of branches to which this rule applies.                                                                                                                                                                                                           |
| failure_rate_rule    | enabled                         | boolean  | Whether this failure rate rule is enabled.                                                                                                                                                                                                             |
| failure_rate_rule    | min_runs                        | int64    | Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0.                                                                                                                                                      |
| failure_rate_rule    | threshold                       | double   | Failure rate threshold (0.0–1.0) above which the rule triggers.                                                                                                                                                                                        |
| attributes           | repository_id [*required*] | string   | The repository identifier.                                                                                                                                                                                                                             |
| data                 | type [*required*]          | enum     | JSON:API type for update Flaky Tests Management policies request. The value must always be `test_optimization_update_flaky_tests_management_policies_request`. Allowed enum values: `test_optimization_update_flaky_tests_management_policies_request` |

{% /tab %}

{% tab title="Example" %}

```json
{
  "data": {
    "attributes": {
      "attempt_to_fix": {
        "retries": 3
      },
      "disabled": {
        "auto_disable_rule": {
          "enabled": false,
          "status": "active",
          "window_seconds": 3600
        },
        "branch_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "excluded_branches": [
            []
          ],
          "excluded_test_services": [
            []
          ]
        },
        "enabled": false,
        "failure_rate_rule": {
          "branches": [
            []
          ],
          "enabled": false,
          "min_runs": 10,
          "status": "active",
          "threshold": 0.5
        }
      },
      "quarantined": {
        "auto_quarantine_rule": {
          "enabled": true,
          "window_seconds": 3600
        },
        "branch_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "excluded_branches": [
            []
          ],
          "excluded_test_services": [
            []
          ]
        },
        "enabled": true,
        "failure_rate_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "min_runs": 10,
          "threshold": 0.5
        }
      },
      "repository_id": "github.com/datadog/shopist"
    },
    "type": "test_optimization_update_flaky_tests_management_policies_request"
  }
}
```

{% /tab %}

### Response

{% tab title="200" %}
OK
{% tab title="Model" %}
Response object containing Flaky Tests Management policies for a repository.

| Parent field         | Field                  | Type     | Description                                                                                                                                                                                                        |
| -------------------- | ---------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|                      | data                   | object   | Data object for Flaky Tests Management policies response.                                                                                                                                                          |
| data                 | attributes             | object   | Attributes of the Flaky Tests Management policies for a repository.                                                                                                                                                |
| attributes           | attempt_to_fix         | object   | Configuration for the attempt-to-fix Flaky Tests Management policy.                                                                                                                                                |
| attempt_to_fix       | retries                | int64    | Number of retries when attempting to fix a flaky test. Must be greater than 0.                                                                                                                                     |
| attributes           | disabled               | object   | Configuration for the disabled Flaky Tests Management policy.                                                                                                                                                      |
| disabled             | auto_disable_rule      | object   | Automatic disable triggering rule based on a time window and test status.                                                                                                                                          |
| auto_disable_rule    | enabled                | boolean  | Whether this auto-disable rule is enabled.                                                                                                                                                                         |
| auto_disable_rule    | status                 | enum     | Test status that the disable policy applies to. Must be either `active` or `quarantined`. Allowed enum values: `active,quarantined`                                                                                |
| auto_disable_rule    | window_seconds         | int64    | Time window in seconds over which flakiness is evaluated. Must be greater than 0.                                                                                                                                  |
| disabled             | branch_rule            | object   | Branch filtering rule for a Flaky Tests Management policy.                                                                                                                                                         |
| branch_rule          | branches               | [string] | List of branches to which the policy applies.                                                                                                                                                                      |
| branch_rule          | enabled                | boolean  | Whether this branch rule is enabled.                                                                                                                                                                               |
| branch_rule          | excluded_branches      | [string] | List of branches excluded from the policy.                                                                                                                                                                         |
| branch_rule          | excluded_test_services | [string] | List of test services excluded from the policy.                                                                                                                                                                    |
| disabled             | enabled                | boolean  | Whether the disabled policy is enabled.                                                                                                                                                                            |
| disabled             | failure_rate_rule      | object   | Failure-rate-based rule for the disabled policy.                                                                                                                                                                   |
| failure_rate_rule    | branches               | [string] | List of branches to which this rule applies.                                                                                                                                                                       |
| failure_rate_rule    | enabled                | boolean  | Whether this failure rate rule is enabled.                                                                                                                                                                         |
| failure_rate_rule    | min_runs               | int64    | Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0.                                                                                                                  |
| failure_rate_rule    | status                 | enum     | Test status that the disable policy applies to. Must be either `active` or `quarantined`. Allowed enum values: `active,quarantined`                                                                                |
| failure_rate_rule    | threshold              | double   | Failure rate threshold (0.0–1.0) above which the rule triggers.                                                                                                                                                    |
| attributes           | quarantined            | object   | Configuration for the quarantined Flaky Tests Management policy.                                                                                                                                                   |
| quarantined          | auto_quarantine_rule   | object   | Automatic quarantine triggering rule based on a time window.                                                                                                                                                       |
| auto_quarantine_rule | enabled                | boolean  | Whether this auto-quarantine rule is enabled.                                                                                                                                                                      |
| auto_quarantine_rule | window_seconds         | int64    | Time window in seconds over which flakiness is evaluated. Must be greater than 0.                                                                                                                                  |
| quarantined          | branch_rule            | object   | Branch filtering rule for a Flaky Tests Management policy.                                                                                                                                                         |
| branch_rule          | branches               | [string] | List of branches to which the policy applies.                                                                                                                                                                      |
| branch_rule          | enabled                | boolean  | Whether this branch rule is enabled.                                                                                                                                                                               |
| branch_rule          | excluded_branches      | [string] | List of branches excluded from the policy.                                                                                                                                                                         |
| branch_rule          | excluded_test_services | [string] | List of test services excluded from the policy.                                                                                                                                                                    |
| quarantined          | enabled                | boolean  | Whether the quarantined policy is enabled.                                                                                                                                                                         |
| quarantined          | failure_rate_rule      | object   | Failure-rate-based rule for the quarantined policy.                                                                                                                                                                |
| failure_rate_rule    | branches               | [string] | List of branches to which this rule applies.                                                                                                                                                                       |
| failure_rate_rule    | enabled                | boolean  | Whether this failure rate rule is enabled.                                                                                                                                                                         |
| failure_rate_rule    | min_runs               | int64    | Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0.                                                                                                                  |
| failure_rate_rule    | threshold              | double   | Failure rate threshold (0.0–1.0) above which the rule triggers.                                                                                                                                                    |
| attributes           | repository_id          | string   | The repository identifier.                                                                                                                                                                                         |
| data                 | id                     | string   | The repository identifier used as the resource ID.                                                                                                                                                                 |
| data                 | type                   | enum     | JSON:API type for Flaky Tests Management policies response. The value must always be `test_optimization_flaky_tests_management_policies`. Allowed enum values: `test_optimization_flaky_tests_management_policies` |

{% /tab %}

{% tab title="Example" %}

```json
{
  "data": {
    "attributes": {
      "attempt_to_fix": {
        "retries": 3
      },
      "disabled": {
        "auto_disable_rule": {
          "enabled": false,
          "status": "active",
          "window_seconds": 3600
        },
        "branch_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "excluded_branches": [
            []
          ],
          "excluded_test_services": [
            []
          ]
        },
        "enabled": false,
        "failure_rate_rule": {
          "branches": [
            []
          ],
          "enabled": false,
          "min_runs": 10,
          "status": "active",
          "threshold": 0.5
        }
      },
      "quarantined": {
        "auto_quarantine_rule": {
          "enabled": true,
          "window_seconds": 3600
        },
        "branch_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "excluded_branches": [
            []
          ],
          "excluded_test_services": [
            []
          ]
        },
        "enabled": true,
        "failure_rate_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "min_runs": 10,
          "threshold": 0.5
        }
      },
      "repository_id": "github.com/datadog/shopist"
    },
    "id": "github.com/datadog/shopist",
    "type": "test_optimization_flaky_tests_management_policies"
  }
}
```

{% /tab %}

{% /tab %}

{% tab title="400" %}
Bad Request
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="403" %}
Not Authorized
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="404" %}
Not Found
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="429" %}
Too many requests
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

### Code Example

##### 
                  \## default
# 
 \# Curl command curl -X PATCH "https://api.datadoghq.com/api/v2/ci/test-optimization/settings/policies" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}" \
-d @- << EOF
{
  "data": {
    "attributes": {
      "attempt_to_fix": {
        "retries": 3
      },
      "disabled": {
        "enabled": false
      },
      "quarantined": {
        "auto_quarantine_rule": {
          "enabled": true,
          "window_seconds": 3600
        },
        "branch_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "excluded_branches": [],
          "excluded_test_services": []
        },
        "enabled": true,
        "failure_rate_rule": {
          "branches": [
            "main"
          ],
          "enabled": true,
          "min_runs": 10,
          "threshold": 0.5
        }
      },
      "repository_id": "github.com/example-org/example-repo"
    },
    "type": "test_optimization_update_flaky_tests_management_policies_request"
  }
}
EOF 
                
##### 

```python
"""
Update Flaky Tests Management policies returns "OK" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.test_optimization_api import TestOptimizationApi
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_attempt_to_fix import (
    TestOptimizationFlakyTestsManagementPoliciesAttemptToFix,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_auto_disable_rule import (
    TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_auto_quarantine_rule import (
    TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_branch_rule import (
    TestOptimizationFlakyTestsManagementPoliciesBranchRule,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_disabled import (
    TestOptimizationFlakyTestsManagementPoliciesDisabled,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_disabled_failure_rate_rule import (
    TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_disabled_status import (
    TestOptimizationFlakyTestsManagementPoliciesDisabledStatus,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_quarantined import (
    TestOptimizationFlakyTestsManagementPoliciesQuarantined,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_quarantined_failure_rate_rule import (
    TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_update_request import (
    TestOptimizationFlakyTestsManagementPoliciesUpdateRequest,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_update_request_attributes import (
    TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes,
)
from datadog_api_client.v2.model.test_optimization_flaky_tests_management_policies_update_request_data import (
    TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData,
)
from datadog_api_client.v2.model.test_optimization_update_flaky_tests_management_policies_request_data_type import (
    TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType,
)

body = TestOptimizationFlakyTestsManagementPoliciesUpdateRequest(
    data=TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData(
        attributes=TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes(
            attempt_to_fix=TestOptimizationFlakyTestsManagementPoliciesAttemptToFix(
                retries=3,
            ),
            disabled=TestOptimizationFlakyTestsManagementPoliciesDisabled(
                auto_disable_rule=TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule(
                    enabled=False,
                    status=TestOptimizationFlakyTestsManagementPoliciesDisabledStatus.ACTIVE,
                    window_seconds=3600,
                ),
                branch_rule=TestOptimizationFlakyTestsManagementPoliciesBranchRule(
                    branches=[
                        "main",
                    ],
                    enabled=True,
                    excluded_branches=[],
                    excluded_test_services=[],
                ),
                enabled=False,
                failure_rate_rule=TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule(
                    branches=[],
                    enabled=False,
                    min_runs=10,
                    status=TestOptimizationFlakyTestsManagementPoliciesDisabledStatus.ACTIVE,
                    threshold=0.5,
                ),
            ),
            quarantined=TestOptimizationFlakyTestsManagementPoliciesQuarantined(
                auto_quarantine_rule=TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule(
                    enabled=True,
                    window_seconds=3600,
                ),
                branch_rule=TestOptimizationFlakyTestsManagementPoliciesBranchRule(
                    branches=[
                        "main",
                    ],
                    enabled=True,
                    excluded_branches=[],
                    excluded_test_services=[],
                ),
                enabled=True,
                failure_rate_rule=TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule(
                    branches=[
                        "main",
                    ],
                    enabled=True,
                    min_runs=10,
                    threshold=0.5,
                ),
            ),
            repository_id="github.com/datadog/shopist",
        ),
        type=TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType.TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST,
    ),
)

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = TestOptimizationApi(api_client)
    response = api_instance.update_flaky_tests_management_policies(body=body)

    print(response)
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=python) and then save the example to `example.py` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" python3 "example.py"
##### 

```ruby
# Update Flaky Tests Management policies returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::TestOptimizationAPI.new

body = DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesUpdateRequest.new({
  data: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData.new({
    attributes: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes.new({
      attempt_to_fix: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesAttemptToFix.new({
        retries: 3,
      }),
      disabled: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesDisabled.new({
        auto_disable_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule.new({
          enabled: false,
          status: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesDisabledStatus::ACTIVE,
          window_seconds: 3600,
        }),
        branch_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesBranchRule.new({
          branches: [
            "main",
          ],
          enabled: true,
          excluded_branches: [],
          excluded_test_services: [],
        }),
        enabled: false,
        failure_rate_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule.new({
          branches: [],
          enabled: false,
          min_runs: 10,
          status: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesDisabledStatus::ACTIVE,
          threshold: 0.5,
        }),
      }),
      quarantined: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesQuarantined.new({
        auto_quarantine_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule.new({
          enabled: true,
          window_seconds: 3600,
        }),
        branch_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesBranchRule.new({
          branches: [
            "main",
          ],
          enabled: true,
          excluded_branches: [],
          excluded_test_services: [],
        }),
        enabled: true,
        failure_rate_rule: DatadogAPIClient::V2::TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule.new({
          branches: [
            "main",
          ],
          enabled: true,
          min_runs: 10,
          threshold: 0.5,
        }),
      }),
      repository_id: "github.com/datadog/shopist",
    }),
    type: DatadogAPIClient::V2::TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType::TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST,
  }),
})
p api_instance.update_flaky_tests_management_policies(body)
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=ruby) and then save the example to `example.rb` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" rb "example.rb"
##### 

```go
// Update Flaky Tests Management policies returns "OK" response

package main

import (
	"context"
	"encoding/json"
	"fmt"
	"os"

	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)

func main() {
	body := datadogV2.TestOptimizationFlakyTestsManagementPoliciesUpdateRequest{
		Data: datadogV2.TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData{
			Attributes: datadogV2.TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes{
				AttemptToFix: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesAttemptToFix{
					Retries: datadog.PtrInt64(3),
				},
				Disabled: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesDisabled{
					AutoDisableRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule{
						Enabled:       datadog.PtrBool(false),
						Status:        datadogV2.TESTOPTIMIZATIONFLAKYTESTSMANAGEMENTPOLICIESDISABLEDSTATUS_ACTIVE.Ptr(),
						WindowSeconds: datadog.PtrInt64(3600),
					},
					BranchRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesBranchRule{
						Branches: []string{
							"main",
						},
						Enabled:              datadog.PtrBool(true),
						ExcludedBranches:     []string{},
						ExcludedTestServices: []string{},
					},
					Enabled: datadog.PtrBool(false),
					FailureRateRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule{
						Branches:  []string{},
						Enabled:   datadog.PtrBool(false),
						MinRuns:   datadog.PtrInt64(10),
						Status:    datadogV2.TESTOPTIMIZATIONFLAKYTESTSMANAGEMENTPOLICIESDISABLEDSTATUS_ACTIVE.Ptr(),
						Threshold: datadog.PtrFloat64(0.5),
					},
				},
				Quarantined: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesQuarantined{
					AutoQuarantineRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule{
						Enabled:       datadog.PtrBool(true),
						WindowSeconds: datadog.PtrInt64(3600),
					},
					BranchRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesBranchRule{
						Branches: []string{
							"main",
						},
						Enabled:              datadog.PtrBool(true),
						ExcludedBranches:     []string{},
						ExcludedTestServices: []string{},
					},
					Enabled: datadog.PtrBool(true),
					FailureRateRule: &datadogV2.TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule{
						Branches: []string{
							"main",
						},
						Enabled:   datadog.PtrBool(true),
						MinRuns:   datadog.PtrInt64(10),
						Threshold: datadog.PtrFloat64(0.5),
					},
				},
				RepositoryId: "github.com/datadog/shopist",
			},
			Type: datadogV2.TESTOPTIMIZATIONUPDATEFLAKYTESTSMANAGEMENTPOLICIESREQUESTDATATYPE_TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST,
		},
	}
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewTestOptimizationApi(apiClient)
	resp, r, err := api.UpdateFlakyTestsManagementPolicies(ctx, body)

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `TestOptimizationApi.UpdateFlakyTestsManagementPolicies`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `TestOptimizationApi.UpdateFlakyTestsManagementPolicies`:\n%s\n", responseContent)
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=go) and then save the example to `main.go` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" go run "main.go"
##### 

```java
// Update Flaky Tests Management policies returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.TestOptimizationApi;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesAttemptToFix;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesBranchRule;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesDisabled;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesDisabledStatus;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesQuarantined;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesResponse;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesUpdateRequest;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes;
import com.datadog.api.client.v2.model.TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData;
import com.datadog.api.client.v2.model.TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType;
import java.util.Collections;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    TestOptimizationApi apiInstance = new TestOptimizationApi(defaultClient);

    TestOptimizationFlakyTestsManagementPoliciesUpdateRequest body =
        new TestOptimizationFlakyTestsManagementPoliciesUpdateRequest()
            .data(
                new TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData()
                    .attributes(
                        new TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes()
                            .attemptToFix(
                                new TestOptimizationFlakyTestsManagementPoliciesAttemptToFix()
                                    .retries(3L))
                            .disabled(
                                new TestOptimizationFlakyTestsManagementPoliciesDisabled()
                                    .autoDisableRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule()
                                            .enabled(false)
                                            .status(
                                                TestOptimizationFlakyTestsManagementPoliciesDisabledStatus
                                                    .ACTIVE)
                                            .windowSeconds(3600L))
                                    .branchRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesBranchRule()
                                            .branches(Collections.singletonList("main"))
                                            .enabled(true))
                                    .enabled(false)
                                    .failureRateRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule()
                                            .enabled(false)
                                            .minRuns(10L)
                                            .status(
                                                TestOptimizationFlakyTestsManagementPoliciesDisabledStatus
                                                    .ACTIVE)
                                            .threshold(0.5)))
                            .quarantined(
                                new TestOptimizationFlakyTestsManagementPoliciesQuarantined()
                                    .autoQuarantineRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule()
                                            .enabled(true)
                                            .windowSeconds(3600L))
                                    .branchRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesBranchRule()
                                            .branches(Collections.singletonList("main"))
                                            .enabled(true))
                                    .enabled(true)
                                    .failureRateRule(
                                        new TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule()
                                            .branches(Collections.singletonList("main"))
                                            .enabled(true)
                                            .minRuns(10L)
                                            .threshold(0.5)))
                            .repositoryId("github.com/datadog/shopist"))
                    .type(
                        TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType
                            .TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST));

    try {
      TestOptimizationFlakyTestsManagementPoliciesResponse result =
          apiInstance.updateFlakyTestsManagementPolicies(body);
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println(
          "Exception when calling TestOptimizationApi#updateFlakyTestsManagementPolicies");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=java) and then save the example to `Example.java` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" java "Example.java"
##### 

```rust
// Update Flaky Tests Management policies returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_test_optimization::TestOptimizationAPI;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesAttemptToFix;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesBranchRule;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesDisabled;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesDisabledStatus;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesQuarantined;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesUpdateRequest;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes;
use datadog_api_client::datadogV2::model::TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData;
use datadog_api_client::datadogV2::model::TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType;

#[tokio::main]
async fn main() {
    let body =
        TestOptimizationFlakyTestsManagementPoliciesUpdateRequest::new(
            TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData::new(
                TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes::new(
                    "github.com/datadog/shopist".to_string(),
                )
                    .attempt_to_fix(TestOptimizationFlakyTestsManagementPoliciesAttemptToFix::new().retries(3))
                    .disabled(
                        TestOptimizationFlakyTestsManagementPoliciesDisabled::new()
                            .auto_disable_rule(
                                TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule::new()
                                    .enabled(false)
                                    .status(TestOptimizationFlakyTestsManagementPoliciesDisabledStatus::ACTIVE)
                                    .window_seconds(3600),
                            )
                            .branch_rule(
                                TestOptimizationFlakyTestsManagementPoliciesBranchRule::new()
                                    .branches(vec!["main".to_string()])
                                    .enabled(true)
                                    .excluded_branches(vec![])
                                    .excluded_test_services(vec![]),
                            )
                            .enabled(false)
                            .failure_rate_rule(
                                TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule::new()
                                    .branches(vec![])
                                    .enabled(false)
                                    .min_runs(10)
                                    .status(TestOptimizationFlakyTestsManagementPoliciesDisabledStatus::ACTIVE)
                                    .threshold(0.5 as f64),
                            ),
                    )
                    .quarantined(
                        TestOptimizationFlakyTestsManagementPoliciesQuarantined::new()
                            .auto_quarantine_rule(
                                TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule::new()
                                    .enabled(true)
                                    .window_seconds(3600),
                            )
                            .branch_rule(
                                TestOptimizationFlakyTestsManagementPoliciesBranchRule::new()
                                    .branches(vec!["main".to_string()])
                                    .enabled(true)
                                    .excluded_branches(vec![])
                                    .excluded_test_services(vec![]),
                            )
                            .enabled(true)
                            .failure_rate_rule(
                                TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule::new()
                                    .branches(vec!["main".to_string()])
                                    .enabled(true)
                                    .min_runs(10)
                                    .threshold(0.5 as f64),
                            ),
                    ),
                TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType
                ::TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST,
            ),
        );
    let configuration = datadog::Configuration::new();
    let api = TestOptimizationAPI::with_config(configuration);
    let resp = api.update_flaky_tests_management_policies(body).await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=rust) and then save the example to `src/main.rs` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" cargo run
##### 

```typescript
/**
 * Update Flaky Tests Management policies returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.TestOptimizationApi(configuration);

const params: v2.TestOptimizationApiUpdateFlakyTestsManagementPoliciesRequest =
  {
    body: {
      data: {
        attributes: {
          attemptToFix: {
            retries: 3,
          },
          disabled: {
            autoDisableRule: {
              enabled: false,
              status: "active",
              windowSeconds: 3600,
            },
            branchRule: {
              branches: ["main"],
              enabled: true,
              excludedBranches: [],
              excludedTestServices: [],
            },
            enabled: false,
            failureRateRule: {
              branches: [],
              enabled: false,
              minRuns: 10,
              status: "active",
              threshold: 0.5,
            },
          },
          quarantined: {
            autoQuarantineRule: {
              enabled: true,
              windowSeconds: 3600,
            },
            branchRule: {
              branches: ["main"],
              enabled: true,
              excludedBranches: [],
              excludedTestServices: [],
            },
            enabled: true,
            failureRateRule: {
              branches: ["main"],
              enabled: true,
              minRuns: 10,
              threshold: 0.5,
            },
          },
          repositoryId: "github.com/datadog/shopist",
        },
        type: "test_optimization_update_flaky_tests_management_policies_request",
      },
    },
  };

apiInstance
  .updateFlakyTestsManagementPolicies(params)
  .then((data: v2.TestOptimizationFlakyTestsManagementPoliciesResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=typescript) and then save the example to `example.ts` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<DD_API_KEY>" DD_APP_KEY="<DD_APP_KEY>" tsc "example.ts"
{% /tab %}
