Skip to content

Commit 287650c

Browse files
author
ci.datadog-api-spec
committed
Regenerate client from commit b16decd2 of spec repo
1 parent 9e6633c commit 287650c

7 files changed

Lines changed: 293 additions & 7 deletions

File tree

.apigentools-info

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
"spec_versions": {
55
"v1": {
66
"apigentools_version": "1.6.6",
7-
"regenerated": "2025-05-19 17:45:11.035218",
8-
"spec_repo_commit": "77e5efb9"
7+
"regenerated": "2025-05-20 15:09:20.481465",
8+
"spec_repo_commit": "b16decd2"
99
},
1010
"v2": {
1111
"apigentools_version": "1.6.6",
12-
"regenerated": "2025-05-19 17:45:11.092406",
13-
"spec_repo_commit": "77e5efb9"
12+
"regenerated": "2025-05-20 15:09:20.496989",
13+
"spec_repo_commit": "b16decd2"
1414
}
1515
}
1616
}

.generator/schemas/v1/openapi.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14081,11 +14081,23 @@ components:
1408114081
enum:
1408214082
- http
1408314083
- grpc
14084+
- ssl
14085+
- dns
14086+
- tcp
14087+
- udp
14088+
- icmp
14089+
- websocket
1408414090
example: http
1408514091
type: string
1408614092
x-enum-varnames:
1408714093
- HTTP
1408814094
- GRPC
14095+
- SSL
14096+
- DNS
14097+
- TCP
14098+
- UDP
14099+
- ICMP
14100+
- WEBSOCKET
1408914101
SyntheticsAPITestType:
1409014102
default: api
1409114103
description: Type of the Synthetic test, `api`.

examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.py

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
from datadog_api_client.v1.model.synthetics_assertion_operator import SyntheticsAssertionOperator
1515
from datadog_api_client.v1.model.synthetics_assertion_target import SyntheticsAssertionTarget
1616
from datadog_api_client.v1.model.synthetics_assertion_type import SyntheticsAssertionType
17+
from datadog_api_client.v1.model.synthetics_basic_auth_web import SyntheticsBasicAuthWeb
18+
from datadog_api_client.v1.model.synthetics_basic_auth_web_type import SyntheticsBasicAuthWebType
1719
from datadog_api_client.v1.model.synthetics_config_variable import SyntheticsConfigVariable
1820
from datadog_api_client.v1.model.synthetics_config_variable_type import SyntheticsConfigVariableType
1921
from datadog_api_client.v1.model.synthetics_global_variable_parser_type import SyntheticsGlobalVariableParserType
@@ -23,6 +25,7 @@
2325
from datadog_api_client.v1.model.synthetics_parsing_options import SyntheticsParsingOptions
2426
from datadog_api_client.v1.model.synthetics_test_call_type import SyntheticsTestCallType
2527
from datadog_api_client.v1.model.synthetics_test_details_sub_type import SyntheticsTestDetailsSubType
28+
from datadog_api_client.v1.model.synthetics_test_headers import SyntheticsTestHeaders
2629
from datadog_api_client.v1.model.synthetics_test_metadata import SyntheticsTestMetadata
2730
from datadog_api_client.v1.model.synthetics_test_options import SyntheticsTestOptions
2831
from datadog_api_client.v1.model.synthetics_test_options_http_version import SyntheticsTestOptionsHTTPVersion
@@ -110,6 +113,146 @@
110113
call_type=SyntheticsTestCallType.UNARY,
111114
),
112115
),
116+
SyntheticsAPITestStep(
117+
name="SSL step",
118+
subtype=SyntheticsAPITestStepSubtype.SSL,
119+
allow_failure=False,
120+
is_critical=True,
121+
retry=SyntheticsTestOptionsRetry(
122+
count=0,
123+
interval=300.0,
124+
),
125+
assertions=[
126+
SyntheticsAssertionTarget(
127+
operator=SyntheticsAssertionOperator.IS_IN_MORE_DAYS_THAN,
128+
type=SyntheticsAssertionType.CERTIFICATE,
129+
target=10,
130+
),
131+
],
132+
request=SyntheticsTestRequest(
133+
host="example.org",
134+
port=443,
135+
),
136+
),
137+
SyntheticsAPITestStep(
138+
name="DNS step",
139+
subtype=SyntheticsAPITestStepSubtype.DNS,
140+
allow_failure=False,
141+
is_critical=True,
142+
retry=SyntheticsTestOptionsRetry(
143+
count=0,
144+
interval=300.0,
145+
),
146+
assertions=[
147+
SyntheticsAssertionTarget(
148+
operator=SyntheticsAssertionOperator.LESS_THAN,
149+
type=SyntheticsAssertionType.RESPONSE_TIME,
150+
target=1000,
151+
),
152+
],
153+
request=SyntheticsTestRequest(
154+
host="troisdizaines.com",
155+
dns_server="8.8.8.8",
156+
dns_server_port="53",
157+
),
158+
),
159+
SyntheticsAPITestStep(
160+
name="TCP step",
161+
subtype=SyntheticsAPITestStepSubtype.TCP,
162+
allow_failure=False,
163+
is_critical=True,
164+
retry=SyntheticsTestOptionsRetry(
165+
count=0,
166+
interval=300.0,
167+
),
168+
assertions=[
169+
SyntheticsAssertionTarget(
170+
operator=SyntheticsAssertionOperator.LESS_THAN,
171+
type=SyntheticsAssertionType.RESPONSE_TIME,
172+
target=1000,
173+
),
174+
],
175+
request=SyntheticsTestRequest(
176+
host="34.95.79.70",
177+
port=80,
178+
should_track_hops=True,
179+
timeout=32.0,
180+
),
181+
),
182+
SyntheticsAPITestStep(
183+
name="ICMP step",
184+
subtype=SyntheticsAPITestStepSubtype.ICMP,
185+
allow_failure=False,
186+
is_critical=True,
187+
retry=SyntheticsTestOptionsRetry(
188+
count=0,
189+
interval=300.0,
190+
),
191+
assertions=[
192+
SyntheticsAssertionTarget(
193+
operator=SyntheticsAssertionOperator.IS,
194+
target=0,
195+
type=SyntheticsAssertionType.PACKET_LOSS_PERCENTAGE,
196+
),
197+
],
198+
request=SyntheticsTestRequest(
199+
host="34.95.79.70",
200+
number_of_packets=4,
201+
should_track_hops=True,
202+
timeout=38.0,
203+
),
204+
),
205+
SyntheticsAPITestStep(
206+
name="Websocket step",
207+
subtype=SyntheticsAPITestStepSubtype.WEBSOCKET,
208+
allow_failure=False,
209+
is_critical=True,
210+
retry=SyntheticsTestOptionsRetry(
211+
count=0,
212+
interval=300.0,
213+
),
214+
assertions=[
215+
SyntheticsAssertionTarget(
216+
operator=SyntheticsAssertionOperator.LESS_THAN,
217+
type=SyntheticsAssertionType.RESPONSE_TIME,
218+
target=1000,
219+
),
220+
],
221+
request=SyntheticsTestRequest(
222+
url="ws://34.95.79.70/web-socket",
223+
message="My message",
224+
headers=SyntheticsTestHeaders(
225+
f="g",
226+
),
227+
basic_auth=SyntheticsBasicAuthWeb(
228+
type=SyntheticsBasicAuthWebType.WEB,
229+
username="user",
230+
password="password",
231+
),
232+
),
233+
),
234+
SyntheticsAPITestStep(
235+
name="UDP step",
236+
subtype=SyntheticsAPITestStepSubtype.UDP,
237+
allow_failure=False,
238+
is_critical=True,
239+
retry=SyntheticsTestOptionsRetry(
240+
count=0,
241+
interval=300.0,
242+
),
243+
assertions=[
244+
SyntheticsAssertionTarget(
245+
operator=SyntheticsAssertionOperator.LESS_THAN,
246+
type=SyntheticsAssertionType.RESPONSE_TIME,
247+
target=1000,
248+
),
249+
],
250+
request=SyntheticsTestRequest(
251+
host="8.8.8.8",
252+
port=53,
253+
message="A image.google.com",
254+
),
255+
),
113256
],
114257
),
115258
locations=[

src/datadog_api_client/v1/model/synthetics_api_test_step_subtype.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,16 +16,28 @@ class SyntheticsAPITestStepSubtype(ModelSimple):
1616
"""
1717
The subtype of the Synthetic multi-step API test step.
1818
19-
:param value: Must be one of ["http", "grpc"].
19+
:param value: Must be one of ["http", "grpc", "ssl", "dns", "tcp", "udp", "icmp", "websocket"].
2020
:type value: str
2121
"""
2222

2323
allowed_values = {
2424
"http",
2525
"grpc",
26+
"ssl",
27+
"dns",
28+
"tcp",
29+
"udp",
30+
"icmp",
31+
"websocket",
2632
}
2733
HTTP: ClassVar["SyntheticsAPITestStepSubtype"]
2834
GRPC: ClassVar["SyntheticsAPITestStepSubtype"]
35+
SSL: ClassVar["SyntheticsAPITestStepSubtype"]
36+
DNS: ClassVar["SyntheticsAPITestStepSubtype"]
37+
TCP: ClassVar["SyntheticsAPITestStepSubtype"]
38+
UDP: ClassVar["SyntheticsAPITestStepSubtype"]
39+
ICMP: ClassVar["SyntheticsAPITestStepSubtype"]
40+
WEBSOCKET: ClassVar["SyntheticsAPITestStepSubtype"]
2941

3042
@cached_property
3143
def openapi_types(_):
@@ -36,3 +48,9 @@ def openapi_types(_):
3648

3749
SyntheticsAPITestStepSubtype.HTTP = SyntheticsAPITestStepSubtype("http")
3850
SyntheticsAPITestStepSubtype.GRPC = SyntheticsAPITestStepSubtype("grpc")
51+
SyntheticsAPITestStepSubtype.SSL = SyntheticsAPITestStepSubtype("ssl")
52+
SyntheticsAPITestStepSubtype.DNS = SyntheticsAPITestStepSubtype("dns")
53+
SyntheticsAPITestStepSubtype.TCP = SyntheticsAPITestStepSubtype("tcp")
54+
SyntheticsAPITestStepSubtype.UDP = SyntheticsAPITestStepSubtype("udp")
55+
SyntheticsAPITestStepSubtype.ICMP = SyntheticsAPITestStepSubtype("icmp")
56+
SyntheticsAPITestStepSubtype.WEBSOCKET = SyntheticsAPITestStepSubtype("websocket")

tests/v1/features/given.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@
250250
"parameters": [
251251
{
252252
"name": "body",
253-
"value": "{\n \"config\": {\n \"configVariables\": [\n {\n \"example\": \"content-type\",\n \"name\": \"PROPERTY\",\n \"pattern\": \"content-type\",\n \"type\": \"text\"\n }\n ],\n \"steps\": [\n {\n \"allowFailure\": true,\n \"assertions\": [\n {\n \"operator\": \"is\",\n \"type\": \"statusCode\",\n \"target\": 200\n }\n ],\n \"exitIfSucceed\": true,\n \"extractedValues\": [\n {\n \"field\": \"server\",\n \"name\": \"EXTRACTED_VALUE\",\n \"parser\": {\n \"type\": \"raw\"\n },\n \"type\": \"http_header\",\n \"secure\": true\n }\n ],\n \"isCritical\": true,\n \"name\": \"request is sent\",\n \"request\": {\n \"method\": \"GET\",\n \"timeout\": 10,\n \"url\": \"https://datadoghq.com\",\n \"httpVersion\": \"http2\"\n },\n \"retry\": {\n \"count\": 5,\n \"interval\": 1000\n },\n \"subtype\": \"http\",\n \"extractedValuesFromScript\": \"dd.variable.set('STATUS_CODE', dd.response.statusCode);\"\n },\n {\n \"name\": \"Wait\",\n \"subtype\": \"wait\",\n \"value\": 1\n },\n {\n \"name\": \"GRPC CALL\",\n \"subtype\": \"grpc\",\n \"extractedValues\": [],\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": {\n \"count\": 0,\n \"interval\": 300\n },\n \"assertions\": [\n {\n \"operator\": \"lessThan\",\n \"type\": \"responseTime\",\n \"target\": 1000\n }\n ],\n \"request\": {\n \"host\": \"grpcbin.test.k6.io\",\n \"port\": 9000,\n \"service\": \"grpcbin.GRPCBin\",\n \"method\": \"Index\",\n \"message\": \"{}\",\n \"compressedJsonDescriptor\": \"eJy1lU1z2yAQhv+Lzj74I3ETH506bQ7OZOSm1w4Wa4epBARQppqM/3v5koCJJdvtxCdW77vPssCO3zMKUgHOFu/ZXvBiS6hZho/f8qe7pftYgXphWJrlA8XwxywEvNba+6PhkC2yVcVVswYp0R6ykRYlZ1SCV21SDrxsssPIeS9FJKqGfK2rqnmmSBwhWa2XlKgtaQPiDcRGCUDVfwGD2sKUqKEtc1cSoOrsMlaMOec1sySYCCgUYRSVLv2zSva2u+FQkB0pVkIw8bFuIudOOn3pOaKYVT3Iy97Pd0AYhOx5QcMsnxvRHlnuLf8ETDd3CNtrv2nejkDpRnANCmGkkFn/hsYzpBKE7jVbufgnKnV9HRM9zRPDDKPttYT61n0TdWkAAjggk9AhuxIeaXd69CYTcsGw7cBTakLVbNpRzGEgyWjkSOpMbZXkhGL6oX30R49qt3GoHrap7i0XdD41WQ+2icCNm5p1hmFqnHNlcla0riKmDZ183crDxChjbnurtxHPRE784sVhWvDfGP+SsTKibU3o5NtWHuZFGZOxP6P5VXqIOvaOSec4eYohyd7NslHuJbd1bewds85xYrNxkr2d+5IhFWF3NvaO684xjE2S5ulY+tu64Pna0fCPJgzw6vF5/WucLcYjt5xoq19O3UDptOg/OamJQRaCcPPnMTQ2QDFn+uhPvUfnCrMc99upyQY4Ui9Dlc/YoG3R/v4Cs9YE+g==\",\n \"metadata\": {},\n \"callType\": \"unary\"\n }\n }\n ]\n },\n \"locations\": [\"aws:us-east-2\"],\n \"message\": \"BDD test payload: synthetics_api_test_multi_step_payload.json\",\n \"name\": \"{{ unique }}\",\n \"options\": {\n \"accept_self_signed\": false,\n \"allow_insecure\": true,\n \"follow_redirects\": true,\n \"min_failure_duration\": 10,\n \"min_location_failed\": 1,\n \"monitor_name\": \"{{ unique }}\",\n \"monitor_priority\": 5,\n \"retry\": { \"count\": 3, \"interval\": 1000 },\n \"tick_every\": 60\n },\n \"subtype\": \"multi\",\n \"tags\": [\"testing:api\"],\n \"type\": \"api\"\n}\n"
253+
"value": "{\n \"config\": {\n \"configVariables\": [\n {\n \"example\": \"content-type\",\n \"name\": \"PROPERTY\",\n \"pattern\": \"content-type\",\n \"type\": \"text\"\n }\n ],\n \"steps\": [\n {\n \"allowFailure\": true,\n \"assertions\": [\n {\n \"operator\": \"is\",\n \"type\": \"statusCode\",\n \"target\": 200\n }\n ],\n \"exitIfSucceed\": true,\n \"extractedValues\": [\n {\n \"field\": \"server\",\n \"name\": \"EXTRACTED_VALUE\",\n \"parser\": {\n \"type\": \"raw\"\n },\n \"type\": \"http_header\",\n \"secure\": true\n }\n ],\n \"isCritical\": true,\n \"name\": \"request is sent\",\n \"request\": {\n \"method\": \"GET\",\n \"timeout\": 10,\n \"url\": \"https://datadoghq.com\",\n \"httpVersion\": \"http2\"\n },\n \"retry\": {\n \"count\": 5,\n \"interval\": 1000\n },\n \"subtype\": \"http\",\n \"extractedValuesFromScript\": \"dd.variable.set('STATUS_CODE', dd.response.statusCode);\"\n },\n {\n \"name\": \"Wait\",\n \"subtype\": \"wait\",\n \"value\": 1\n },\n {\n \"name\": \"GRPC CALL\",\n \"subtype\": \"grpc\",\n \"extractedValues\": [],\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": {\n \"count\": 0,\n \"interval\": 300\n },\n \"assertions\": [\n {\n \"operator\": \"lessThan\",\n \"type\": \"responseTime\",\n \"target\": 1000\n }\n ],\n \"request\": {\n \"host\": \"grpcbin.test.k6.io\",\n \"port\": 9000,\n \"service\": \"grpcbin.GRPCBin\",\n \"method\": \"Index\",\n \"message\": \"{}\",\n \"compressedJsonDescriptor\": \"eJy1lU1z2yAQhv+Lzj74I3ETH506bQ7OZOSm1w4Wa4epBARQppqM/3v5koCJJdvtxCdW77vPssCO3zMKUgHOFu/ZXvBiS6hZho/f8qe7pftYgXphWJrlA8XwxywEvNba+6PhkC2yVcVVswYp0R6ykRYlZ1SCV21SDrxsssPIeS9FJKqGfK2rqnmmSBwhWa2XlKgtaQPiDcRGCUDVfwGD2sKUqKEtc1cSoOrsMlaMOec1sySYCCgUYRSVLv2zSva2u+FQkB0pVkIw8bFuIudOOn3pOaKYVT3Iy97Pd0AYhOx5QcMsnxvRHlnuLf8ETDd3CNtrv2nejkDpRnANCmGkkFn/hsYzpBKE7jVbufgnKnV9HRM9zRPDDKPttYT61n0TdWkAAjggk9AhuxIeaXd69CYTcsGw7cBTakLVbNpRzGEgyWjkSOpMbZXkhGL6oX30R49qt3GoHrap7i0XdD41WQ+2icCNm5p1hmFqnHNlcla0riKmDZ183crDxChjbnurtxHPRE784sVhWvDfGP+SsTKibU3o5NtWHuZFGZOxP6P5VXqIOvaOSec4eYohyd7NslHuJbd1bewds85xYrNxkr2d+5IhFWF3NvaO684xjE2S5ulY+tu64Pna0fCPJgzw6vF5/WucLcYjt5xoq19O3UDptOg/OamJQRaCcPPnMTQ2QDFn+uhPvUfnCrMc99upyQY4Ui9Dlc/YoG3R/v4Cs9YE+g==\",\n \"metadata\": {},\n \"callType\": \"unary\"\n }\n },\n {\n \"name\": \"SSL step\",\n \"subtype\": \"ssl\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"isInMoreThan\", \"type\": \"certificate\", \"target\": 10 }\n ],\n \"request\": {\n \"host\": \"example.org\",\n \"port\": 443\n }\n },\n {\n \"name\": \"DNS step\",\n \"subtype\": \"dns\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"lessThan\", \"type\": \"responseTime\", \"target\": 1000 }\n ],\n \"request\": {\n \"host\": \"troisdizaines.com\",\n \"dnsServer\": \"8.8.8.8\",\n \"dnsServerPort\": \"53\"\n }\n },\n {\n \"name\": \"TCP step\",\n \"subtype\": \"tcp\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"lessThan\", \"type\": \"responseTime\", \"target\": 1000 }\n ],\n \"request\": {\n \"host\": \"34.95.79.70\",\n \"port\": 80,\n \"shouldTrackHops\": true,\n \"timeout\": 32\n }\n },\n {\n \"name\": \"ICMP step\",\n \"subtype\": \"icmp\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"is\", \"target\": 0, \"type\": \"packetLossPercentage\" }\n ],\n \"request\": {\n \"host\": \"34.95.79.70\",\n \"numberOfPackets\": 4,\n \"shouldTrackHops\": true,\n \"timeout\": 38\n }\n },\n {\n \"name\": \"Websocket step\",\n \"subtype\": \"websocket\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"lessThan\", \"type\": \"responseTime\", \"target\": 1000 }\n ],\n \"request\": {\n \"url\": \"ws://34.95.79.70/web-socket\",\n \"message\": \"My message\",\n \"headers\": { \"f\": \"g\" },\n \"basicAuth\": {\n \"type\": \"web\",\n \"username\": \"user\",\n \"password\": \"password\"\n }\n }\n },\n {\n \"name\": \"UDP step\",\n \"subtype\": \"udp\",\n \"allowFailure\": false,\n \"isCritical\": true,\n \"retry\": { \"count\": 0, \"interval\": 300 },\n \"assertions\": [\n { \"operator\": \"lessThan\", \"type\": \"responseTime\", \"target\": 1000 }\n ],\n \"request\": {\n \"host\": \"8.8.8.8\",\n \"port\": 53,\n \"message\": \"A image.google.com\"\n }\n }\n ]\n },\n \"locations\": [\"aws:us-east-2\"],\n \"message\": \"BDD test payload: synthetics_api_test_multi_step_payload.json\",\n \"name\": \"{{ unique }}\",\n \"options\": {\n \"accept_self_signed\": false,\n \"allow_insecure\": true,\n \"follow_redirects\": true,\n \"min_failure_duration\": 10,\n \"min_location_failed\": 1,\n \"monitor_name\": \"{{ unique }}\",\n \"monitor_priority\": 5,\n \"retry\": { \"count\": 3, \"interval\": 1000 },\n \"tick_every\": 60\n },\n \"subtype\": \"multi\",\n \"tags\": [\"testing:api\"],\n \"type\": \"api\"\n}\n"
254254
}
255255
],
256256
"step": "there is a valid \"synthetics_api_test_multi_step\" in the system",

0 commit comments

Comments
 (0)