Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .generator/schemas/v1/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19849,6 +19849,9 @@ components:
items:
$ref: "#/components/schemas/SyntheticsTestRestrictionPolicyBinding"
type: array
bits_ai_auto_investigate:
description: Whether Bits AI automatically investigates alerts from the test monitor.
type: boolean
ci:
$ref: "#/components/schemas/SyntheticsTestCiOptions"
defaultStepTimeout:
Expand Down Expand Up @@ -20629,6 +20632,9 @@ components:
allow_insecure:
description: Allows loading insecure content for an HTTP request in an API test.
type: boolean
bits_ai_auto_investigate:
description: Whether Bits AI automatically investigates alerts from the test monitor.
type: boolean
blockedRequestPatterns:
description: Array of URL patterns to block.
items:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,7 @@
options=SyntheticsTestOptions(
accept_self_signed=False,
allow_insecure=True,
bits_ai_auto_investigate=True,
follow_redirects=True,
min_failure_duration=10,
min_location_failed=1,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,7 @@
options=SyntheticsTestOptions(
accept_self_signed=False,
allow_insecure=True,
bits_ai_auto_investigate=True,
follow_redirects=True,
min_failure_duration=10,
min_location_failed=1,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ def openapi_types(_):
return {
"allow_application_crash": (bool,),
"bindings": ([SyntheticsTestRestrictionPolicyBinding],),
"bits_ai_auto_investigate": (bool,),
"ci": (SyntheticsTestCiOptions,),
"default_step_timeout": (int,),
"device_ids": ([str],),
Expand All @@ -90,6 +91,7 @@ def openapi_types(_):
attribute_map = {
"allow_application_crash": "allowApplicationCrash",
"bindings": "bindings",
"bits_ai_auto_investigate": "bits_ai_auto_investigate",
"ci": "ci",
"default_step_timeout": "defaultStepTimeout",
"device_ids": "device_ids",
Expand All @@ -114,6 +116,7 @@ def __init__(
tick_every: int,
allow_application_crash: Union[bool, UnsetType] = unset,
bindings: Union[List[SyntheticsTestRestrictionPolicyBinding], UnsetType] = unset,
bits_ai_auto_investigate: Union[bool, UnsetType] = unset,
ci: Union[SyntheticsTestCiOptions, UnsetType] = unset,
default_step_timeout: Union[int, UnsetType] = unset,
disable_auto_accept_alert: Union[bool, UnsetType] = unset,
Expand All @@ -137,6 +140,9 @@ def __init__(
:param bindings: Array of bindings used for the mobile test.
:type bindings: [SyntheticsTestRestrictionPolicyBinding], optional

:param bits_ai_auto_investigate: Whether Bits AI automatically investigates alerts from the test monitor.
:type bits_ai_auto_investigate: bool, optional

:param ci: CI/CD options for a Synthetic test.
:type ci: SyntheticsTestCiOptions, optional

Expand Down Expand Up @@ -187,6 +193,8 @@ def __init__(
kwargs["allow_application_crash"] = allow_application_crash
if bindings is not unset:
kwargs["bindings"] = bindings
if bits_ai_auto_investigate is not unset:
kwargs["bits_ai_auto_investigate"] = bits_ai_auto_investigate
if ci is not unset:
kwargs["ci"] = ci
if default_step_timeout is not unset:
Expand Down
8 changes: 8 additions & 0 deletions src/datadog_api_client/v1/model/synthetics_test_options.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ def openapi_types(_):
return {
"accept_self_signed": (bool,),
"allow_insecure": (bool,),
"bits_ai_auto_investigate": (bool,),
"blocked_request_patterns": ([str],),
"capture_network_payloads": (bool,),
"check_certificate_revocation": (bool,),
Expand Down Expand Up @@ -81,6 +82,7 @@ def openapi_types(_):
attribute_map = {
"accept_self_signed": "accept_self_signed",
"allow_insecure": "allow_insecure",
"bits_ai_auto_investigate": "bits_ai_auto_investigate",
"blocked_request_patterns": "blockedRequestPatterns",
"capture_network_payloads": "captureNetworkPayloads",
"check_certificate_revocation": "checkCertificateRevocation",
Expand Down Expand Up @@ -113,6 +115,7 @@ def __init__(
self_,
accept_self_signed: Union[bool, UnsetType] = unset,
allow_insecure: Union[bool, UnsetType] = unset,
bits_ai_auto_investigate: Union[bool, UnsetType] = unset,
blocked_request_patterns: Union[List[str], UnsetType] = unset,
capture_network_payloads: Union[bool, UnsetType] = unset,
check_certificate_revocation: Union[bool, UnsetType] = unset,
Expand Down Expand Up @@ -151,6 +154,9 @@ def __init__(
:param allow_insecure: Allows loading insecure content for an HTTP request in an API test.
:type allow_insecure: bool, optional

:param bits_ai_auto_investigate: Whether Bits AI automatically investigates alerts from the test monitor.
:type bits_ai_auto_investigate: bool, optional

:param blocked_request_patterns: Array of URL patterns to block.
:type blocked_request_patterns: [str], optional

Expand Down Expand Up @@ -245,6 +251,8 @@ def __init__(
kwargs["accept_self_signed"] = accept_self_signed
if allow_insecure is not unset:
kwargs["allow_insecure"] = allow_insecure
if bits_ai_auto_investigate is not unset:
kwargs["bits_ai_auto_investigate"] = bits_ai_auto_investigate
if blocked_request_patterns is not unset:
kwargs["blocked_request_patterns"] = blocked_request_patterns
if capture_network_payloads is not unset:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@
"options": {
"accept_self_signed": false,
"allow_insecure": true,
"bits_ai_auto_investigate": true,
"follow_redirects": true,
"httpVersion": "http2",
"min_failure_duration": 10,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@
"options": {
"accept_self_signed": false,
"allow_insecure": true,
"bits_ai_auto_investigate": true,
"follow_redirects": true,
"httpVersion": "http2",
"min_failure_duration": 10,
Expand Down
19 changes: 10 additions & 9 deletions tests/generated-test/test-server-data/v1/monitors.json
Original file line number Diff line number Diff line change
Expand Up @@ -2395,7 +2395,7 @@
},
{
"feature": "Monitors",
"frozen_at": "2024-08-06T12:03:16.833Z",
"frozen_at": "2026-09-29T15:19:29.015Z",
"interactions": [
{
"request": {
Expand Down Expand Up @@ -2494,7 +2494,7 @@
}
},
"headers": {
"unique": "testgetasyntheticsmonitorsdetails1722945796"
"unique": "testgetasyntheticsmonitorsdetails1790695169"
},
"method": "GET",
"persistCookies": true,
Expand All @@ -2511,15 +2511,16 @@
"aws:us-east-2"
],
"message": "BDD test payload: synthetics_api_http_test_payload.json",
"name": "Test-Get_a_synthetics_monitor_s_details-1722945796",
"name": "Test-Get_a_synthetics_monitor_s_details-1790695169",
"options": {
"accept_self_signed": false,
"allow_insecure": true,
"bits_ai_auto_investigate": true,
"follow_redirects": true,
"httpVersion": "http2",
"min_failure_duration": 10,
"min_location_failed": 1,
"monitor_name": "Test-Get_a_synthetics_monitor_s_details-1722945796",
"monitor_name": "Test-Get_a_synthetics_monitor_s_details-1790695169",
"monitor_priority": 5,
"retry": {
"count": 3,
Expand All @@ -2542,7 +2543,7 @@
"response": {
"body": {
"encoding": "text",
"value": "{\"public_id\":\"4c7-n7j-xbv\",\"name\":\"Test-Get_a_synthetics_monitor_s_details-1722945796\",\"status\":\"live\",\"type\":\"api\",\"tags\":[\"testing:api\"],\"created_at\":\"2024-08-06T12:03:17.509325+00:00\",\"modified_at\":\"2024-08-06T12:03:17.509325+00:00\",\"config\":{\"assertions\":[{\"operator\":\"is\",\"property\":\"{{ PROPERTY }}\",\"target\":\"text/html\",\"type\":\"header\"},{\"operator\":\"lessThan\",\"target\":2000,\"timingsScope\":\"withoutDNS\",\"type\":\"responseTime\"},{\"operator\":\"validatesJSONPath\",\"target\":{\"jsonPath\":\"topKey\",\"operator\":\"isNot\",\"targetValue\":\"0\"},\"type\":\"body\"},{\"operator\":\"validatesJSONPath\",\"target\":{\"elementsOperator\":\"atLeastOneElementMatches\",\"jsonPath\":\"topKey\",\"operator\":\"isNot\",\"targetValue\":\"0\"},\"type\":\"body\"},{\"operator\":\"validatesJSONSchema\",\"target\":{\"jsonSchema\":\"{\\\"type\\\": \\\"object\\\", \\\"properties\\\":{\\\"slideshow\\\":{\\\"type\\\":\\\"object\\\"}}}\",\"metaSchema\":\"draft-07\"},\"type\":\"body\"},{\"operator\":\"validatesXPath\",\"target\":{\"operator\":\"contains\",\"targetValue\":\"0\",\"xPath\":\"target-xpath\"},\"type\":\"body\"},{\"operator\":\"md5\",\"target\":\"a\",\"type\":\"bodyHash\"},{\"code\":\"const hello = 'world';\",\"type\":\"javascript\"}],\"configVariables\":[{\"example\":\"content-type\",\"name\":\"PROPERTY\",\"pattern\":\"content-type\",\"type\":\"text\"}],\"request\":{\"basicAuth\":{\"accessTokenUrl\":\"https://datadog-token.com\",\"audience\":\"audience\",\"clientId\":\"client-id\",\"clientSecret\":\"client-secret\",\"resource\":\"resource\",\"scope\":\"yoyo\",\"tokenApiAuthentication\":\"header\",\"type\":\"oauth-client\"},\"certificate\":{\"cert\":{\"filename\":\"cert-filename\",\"updatedAt\":\"2020-10-16T09:23:24.857Z\"},\"key\":{\"filename\":\"key-filename\",\"updatedAt\":\"2020-10-16T09:23:24.857Z\"}},\"headers\":{\"unique\":\"testgetasyntheticsmonitorsdetails1722945796\"},\"method\":\"GET\",\"persistCookies\":true,\"proxy\":{\"headers\":{},\"url\":\"https://datadoghq.com\"},\"timeout\":10,\"url\":\"https://datadoghq.com\"},\"variablesFromScript\":\"dd.variable.set(\\\"FOO\\\", \\\"foo\\\")\"},\"message\":\"BDD test payload: synthetics_api_http_test_payload.json\",\"options\":{\"accept_self_signed\":false,\"allow_insecure\":true,\"follow_redirects\":true,\"httpVersion\":\"http2\",\"min_failure_duration\":10,\"min_location_failed\":1,\"monitor_name\":\"Test-Get_a_synthetics_monitor_s_details-1722945796\",\"monitor_priority\":5,\"retry\":{\"count\":3,\"interval\":10},\"tick_every\":60},\"locations\":[\"aws:us-east-2\"],\"subtype\":\"http\",\"created_by\":{\"name\":null,\"handle\":\"frog@datadoghq.com\",\"email\":\"frog@datadoghq.com\"},\"deleted_at\":null,\"monitor_id\":150677868,\"org_id\":321813,\"modified_by\":{\"name\":null,\"handle\":\"frog@datadoghq.com\",\"email\":\"frog@datadoghq.com\"}}"
"value": "{\"public_id\":\"3bx-7ut-7je\",\"name\":\"Test-Get_a_synthetics_monitor_s_details-1790695169\",\"status\":\"live\",\"type\":\"api\",\"subtype\":\"http\",\"tags\":[\"testing:api\"],\"created_at\":\"2026-09-29T15:19:29.349962+00:00\",\"modified_at\":\"2026-09-29T15:19:29.349962+00:00\",\"config\":{\"assertions\":[{\"operator\":\"is\",\"property\":\"{{ PROPERTY }}\",\"target\":\"text/html\",\"type\":\"header\"},{\"operator\":\"lessThan\",\"target\":2000,\"timingsScope\":\"withoutDNS\",\"type\":\"responseTime\"},{\"operator\":\"validatesJSONPath\",\"target\":{\"jsonPath\":\"topKey\",\"operator\":\"isNot\",\"targetValue\":\"0\"},\"type\":\"body\"},{\"operator\":\"validatesJSONPath\",\"target\":{\"elementsOperator\":\"atLeastOneElementMatches\",\"jsonPath\":\"topKey\",\"operator\":\"isNot\",\"targetValue\":\"0\"},\"type\":\"body\"},{\"operator\":\"validatesJSONSchema\",\"target\":{\"jsonSchema\":\"{\\\"type\\\": \\\"object\\\", \\\"properties\\\":{\\\"slideshow\\\":{\\\"type\\\":\\\"object\\\"}}}\",\"metaSchema\":\"draft-07\"},\"type\":\"body\"},{\"operator\":\"validatesXPath\",\"target\":{\"operator\":\"contains\",\"targetValue\":\"0\",\"xPath\":\"target-xpath\"},\"type\":\"body\"},{\"operator\":\"md5\",\"target\":\"a\",\"type\":\"bodyHash\"},{\"code\":\"const hello = 'world';\",\"type\":\"javascript\"}],\"configVariables\":[{\"example\":\"content-type\",\"name\":\"PROPERTY\",\"pattern\":\"content-type\",\"type\":\"text\"}],\"request\":{\"basicAuth\":{\"accessTokenUrl\":\"https://datadog-token.com\",\"audience\":\"audience\",\"clientId\":\"client-id\",\"clientSecret\":\"client-secret\",\"resource\":\"resource\",\"scope\":\"yoyo\",\"tokenApiAuthentication\":\"header\",\"type\":\"oauth-client\"},\"certificate\":{\"cert\":{\"filename\":\"cert-filename\",\"updatedAt\":\"2020-10-16T09:23:24.857Z\"},\"key\":{\"filename\":\"key-filename\",\"updatedAt\":\"2020-10-16T09:23:24.857Z\"}},\"headers\":{\"unique\":\"testgetasyntheticsmonitorsdetails1790695169\"},\"method\":\"GET\",\"persistCookies\":true,\"proxy\":{\"headers\":{},\"url\":\"https://datadoghq.com\"},\"timeout\":10,\"url\":\"https://datadoghq.com\"},\"variablesFromScript\":\"dd.variable.set(\\\"FOO\\\", \\\"foo\\\")\"},\"message\":\"BDD test payload: synthetics_api_http_test_payload.json\",\"options\":{\"accept_self_signed\":false,\"allow_insecure\":true,\"follow_redirects\":true,\"httpVersion\":\"http2\",\"min_failure_duration\":10,\"min_location_failed\":1,\"monitor_name\":\"Test-Get_a_synthetics_monitor_s_details-1790695169\",\"monitor_priority\":5,\"retry\":{\"count\":3,\"interval\":10},\"tick_every\":60,\"bits_ai_auto_investigate\":true},\"locations\":[\"aws:us-east-2\"],\"created_by\":{\"name\":\"CI Account\",\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"email\":\"team-intg-tools-libs-spam@datadoghq.com\"},\"deleted_at\":null,\"monitor_id\":326289831,\"org_id\":321813,\"modified_by\":{\"name\":\"CI Account\",\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"email\":\"team-intg-tools-libs-spam@datadoghq.com\"}}"
},
"headers": {
"content-type": "application/json"
Expand All @@ -2559,13 +2560,13 @@
},
"content_type": "",
"method": "GET",
"path": "/api/v1/monitor/150677868",
"path": "/api/v1/monitor/326289831",
"query": []
},
"response": {
"body": {
"encoding": "text",
"value": "{\"id\":150677868,\"org_id\":321813,\"type\":\"synthetics alert\",\"name\":\"Test-Get_a_synthetics_monitor_s_details-1722945796\",\"message\":\"BDD test payload: synthetics_api_http_test_payload.json\",\"tags\":[\"testing:api\",\"probe_dc:aws:us-east-2\",\"check_type:api\",\"check_status:live\",\"ci_execution_rule:blocking\"],\"query\":\"no_query\",\"options\":{\"on_missing_data\":\"show_no_data\",\"notify_audit\":false,\"new_host_delay\":300,\"include_tags\":true,\"synthetics_check_id\":\"4c7-n7j-xbv\",\"silenced\":{}},\"multi\":false,\"created_at\":1722945797000,\"created\":\"2024-08-06T12:03:17.451148+00:00\",\"modified\":\"2024-08-06T12:03:17.451148+00:00\",\"deleted\":null,\"restricted_roles\":null,\"priority\":5,\"overall_state_modified\":null,\"overall_state\":\"No Data\",\"creator\":{\"name\":null,\"email\":\"frog@datadoghq.com\",\"handle\":\"frog@datadoghq.com\",\"id\":1445416}}\n"
"value": "{\"id\":326289831,\"org_id\":321813,\"type\":\"synthetics alert\",\"name\":\"Test-Get_a_synthetics_monitor_s_details-1790695169\",\"message\":\"BDD test payload: synthetics_api_http_test_payload.json\",\"tags\":[\"testing:api\",\"probe_dc:aws:us-east-2\",\"check_type:api\",\"check_status:live\",\"ci_execution_rule:blocking\"],\"query\":\"no_query\",\"options\":{\"on_missing_data\":\"show_no_data\",\"notify_audit\":false,\"new_host_delay\":300,\"include_tags\":true,\"synthetics_check_id\":\"3bx-7ut-7je\",\"silenced\":{}},\"multi\":false,\"created_at\":1790695169000,\"created\":\"2026-09-29T15:19:29.290382+00:00\",\"modified\":\"2026-09-29T15:19:29.320328+00:00\",\"deleted\":null,\"priority\":5,\"restricted_roles\":null,\"draft_status\":\"published\",\"overall_state_modified\":null,\"overall_state\":\"No Data\",\"creator\":{\"name\":\"CI Account\",\"email\":\"team-intg-tools-libs-spam@datadoghq.com\",\"handle\":\"9919ec9b-ebc7-49ee-8dc8-03626e717cca\",\"id\":2320499}}\n"
},
"headers": {
"content-type": "application/json"
Expand All @@ -2580,7 +2581,7 @@
"type": "json",
"value": {
"public_ids": [
"4c7-n7j-xbv"
"3bx-7ut-7je"
]
}
},
Expand All @@ -2592,7 +2593,7 @@
"response": {
"body": {
"encoding": "text",
"value": "{\"deleted_tests\":[{\"public_id\":\"4c7-n7j-xbv\",\"deleted_at\":\"2024-08-06T12:03:18.946796+00:00\"}]}\n"
"value": "{\"deleted_tests\":[{\"public_id\":\"3bx-7ut-7je\",\"deleted_at\":\"2026-09-29T15:19:29.870015+00:00\"}]}\n"
},
"headers": {
"content-type": "application/json"
Expand Down
Loading
Loading