pulumi-checkly 2.0.0a1738674781__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2413 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'AlertChannelCall',
20
+ 'AlertChannelEmail',
21
+ 'AlertChannelOpsgenie',
22
+ 'AlertChannelPagerduty',
23
+ 'AlertChannelSlack',
24
+ 'AlertChannelSms',
25
+ 'AlertChannelWebhook',
26
+ 'CheckAlertChannelSubscription',
27
+ 'CheckAlertSettings',
28
+ 'CheckAlertSettingsParallelRunFailureThreshold',
29
+ 'CheckAlertSettingsReminder',
30
+ 'CheckAlertSettingsRunBasedEscalation',
31
+ 'CheckAlertSettingsSslCertificate',
32
+ 'CheckAlertSettingsTimeBasedEscalation',
33
+ 'CheckEnvironmentVariable',
34
+ 'CheckGroupAlertChannelSubscription',
35
+ 'CheckGroupAlertSettings',
36
+ 'CheckGroupAlertSettingsParallelRunFailureThreshold',
37
+ 'CheckGroupAlertSettingsReminder',
38
+ 'CheckGroupAlertSettingsRunBasedEscalation',
39
+ 'CheckGroupAlertSettingsSslCertificate',
40
+ 'CheckGroupAlertSettingsTimeBasedEscalation',
41
+ 'CheckGroupApiCheckDefaults',
42
+ 'CheckGroupApiCheckDefaultsAssertion',
43
+ 'CheckGroupApiCheckDefaultsBasicAuth',
44
+ 'CheckGroupEnvironmentVariable',
45
+ 'CheckGroupRetryStrategy',
46
+ 'CheckRequest',
47
+ 'CheckRequestAssertion',
48
+ 'CheckRequestBasicAuth',
49
+ 'CheckRetryStrategy',
50
+ 'HeartbeatCheckAlertChannelSubscription',
51
+ 'HeartbeatCheckAlertSettings',
52
+ 'HeartbeatCheckAlertSettingsParallelRunFailureThreshold',
53
+ 'HeartbeatCheckAlertSettingsReminder',
54
+ 'HeartbeatCheckAlertSettingsRunBasedEscalation',
55
+ 'HeartbeatCheckAlertSettingsSslCertificate',
56
+ 'HeartbeatCheckAlertSettingsTimeBasedEscalation',
57
+ 'HeartbeatCheckHeartbeat',
58
+ 'TcpCheckAlertChannelSubscription',
59
+ 'TcpCheckAlertSettings',
60
+ 'TcpCheckAlertSettingsParallelRunFailureThreshold',
61
+ 'TcpCheckAlertSettingsReminder',
62
+ 'TcpCheckAlertSettingsRunBasedEscalation',
63
+ 'TcpCheckAlertSettingsTimeBasedEscalation',
64
+ 'TcpCheckRequest',
65
+ 'TcpCheckRequestAssertion',
66
+ 'TcpCheckRetryStrategy',
67
+ ]
68
+
69
+ @pulumi.output_type
70
+ class AlertChannelCall(dict):
71
+ def __init__(__self__, *,
72
+ name: str,
73
+ number: str):
74
+ """
75
+ :param str name: The name of this alert channel
76
+ :param str number: The mobile number to receive the alerts
77
+ """
78
+ pulumi.set(__self__, "name", name)
79
+ pulumi.set(__self__, "number", number)
80
+
81
+ @property
82
+ @pulumi.getter
83
+ def name(self) -> str:
84
+ """
85
+ The name of this alert channel
86
+ """
87
+ return pulumi.get(self, "name")
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def number(self) -> str:
92
+ """
93
+ The mobile number to receive the alerts
94
+ """
95
+ return pulumi.get(self, "number")
96
+
97
+
98
+ @pulumi.output_type
99
+ class AlertChannelEmail(dict):
100
+ def __init__(__self__, *,
101
+ address: str):
102
+ """
103
+ :param str address: The email address of this email alert channel.
104
+ """
105
+ pulumi.set(__self__, "address", address)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def address(self) -> str:
110
+ """
111
+ The email address of this email alert channel.
112
+ """
113
+ return pulumi.get(self, "address")
114
+
115
+
116
+ @pulumi.output_type
117
+ class AlertChannelOpsgenie(dict):
118
+ @staticmethod
119
+ def __key_warning(key: str):
120
+ suggest = None
121
+ if key == "apiKey":
122
+ suggest = "api_key"
123
+
124
+ if suggest:
125
+ pulumi.log.warn(f"Key '{key}' not found in AlertChannelOpsgenie. Access the value via the '{suggest}' property getter instead.")
126
+
127
+ def __getitem__(self, key: str) -> Any:
128
+ AlertChannelOpsgenie.__key_warning(key)
129
+ return super().__getitem__(key)
130
+
131
+ def get(self, key: str, default = None) -> Any:
132
+ AlertChannelOpsgenie.__key_warning(key)
133
+ return super().get(key, default)
134
+
135
+ def __init__(__self__, *,
136
+ api_key: str,
137
+ name: str,
138
+ priority: str,
139
+ region: str):
140
+ pulumi.set(__self__, "api_key", api_key)
141
+ pulumi.set(__self__, "name", name)
142
+ pulumi.set(__self__, "priority", priority)
143
+ pulumi.set(__self__, "region", region)
144
+
145
+ @property
146
+ @pulumi.getter(name="apiKey")
147
+ def api_key(self) -> str:
148
+ return pulumi.get(self, "api_key")
149
+
150
+ @property
151
+ @pulumi.getter
152
+ def name(self) -> str:
153
+ return pulumi.get(self, "name")
154
+
155
+ @property
156
+ @pulumi.getter
157
+ def priority(self) -> str:
158
+ return pulumi.get(self, "priority")
159
+
160
+ @property
161
+ @pulumi.getter
162
+ def region(self) -> str:
163
+ return pulumi.get(self, "region")
164
+
165
+
166
+ @pulumi.output_type
167
+ class AlertChannelPagerduty(dict):
168
+ @staticmethod
169
+ def __key_warning(key: str):
170
+ suggest = None
171
+ if key == "serviceKey":
172
+ suggest = "service_key"
173
+ elif key == "serviceName":
174
+ suggest = "service_name"
175
+
176
+ if suggest:
177
+ pulumi.log.warn(f"Key '{key}' not found in AlertChannelPagerduty. Access the value via the '{suggest}' property getter instead.")
178
+
179
+ def __getitem__(self, key: str) -> Any:
180
+ AlertChannelPagerduty.__key_warning(key)
181
+ return super().__getitem__(key)
182
+
183
+ def get(self, key: str, default = None) -> Any:
184
+ AlertChannelPagerduty.__key_warning(key)
185
+ return super().get(key, default)
186
+
187
+ def __init__(__self__, *,
188
+ service_key: str,
189
+ account: Optional[str] = None,
190
+ service_name: Optional[str] = None):
191
+ pulumi.set(__self__, "service_key", service_key)
192
+ if account is not None:
193
+ pulumi.set(__self__, "account", account)
194
+ if service_name is not None:
195
+ pulumi.set(__self__, "service_name", service_name)
196
+
197
+ @property
198
+ @pulumi.getter(name="serviceKey")
199
+ def service_key(self) -> str:
200
+ return pulumi.get(self, "service_key")
201
+
202
+ @property
203
+ @pulumi.getter
204
+ def account(self) -> Optional[str]:
205
+ return pulumi.get(self, "account")
206
+
207
+ @property
208
+ @pulumi.getter(name="serviceName")
209
+ def service_name(self) -> Optional[str]:
210
+ return pulumi.get(self, "service_name")
211
+
212
+
213
+ @pulumi.output_type
214
+ class AlertChannelSlack(dict):
215
+ def __init__(__self__, *,
216
+ channel: str,
217
+ url: str):
218
+ """
219
+ :param str channel: The name of the alert's Slack channel
220
+ :param str url: The Slack webhook URL
221
+ """
222
+ pulumi.set(__self__, "channel", channel)
223
+ pulumi.set(__self__, "url", url)
224
+
225
+ @property
226
+ @pulumi.getter
227
+ def channel(self) -> str:
228
+ """
229
+ The name of the alert's Slack channel
230
+ """
231
+ return pulumi.get(self, "channel")
232
+
233
+ @property
234
+ @pulumi.getter
235
+ def url(self) -> str:
236
+ """
237
+ The Slack webhook URL
238
+ """
239
+ return pulumi.get(self, "url")
240
+
241
+
242
+ @pulumi.output_type
243
+ class AlertChannelSms(dict):
244
+ def __init__(__self__, *,
245
+ name: str,
246
+ number: str):
247
+ """
248
+ :param str name: The name of this alert channel
249
+ :param str number: The mobile number to receive the alerts
250
+ """
251
+ pulumi.set(__self__, "name", name)
252
+ pulumi.set(__self__, "number", number)
253
+
254
+ @property
255
+ @pulumi.getter
256
+ def name(self) -> str:
257
+ """
258
+ The name of this alert channel
259
+ """
260
+ return pulumi.get(self, "name")
261
+
262
+ @property
263
+ @pulumi.getter
264
+ def number(self) -> str:
265
+ """
266
+ The mobile number to receive the alerts
267
+ """
268
+ return pulumi.get(self, "number")
269
+
270
+
271
+ @pulumi.output_type
272
+ class AlertChannelWebhook(dict):
273
+ @staticmethod
274
+ def __key_warning(key: str):
275
+ suggest = None
276
+ if key == "queryParameters":
277
+ suggest = "query_parameters"
278
+ elif key == "webhookSecret":
279
+ suggest = "webhook_secret"
280
+ elif key == "webhookType":
281
+ suggest = "webhook_type"
282
+
283
+ if suggest:
284
+ pulumi.log.warn(f"Key '{key}' not found in AlertChannelWebhook. Access the value via the '{suggest}' property getter instead.")
285
+
286
+ def __getitem__(self, key: str) -> Any:
287
+ AlertChannelWebhook.__key_warning(key)
288
+ return super().__getitem__(key)
289
+
290
+ def get(self, key: str, default = None) -> Any:
291
+ AlertChannelWebhook.__key_warning(key)
292
+ return super().get(key, default)
293
+
294
+ def __init__(__self__, *,
295
+ name: str,
296
+ url: str,
297
+ headers: Optional[Mapping[str, str]] = None,
298
+ method: Optional[str] = None,
299
+ query_parameters: Optional[Mapping[str, str]] = None,
300
+ template: Optional[str] = None,
301
+ webhook_secret: Optional[str] = None,
302
+ webhook_type: Optional[str] = None):
303
+ """
304
+ :param str method: (Default `POST`)
305
+ :param str webhook_type: Type of the webhook. Possible values are 'WEBHOOK*DISCORD', 'WEBHOOK*FIREHYDRANT', 'WEBHOOK*GITLAB*ALERT', 'WEBHOOK*SPIKESH', 'WEBHOOK*SPLUNK', 'WEBHOOK*MSTEAMS' and 'WEBHOOK*TELEGRAM'.
306
+ """
307
+ pulumi.set(__self__, "name", name)
308
+ pulumi.set(__self__, "url", url)
309
+ if headers is not None:
310
+ pulumi.set(__self__, "headers", headers)
311
+ if method is not None:
312
+ pulumi.set(__self__, "method", method)
313
+ if query_parameters is not None:
314
+ pulumi.set(__self__, "query_parameters", query_parameters)
315
+ if template is not None:
316
+ pulumi.set(__self__, "template", template)
317
+ if webhook_secret is not None:
318
+ pulumi.set(__self__, "webhook_secret", webhook_secret)
319
+ if webhook_type is not None:
320
+ pulumi.set(__self__, "webhook_type", webhook_type)
321
+
322
+ @property
323
+ @pulumi.getter
324
+ def name(self) -> str:
325
+ return pulumi.get(self, "name")
326
+
327
+ @property
328
+ @pulumi.getter
329
+ def url(self) -> str:
330
+ return pulumi.get(self, "url")
331
+
332
+ @property
333
+ @pulumi.getter
334
+ def headers(self) -> Optional[Mapping[str, str]]:
335
+ return pulumi.get(self, "headers")
336
+
337
+ @property
338
+ @pulumi.getter
339
+ def method(self) -> Optional[str]:
340
+ """
341
+ (Default `POST`)
342
+ """
343
+ return pulumi.get(self, "method")
344
+
345
+ @property
346
+ @pulumi.getter(name="queryParameters")
347
+ def query_parameters(self) -> Optional[Mapping[str, str]]:
348
+ return pulumi.get(self, "query_parameters")
349
+
350
+ @property
351
+ @pulumi.getter
352
+ def template(self) -> Optional[str]:
353
+ return pulumi.get(self, "template")
354
+
355
+ @property
356
+ @pulumi.getter(name="webhookSecret")
357
+ def webhook_secret(self) -> Optional[str]:
358
+ return pulumi.get(self, "webhook_secret")
359
+
360
+ @property
361
+ @pulumi.getter(name="webhookType")
362
+ def webhook_type(self) -> Optional[str]:
363
+ """
364
+ Type of the webhook. Possible values are 'WEBHOOK*DISCORD', 'WEBHOOK*FIREHYDRANT', 'WEBHOOK*GITLAB*ALERT', 'WEBHOOK*SPIKESH', 'WEBHOOK*SPLUNK', 'WEBHOOK*MSTEAMS' and 'WEBHOOK*TELEGRAM'.
365
+ """
366
+ return pulumi.get(self, "webhook_type")
367
+
368
+
369
+ @pulumi.output_type
370
+ class CheckAlertChannelSubscription(dict):
371
+ @staticmethod
372
+ def __key_warning(key: str):
373
+ suggest = None
374
+ if key == "channelId":
375
+ suggest = "channel_id"
376
+
377
+ if suggest:
378
+ pulumi.log.warn(f"Key '{key}' not found in CheckAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
379
+
380
+ def __getitem__(self, key: str) -> Any:
381
+ CheckAlertChannelSubscription.__key_warning(key)
382
+ return super().__getitem__(key)
383
+
384
+ def get(self, key: str, default = None) -> Any:
385
+ CheckAlertChannelSubscription.__key_warning(key)
386
+ return super().get(key, default)
387
+
388
+ def __init__(__self__, *,
389
+ activated: bool,
390
+ channel_id: int):
391
+ pulumi.set(__self__, "activated", activated)
392
+ pulumi.set(__self__, "channel_id", channel_id)
393
+
394
+ @property
395
+ @pulumi.getter
396
+ def activated(self) -> bool:
397
+ return pulumi.get(self, "activated")
398
+
399
+ @property
400
+ @pulumi.getter(name="channelId")
401
+ def channel_id(self) -> int:
402
+ return pulumi.get(self, "channel_id")
403
+
404
+
405
+ @pulumi.output_type
406
+ class CheckAlertSettings(dict):
407
+ @staticmethod
408
+ def __key_warning(key: str):
409
+ suggest = None
410
+ if key == "escalationType":
411
+ suggest = "escalation_type"
412
+ elif key == "parallelRunFailureThresholds":
413
+ suggest = "parallel_run_failure_thresholds"
414
+ elif key == "runBasedEscalations":
415
+ suggest = "run_based_escalations"
416
+ elif key == "sslCertificates":
417
+ suggest = "ssl_certificates"
418
+ elif key == "timeBasedEscalations":
419
+ suggest = "time_based_escalations"
420
+
421
+ if suggest:
422
+ pulumi.log.warn(f"Key '{key}' not found in CheckAlertSettings. Access the value via the '{suggest}' property getter instead.")
423
+
424
+ def __getitem__(self, key: str) -> Any:
425
+ CheckAlertSettings.__key_warning(key)
426
+ return super().__getitem__(key)
427
+
428
+ def get(self, key: str, default = None) -> Any:
429
+ CheckAlertSettings.__key_warning(key)
430
+ return super().get(key, default)
431
+
432
+ def __init__(__self__, *,
433
+ escalation_type: Optional[str] = None,
434
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.CheckAlertSettingsParallelRunFailureThreshold']] = None,
435
+ reminders: Optional[Sequence['outputs.CheckAlertSettingsReminder']] = None,
436
+ run_based_escalations: Optional[Sequence['outputs.CheckAlertSettingsRunBasedEscalation']] = None,
437
+ ssl_certificates: Optional[Sequence['outputs.CheckAlertSettingsSslCertificate']] = None,
438
+ time_based_escalations: Optional[Sequence['outputs.CheckAlertSettingsTimeBasedEscalation']] = None):
439
+ """
440
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
441
+ """
442
+ if escalation_type is not None:
443
+ pulumi.set(__self__, "escalation_type", escalation_type)
444
+ if parallel_run_failure_thresholds is not None:
445
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
446
+ if reminders is not None:
447
+ pulumi.set(__self__, "reminders", reminders)
448
+ if run_based_escalations is not None:
449
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
450
+ if ssl_certificates is not None:
451
+ pulumi.set(__self__, "ssl_certificates", ssl_certificates)
452
+ if time_based_escalations is not None:
453
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
454
+
455
+ @property
456
+ @pulumi.getter(name="escalationType")
457
+ def escalation_type(self) -> Optional[str]:
458
+ """
459
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
460
+ """
461
+ return pulumi.get(self, "escalation_type")
462
+
463
+ @property
464
+ @pulumi.getter(name="parallelRunFailureThresholds")
465
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.CheckAlertSettingsParallelRunFailureThreshold']]:
466
+ return pulumi.get(self, "parallel_run_failure_thresholds")
467
+
468
+ @property
469
+ @pulumi.getter
470
+ def reminders(self) -> Optional[Sequence['outputs.CheckAlertSettingsReminder']]:
471
+ return pulumi.get(self, "reminders")
472
+
473
+ @property
474
+ @pulumi.getter(name="runBasedEscalations")
475
+ def run_based_escalations(self) -> Optional[Sequence['outputs.CheckAlertSettingsRunBasedEscalation']]:
476
+ return pulumi.get(self, "run_based_escalations")
477
+
478
+ @property
479
+ @pulumi.getter(name="sslCertificates")
480
+ @_utilities.deprecated("""This property is deprecated and it's ignored by the Checkly Public API. It will be removed in a future version.""")
481
+ def ssl_certificates(self) -> Optional[Sequence['outputs.CheckAlertSettingsSslCertificate']]:
482
+ return pulumi.get(self, "ssl_certificates")
483
+
484
+ @property
485
+ @pulumi.getter(name="timeBasedEscalations")
486
+ def time_based_escalations(self) -> Optional[Sequence['outputs.CheckAlertSettingsTimeBasedEscalation']]:
487
+ return pulumi.get(self, "time_based_escalations")
488
+
489
+
490
+ @pulumi.output_type
491
+ class CheckAlertSettingsParallelRunFailureThreshold(dict):
492
+ def __init__(__self__, *,
493
+ enabled: Optional[bool] = None,
494
+ percentage: Optional[int] = None):
495
+ """
496
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
497
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
498
+ """
499
+ if enabled is not None:
500
+ pulumi.set(__self__, "enabled", enabled)
501
+ if percentage is not None:
502
+ pulumi.set(__self__, "percentage", percentage)
503
+
504
+ @property
505
+ @pulumi.getter
506
+ def enabled(self) -> Optional[bool]:
507
+ """
508
+ Applicable only for checks scheduled in parallel in multiple locations.
509
+ """
510
+ return pulumi.get(self, "enabled")
511
+
512
+ @property
513
+ @pulumi.getter
514
+ def percentage(self) -> Optional[int]:
515
+ """
516
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
517
+ """
518
+ return pulumi.get(self, "percentage")
519
+
520
+
521
+ @pulumi.output_type
522
+ class CheckAlertSettingsReminder(dict):
523
+ def __init__(__self__, *,
524
+ amount: Optional[int] = None,
525
+ interval: Optional[int] = None):
526
+ """
527
+ :param int amount: How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
528
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
529
+ """
530
+ if amount is not None:
531
+ pulumi.set(__self__, "amount", amount)
532
+ if interval is not None:
533
+ pulumi.set(__self__, "interval", interval)
534
+
535
+ @property
536
+ @pulumi.getter
537
+ def amount(self) -> Optional[int]:
538
+ """
539
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
540
+ """
541
+ return pulumi.get(self, "amount")
542
+
543
+ @property
544
+ @pulumi.getter
545
+ def interval(self) -> Optional[int]:
546
+ """
547
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
548
+ """
549
+ return pulumi.get(self, "interval")
550
+
551
+
552
+ @pulumi.output_type
553
+ class CheckAlertSettingsRunBasedEscalation(dict):
554
+ @staticmethod
555
+ def __key_warning(key: str):
556
+ suggest = None
557
+ if key == "failedRunThreshold":
558
+ suggest = "failed_run_threshold"
559
+
560
+ if suggest:
561
+ pulumi.log.warn(f"Key '{key}' not found in CheckAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
562
+
563
+ def __getitem__(self, key: str) -> Any:
564
+ CheckAlertSettingsRunBasedEscalation.__key_warning(key)
565
+ return super().__getitem__(key)
566
+
567
+ def get(self, key: str, default = None) -> Any:
568
+ CheckAlertSettingsRunBasedEscalation.__key_warning(key)
569
+ return super().get(key, default)
570
+
571
+ def __init__(__self__, *,
572
+ failed_run_threshold: Optional[int] = None):
573
+ """
574
+ :param int failed_run_threshold: After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
575
+ """
576
+ if failed_run_threshold is not None:
577
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
578
+
579
+ @property
580
+ @pulumi.getter(name="failedRunThreshold")
581
+ def failed_run_threshold(self) -> Optional[int]:
582
+ """
583
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
584
+ """
585
+ return pulumi.get(self, "failed_run_threshold")
586
+
587
+
588
+ @pulumi.output_type
589
+ class CheckAlertSettingsSslCertificate(dict):
590
+ @staticmethod
591
+ def __key_warning(key: str):
592
+ suggest = None
593
+ if key == "alertThreshold":
594
+ suggest = "alert_threshold"
595
+
596
+ if suggest:
597
+ pulumi.log.warn(f"Key '{key}' not found in CheckAlertSettingsSslCertificate. Access the value via the '{suggest}' property getter instead.")
598
+
599
+ def __getitem__(self, key: str) -> Any:
600
+ CheckAlertSettingsSslCertificate.__key_warning(key)
601
+ return super().__getitem__(key)
602
+
603
+ def get(self, key: str, default = None) -> Any:
604
+ CheckAlertSettingsSslCertificate.__key_warning(key)
605
+ return super().get(key, default)
606
+
607
+ def __init__(__self__, *,
608
+ alert_threshold: Optional[int] = None,
609
+ enabled: Optional[bool] = None):
610
+ """
611
+ :param int alert_threshold: How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
612
+ :param bool enabled: Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
613
+ """
614
+ if alert_threshold is not None:
615
+ pulumi.set(__self__, "alert_threshold", alert_threshold)
616
+ if enabled is not None:
617
+ pulumi.set(__self__, "enabled", enabled)
618
+
619
+ @property
620
+ @pulumi.getter(name="alertThreshold")
621
+ def alert_threshold(self) -> Optional[int]:
622
+ """
623
+ How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
624
+ """
625
+ return pulumi.get(self, "alert_threshold")
626
+
627
+ @property
628
+ @pulumi.getter
629
+ def enabled(self) -> Optional[bool]:
630
+ """
631
+ Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
632
+ """
633
+ return pulumi.get(self, "enabled")
634
+
635
+
636
+ @pulumi.output_type
637
+ class CheckAlertSettingsTimeBasedEscalation(dict):
638
+ @staticmethod
639
+ def __key_warning(key: str):
640
+ suggest = None
641
+ if key == "minutesFailingThreshold":
642
+ suggest = "minutes_failing_threshold"
643
+
644
+ if suggest:
645
+ pulumi.log.warn(f"Key '{key}' not found in CheckAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
646
+
647
+ def __getitem__(self, key: str) -> Any:
648
+ CheckAlertSettingsTimeBasedEscalation.__key_warning(key)
649
+ return super().__getitem__(key)
650
+
651
+ def get(self, key: str, default = None) -> Any:
652
+ CheckAlertSettingsTimeBasedEscalation.__key_warning(key)
653
+ return super().get(key, default)
654
+
655
+ def __init__(__self__, *,
656
+ minutes_failing_threshold: Optional[int] = None):
657
+ """
658
+ :param int minutes_failing_threshold: After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
659
+ """
660
+ if minutes_failing_threshold is not None:
661
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
662
+
663
+ @property
664
+ @pulumi.getter(name="minutesFailingThreshold")
665
+ def minutes_failing_threshold(self) -> Optional[int]:
666
+ """
667
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
668
+ """
669
+ return pulumi.get(self, "minutes_failing_threshold")
670
+
671
+
672
+ @pulumi.output_type
673
+ class CheckEnvironmentVariable(dict):
674
+ def __init__(__self__, *,
675
+ key: str,
676
+ value: str,
677
+ locked: Optional[bool] = None,
678
+ secret: Optional[bool] = None):
679
+ pulumi.set(__self__, "key", key)
680
+ pulumi.set(__self__, "value", value)
681
+ if locked is not None:
682
+ pulumi.set(__self__, "locked", locked)
683
+ if secret is not None:
684
+ pulumi.set(__self__, "secret", secret)
685
+
686
+ @property
687
+ @pulumi.getter
688
+ def key(self) -> str:
689
+ return pulumi.get(self, "key")
690
+
691
+ @property
692
+ @pulumi.getter
693
+ def value(self) -> str:
694
+ return pulumi.get(self, "value")
695
+
696
+ @property
697
+ @pulumi.getter
698
+ def locked(self) -> Optional[bool]:
699
+ return pulumi.get(self, "locked")
700
+
701
+ @property
702
+ @pulumi.getter
703
+ def secret(self) -> Optional[bool]:
704
+ return pulumi.get(self, "secret")
705
+
706
+
707
+ @pulumi.output_type
708
+ class CheckGroupAlertChannelSubscription(dict):
709
+ @staticmethod
710
+ def __key_warning(key: str):
711
+ suggest = None
712
+ if key == "channelId":
713
+ suggest = "channel_id"
714
+
715
+ if suggest:
716
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
717
+
718
+ def __getitem__(self, key: str) -> Any:
719
+ CheckGroupAlertChannelSubscription.__key_warning(key)
720
+ return super().__getitem__(key)
721
+
722
+ def get(self, key: str, default = None) -> Any:
723
+ CheckGroupAlertChannelSubscription.__key_warning(key)
724
+ return super().get(key, default)
725
+
726
+ def __init__(__self__, *,
727
+ activated: bool,
728
+ channel_id: int):
729
+ pulumi.set(__self__, "activated", activated)
730
+ pulumi.set(__self__, "channel_id", channel_id)
731
+
732
+ @property
733
+ @pulumi.getter
734
+ def activated(self) -> bool:
735
+ return pulumi.get(self, "activated")
736
+
737
+ @property
738
+ @pulumi.getter(name="channelId")
739
+ def channel_id(self) -> int:
740
+ return pulumi.get(self, "channel_id")
741
+
742
+
743
+ @pulumi.output_type
744
+ class CheckGroupAlertSettings(dict):
745
+ @staticmethod
746
+ def __key_warning(key: str):
747
+ suggest = None
748
+ if key == "escalationType":
749
+ suggest = "escalation_type"
750
+ elif key == "parallelRunFailureThresholds":
751
+ suggest = "parallel_run_failure_thresholds"
752
+ elif key == "runBasedEscalations":
753
+ suggest = "run_based_escalations"
754
+ elif key == "sslCertificates":
755
+ suggest = "ssl_certificates"
756
+ elif key == "timeBasedEscalations":
757
+ suggest = "time_based_escalations"
758
+
759
+ if suggest:
760
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupAlertSettings. Access the value via the '{suggest}' property getter instead.")
761
+
762
+ def __getitem__(self, key: str) -> Any:
763
+ CheckGroupAlertSettings.__key_warning(key)
764
+ return super().__getitem__(key)
765
+
766
+ def get(self, key: str, default = None) -> Any:
767
+ CheckGroupAlertSettings.__key_warning(key)
768
+ return super().get(key, default)
769
+
770
+ def __init__(__self__, *,
771
+ escalation_type: Optional[str] = None,
772
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.CheckGroupAlertSettingsParallelRunFailureThreshold']] = None,
773
+ reminders: Optional[Sequence['outputs.CheckGroupAlertSettingsReminder']] = None,
774
+ run_based_escalations: Optional[Sequence['outputs.CheckGroupAlertSettingsRunBasedEscalation']] = None,
775
+ ssl_certificates: Optional[Sequence['outputs.CheckGroupAlertSettingsSslCertificate']] = None,
776
+ time_based_escalations: Optional[Sequence['outputs.CheckGroupAlertSettingsTimeBasedEscalation']] = None):
777
+ """
778
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
779
+ """
780
+ if escalation_type is not None:
781
+ pulumi.set(__self__, "escalation_type", escalation_type)
782
+ if parallel_run_failure_thresholds is not None:
783
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
784
+ if reminders is not None:
785
+ pulumi.set(__self__, "reminders", reminders)
786
+ if run_based_escalations is not None:
787
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
788
+ if ssl_certificates is not None:
789
+ pulumi.set(__self__, "ssl_certificates", ssl_certificates)
790
+ if time_based_escalations is not None:
791
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
792
+
793
+ @property
794
+ @pulumi.getter(name="escalationType")
795
+ def escalation_type(self) -> Optional[str]:
796
+ """
797
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
798
+ """
799
+ return pulumi.get(self, "escalation_type")
800
+
801
+ @property
802
+ @pulumi.getter(name="parallelRunFailureThresholds")
803
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.CheckGroupAlertSettingsParallelRunFailureThreshold']]:
804
+ return pulumi.get(self, "parallel_run_failure_thresholds")
805
+
806
+ @property
807
+ @pulumi.getter
808
+ def reminders(self) -> Optional[Sequence['outputs.CheckGroupAlertSettingsReminder']]:
809
+ return pulumi.get(self, "reminders")
810
+
811
+ @property
812
+ @pulumi.getter(name="runBasedEscalations")
813
+ def run_based_escalations(self) -> Optional[Sequence['outputs.CheckGroupAlertSettingsRunBasedEscalation']]:
814
+ return pulumi.get(self, "run_based_escalations")
815
+
816
+ @property
817
+ @pulumi.getter(name="sslCertificates")
818
+ @_utilities.deprecated("""This property is deprecated and it's ignored by the Checkly Public API. It will be removed in a future version.""")
819
+ def ssl_certificates(self) -> Optional[Sequence['outputs.CheckGroupAlertSettingsSslCertificate']]:
820
+ return pulumi.get(self, "ssl_certificates")
821
+
822
+ @property
823
+ @pulumi.getter(name="timeBasedEscalations")
824
+ def time_based_escalations(self) -> Optional[Sequence['outputs.CheckGroupAlertSettingsTimeBasedEscalation']]:
825
+ return pulumi.get(self, "time_based_escalations")
826
+
827
+
828
+ @pulumi.output_type
829
+ class CheckGroupAlertSettingsParallelRunFailureThreshold(dict):
830
+ def __init__(__self__, *,
831
+ enabled: Optional[bool] = None,
832
+ percentage: Optional[int] = None):
833
+ """
834
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
835
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
836
+ """
837
+ if enabled is not None:
838
+ pulumi.set(__self__, "enabled", enabled)
839
+ if percentage is not None:
840
+ pulumi.set(__self__, "percentage", percentage)
841
+
842
+ @property
843
+ @pulumi.getter
844
+ def enabled(self) -> Optional[bool]:
845
+ """
846
+ Applicable only for checks scheduled in parallel in multiple locations.
847
+ """
848
+ return pulumi.get(self, "enabled")
849
+
850
+ @property
851
+ @pulumi.getter
852
+ def percentage(self) -> Optional[int]:
853
+ """
854
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
855
+ """
856
+ return pulumi.get(self, "percentage")
857
+
858
+
859
+ @pulumi.output_type
860
+ class CheckGroupAlertSettingsReminder(dict):
861
+ def __init__(__self__, *,
862
+ amount: Optional[int] = None,
863
+ interval: Optional[int] = None):
864
+ """
865
+ :param int amount: How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
866
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
867
+ """
868
+ if amount is not None:
869
+ pulumi.set(__self__, "amount", amount)
870
+ if interval is not None:
871
+ pulumi.set(__self__, "interval", interval)
872
+
873
+ @property
874
+ @pulumi.getter
875
+ def amount(self) -> Optional[int]:
876
+ """
877
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
878
+ """
879
+ return pulumi.get(self, "amount")
880
+
881
+ @property
882
+ @pulumi.getter
883
+ def interval(self) -> Optional[int]:
884
+ """
885
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
886
+ """
887
+ return pulumi.get(self, "interval")
888
+
889
+
890
+ @pulumi.output_type
891
+ class CheckGroupAlertSettingsRunBasedEscalation(dict):
892
+ @staticmethod
893
+ def __key_warning(key: str):
894
+ suggest = None
895
+ if key == "failedRunThreshold":
896
+ suggest = "failed_run_threshold"
897
+
898
+ if suggest:
899
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
900
+
901
+ def __getitem__(self, key: str) -> Any:
902
+ CheckGroupAlertSettingsRunBasedEscalation.__key_warning(key)
903
+ return super().__getitem__(key)
904
+
905
+ def get(self, key: str, default = None) -> Any:
906
+ CheckGroupAlertSettingsRunBasedEscalation.__key_warning(key)
907
+ return super().get(key, default)
908
+
909
+ def __init__(__self__, *,
910
+ failed_run_threshold: Optional[int] = None):
911
+ """
912
+ :param int failed_run_threshold: After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
913
+ """
914
+ if failed_run_threshold is not None:
915
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
916
+
917
+ @property
918
+ @pulumi.getter(name="failedRunThreshold")
919
+ def failed_run_threshold(self) -> Optional[int]:
920
+ """
921
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
922
+ """
923
+ return pulumi.get(self, "failed_run_threshold")
924
+
925
+
926
+ @pulumi.output_type
927
+ class CheckGroupAlertSettingsSslCertificate(dict):
928
+ @staticmethod
929
+ def __key_warning(key: str):
930
+ suggest = None
931
+ if key == "alertThreshold":
932
+ suggest = "alert_threshold"
933
+
934
+ if suggest:
935
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupAlertSettingsSslCertificate. Access the value via the '{suggest}' property getter instead.")
936
+
937
+ def __getitem__(self, key: str) -> Any:
938
+ CheckGroupAlertSettingsSslCertificate.__key_warning(key)
939
+ return super().__getitem__(key)
940
+
941
+ def get(self, key: str, default = None) -> Any:
942
+ CheckGroupAlertSettingsSslCertificate.__key_warning(key)
943
+ return super().get(key, default)
944
+
945
+ def __init__(__self__, *,
946
+ alert_threshold: Optional[int] = None,
947
+ enabled: Optional[bool] = None):
948
+ """
949
+ :param int alert_threshold: At what moment in time to start alerting on SSL certificates. Possible values `3`, `7`, `14`, `30`. (Default `3`).
950
+ :param bool enabled: Determines if alert notifications should be sent for expiring SSL certificates.
951
+ """
952
+ if alert_threshold is not None:
953
+ pulumi.set(__self__, "alert_threshold", alert_threshold)
954
+ if enabled is not None:
955
+ pulumi.set(__self__, "enabled", enabled)
956
+
957
+ @property
958
+ @pulumi.getter(name="alertThreshold")
959
+ def alert_threshold(self) -> Optional[int]:
960
+ """
961
+ At what moment in time to start alerting on SSL certificates. Possible values `3`, `7`, `14`, `30`. (Default `3`).
962
+ """
963
+ return pulumi.get(self, "alert_threshold")
964
+
965
+ @property
966
+ @pulumi.getter
967
+ def enabled(self) -> Optional[bool]:
968
+ """
969
+ Determines if alert notifications should be sent for expiring SSL certificates.
970
+ """
971
+ return pulumi.get(self, "enabled")
972
+
973
+
974
+ @pulumi.output_type
975
+ class CheckGroupAlertSettingsTimeBasedEscalation(dict):
976
+ @staticmethod
977
+ def __key_warning(key: str):
978
+ suggest = None
979
+ if key == "minutesFailingThreshold":
980
+ suggest = "minutes_failing_threshold"
981
+
982
+ if suggest:
983
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
984
+
985
+ def __getitem__(self, key: str) -> Any:
986
+ CheckGroupAlertSettingsTimeBasedEscalation.__key_warning(key)
987
+ return super().__getitem__(key)
988
+
989
+ def get(self, key: str, default = None) -> Any:
990
+ CheckGroupAlertSettingsTimeBasedEscalation.__key_warning(key)
991
+ return super().get(key, default)
992
+
993
+ def __init__(__self__, *,
994
+ minutes_failing_threshold: Optional[int] = None):
995
+ """
996
+ :param int minutes_failing_threshold: After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
997
+ """
998
+ if minutes_failing_threshold is not None:
999
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
1000
+
1001
+ @property
1002
+ @pulumi.getter(name="minutesFailingThreshold")
1003
+ def minutes_failing_threshold(self) -> Optional[int]:
1004
+ """
1005
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
1006
+ """
1007
+ return pulumi.get(self, "minutes_failing_threshold")
1008
+
1009
+
1010
+ @pulumi.output_type
1011
+ class CheckGroupApiCheckDefaults(dict):
1012
+ @staticmethod
1013
+ def __key_warning(key: str):
1014
+ suggest = None
1015
+ if key == "basicAuth":
1016
+ suggest = "basic_auth"
1017
+ elif key == "queryParameters":
1018
+ suggest = "query_parameters"
1019
+
1020
+ if suggest:
1021
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupApiCheckDefaults. Access the value via the '{suggest}' property getter instead.")
1022
+
1023
+ def __getitem__(self, key: str) -> Any:
1024
+ CheckGroupApiCheckDefaults.__key_warning(key)
1025
+ return super().__getitem__(key)
1026
+
1027
+ def get(self, key: str, default = None) -> Any:
1028
+ CheckGroupApiCheckDefaults.__key_warning(key)
1029
+ return super().get(key, default)
1030
+
1031
+ def __init__(__self__, *,
1032
+ assertions: Optional[Sequence['outputs.CheckGroupApiCheckDefaultsAssertion']] = None,
1033
+ basic_auth: Optional['outputs.CheckGroupApiCheckDefaultsBasicAuth'] = None,
1034
+ headers: Optional[Mapping[str, str]] = None,
1035
+ query_parameters: Optional[Mapping[str, str]] = None,
1036
+ url: Optional[str] = None):
1037
+ """
1038
+ :param str url: The base url for this group which you can reference with the `GROUP_BASE_URL` variable in all group checks.
1039
+ """
1040
+ if assertions is not None:
1041
+ pulumi.set(__self__, "assertions", assertions)
1042
+ if basic_auth is not None:
1043
+ pulumi.set(__self__, "basic_auth", basic_auth)
1044
+ if headers is not None:
1045
+ pulumi.set(__self__, "headers", headers)
1046
+ if query_parameters is not None:
1047
+ pulumi.set(__self__, "query_parameters", query_parameters)
1048
+ if url is None:
1049
+ url = ''
1050
+ if url is not None:
1051
+ pulumi.set(__self__, "url", url)
1052
+
1053
+ @property
1054
+ @pulumi.getter
1055
+ def assertions(self) -> Optional[Sequence['outputs.CheckGroupApiCheckDefaultsAssertion']]:
1056
+ return pulumi.get(self, "assertions")
1057
+
1058
+ @property
1059
+ @pulumi.getter(name="basicAuth")
1060
+ def basic_auth(self) -> Optional['outputs.CheckGroupApiCheckDefaultsBasicAuth']:
1061
+ return pulumi.get(self, "basic_auth")
1062
+
1063
+ @property
1064
+ @pulumi.getter
1065
+ def headers(self) -> Optional[Mapping[str, str]]:
1066
+ return pulumi.get(self, "headers")
1067
+
1068
+ @property
1069
+ @pulumi.getter(name="queryParameters")
1070
+ def query_parameters(self) -> Optional[Mapping[str, str]]:
1071
+ return pulumi.get(self, "query_parameters")
1072
+
1073
+ @property
1074
+ @pulumi.getter
1075
+ def url(self) -> Optional[str]:
1076
+ """
1077
+ The base url for this group which you can reference with the `GROUP_BASE_URL` variable in all group checks.
1078
+ """
1079
+ return pulumi.get(self, "url")
1080
+
1081
+
1082
+ @pulumi.output_type
1083
+ class CheckGroupApiCheckDefaultsAssertion(dict):
1084
+ def __init__(__self__, *,
1085
+ comparison: str,
1086
+ source: str,
1087
+ target: str,
1088
+ property: Optional[str] = None):
1089
+ """
1090
+ :param str comparison: The type of comparison to be executed between expected and actual value of the assertion. Possible values `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
1091
+ :param str source: The source of the asserted value. Possible values `STATUS_CODE`, `JSON_BODY`, `HEADERS`, `TEXT_BODY`, and `RESPONSE_TIME`.
1092
+ """
1093
+ pulumi.set(__self__, "comparison", comparison)
1094
+ pulumi.set(__self__, "source", source)
1095
+ pulumi.set(__self__, "target", target)
1096
+ if property is not None:
1097
+ pulumi.set(__self__, "property", property)
1098
+
1099
+ @property
1100
+ @pulumi.getter
1101
+ def comparison(self) -> str:
1102
+ """
1103
+ The type of comparison to be executed between expected and actual value of the assertion. Possible values `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
1104
+ """
1105
+ return pulumi.get(self, "comparison")
1106
+
1107
+ @property
1108
+ @pulumi.getter
1109
+ def source(self) -> str:
1110
+ """
1111
+ The source of the asserted value. Possible values `STATUS_CODE`, `JSON_BODY`, `HEADERS`, `TEXT_BODY`, and `RESPONSE_TIME`.
1112
+ """
1113
+ return pulumi.get(self, "source")
1114
+
1115
+ @property
1116
+ @pulumi.getter
1117
+ def target(self) -> str:
1118
+ return pulumi.get(self, "target")
1119
+
1120
+ @property
1121
+ @pulumi.getter
1122
+ def property(self) -> Optional[str]:
1123
+ return pulumi.get(self, "property")
1124
+
1125
+
1126
+ @pulumi.output_type
1127
+ class CheckGroupApiCheckDefaultsBasicAuth(dict):
1128
+ def __init__(__self__, *,
1129
+ password: str,
1130
+ username: str):
1131
+ pulumi.set(__self__, "password", password)
1132
+ pulumi.set(__self__, "username", username)
1133
+
1134
+ @property
1135
+ @pulumi.getter
1136
+ def password(self) -> str:
1137
+ return pulumi.get(self, "password")
1138
+
1139
+ @property
1140
+ @pulumi.getter
1141
+ def username(self) -> str:
1142
+ return pulumi.get(self, "username")
1143
+
1144
+
1145
+ @pulumi.output_type
1146
+ class CheckGroupEnvironmentVariable(dict):
1147
+ def __init__(__self__, *,
1148
+ key: str,
1149
+ value: str,
1150
+ locked: Optional[bool] = None,
1151
+ secret: Optional[bool] = None):
1152
+ pulumi.set(__self__, "key", key)
1153
+ pulumi.set(__self__, "value", value)
1154
+ if locked is not None:
1155
+ pulumi.set(__self__, "locked", locked)
1156
+ if secret is not None:
1157
+ pulumi.set(__self__, "secret", secret)
1158
+
1159
+ @property
1160
+ @pulumi.getter
1161
+ def key(self) -> str:
1162
+ return pulumi.get(self, "key")
1163
+
1164
+ @property
1165
+ @pulumi.getter
1166
+ def value(self) -> str:
1167
+ return pulumi.get(self, "value")
1168
+
1169
+ @property
1170
+ @pulumi.getter
1171
+ def locked(self) -> Optional[bool]:
1172
+ return pulumi.get(self, "locked")
1173
+
1174
+ @property
1175
+ @pulumi.getter
1176
+ def secret(self) -> Optional[bool]:
1177
+ return pulumi.get(self, "secret")
1178
+
1179
+
1180
+ @pulumi.output_type
1181
+ class CheckGroupRetryStrategy(dict):
1182
+ @staticmethod
1183
+ def __key_warning(key: str):
1184
+ suggest = None
1185
+ if key == "baseBackoffSeconds":
1186
+ suggest = "base_backoff_seconds"
1187
+ elif key == "maxDurationSeconds":
1188
+ suggest = "max_duration_seconds"
1189
+ elif key == "maxRetries":
1190
+ suggest = "max_retries"
1191
+ elif key == "sameRegion":
1192
+ suggest = "same_region"
1193
+
1194
+ if suggest:
1195
+ pulumi.log.warn(f"Key '{key}' not found in CheckGroupRetryStrategy. Access the value via the '{suggest}' property getter instead.")
1196
+
1197
+ def __getitem__(self, key: str) -> Any:
1198
+ CheckGroupRetryStrategy.__key_warning(key)
1199
+ return super().__getitem__(key)
1200
+
1201
+ def get(self, key: str, default = None) -> Any:
1202
+ CheckGroupRetryStrategy.__key_warning(key)
1203
+ return super().get(key, default)
1204
+
1205
+ def __init__(__self__, *,
1206
+ type: str,
1207
+ base_backoff_seconds: Optional[int] = None,
1208
+ max_duration_seconds: Optional[int] = None,
1209
+ max_retries: Optional[int] = None,
1210
+ same_region: Optional[bool] = None):
1211
+ """
1212
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
1213
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
1214
+ :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
1215
+ :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
1216
+ :param bool same_region: Whether retries should be run in the same region as the initial check run.
1217
+ """
1218
+ pulumi.set(__self__, "type", type)
1219
+ if base_backoff_seconds is not None:
1220
+ pulumi.set(__self__, "base_backoff_seconds", base_backoff_seconds)
1221
+ if max_duration_seconds is not None:
1222
+ pulumi.set(__self__, "max_duration_seconds", max_duration_seconds)
1223
+ if max_retries is not None:
1224
+ pulumi.set(__self__, "max_retries", max_retries)
1225
+ if same_region is not None:
1226
+ pulumi.set(__self__, "same_region", same_region)
1227
+
1228
+ @property
1229
+ @pulumi.getter
1230
+ def type(self) -> str:
1231
+ """
1232
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
1233
+ """
1234
+ return pulumi.get(self, "type")
1235
+
1236
+ @property
1237
+ @pulumi.getter(name="baseBackoffSeconds")
1238
+ def base_backoff_seconds(self) -> Optional[int]:
1239
+ """
1240
+ The number of seconds to wait before the first retry attempt.
1241
+ """
1242
+ return pulumi.get(self, "base_backoff_seconds")
1243
+
1244
+ @property
1245
+ @pulumi.getter(name="maxDurationSeconds")
1246
+ def max_duration_seconds(self) -> Optional[int]:
1247
+ """
1248
+ The total amount of time to continue retrying the check (maximum 600 seconds).
1249
+ """
1250
+ return pulumi.get(self, "max_duration_seconds")
1251
+
1252
+ @property
1253
+ @pulumi.getter(name="maxRetries")
1254
+ def max_retries(self) -> Optional[int]:
1255
+ """
1256
+ The maximum number of times to retry the check. Value must be between 1 and 10.
1257
+ """
1258
+ return pulumi.get(self, "max_retries")
1259
+
1260
+ @property
1261
+ @pulumi.getter(name="sameRegion")
1262
+ def same_region(self) -> Optional[bool]:
1263
+ """
1264
+ Whether retries should be run in the same region as the initial check run.
1265
+ """
1266
+ return pulumi.get(self, "same_region")
1267
+
1268
+
1269
+ @pulumi.output_type
1270
+ class CheckRequest(dict):
1271
+ @staticmethod
1272
+ def __key_warning(key: str):
1273
+ suggest = None
1274
+ if key == "basicAuth":
1275
+ suggest = "basic_auth"
1276
+ elif key == "bodyType":
1277
+ suggest = "body_type"
1278
+ elif key == "followRedirects":
1279
+ suggest = "follow_redirects"
1280
+ elif key == "ipFamily":
1281
+ suggest = "ip_family"
1282
+ elif key == "queryParameters":
1283
+ suggest = "query_parameters"
1284
+ elif key == "skipSsl":
1285
+ suggest = "skip_ssl"
1286
+
1287
+ if suggest:
1288
+ pulumi.log.warn(f"Key '{key}' not found in CheckRequest. Access the value via the '{suggest}' property getter instead.")
1289
+
1290
+ def __getitem__(self, key: str) -> Any:
1291
+ CheckRequest.__key_warning(key)
1292
+ return super().__getitem__(key)
1293
+
1294
+ def get(self, key: str, default = None) -> Any:
1295
+ CheckRequest.__key_warning(key)
1296
+ return super().get(key, default)
1297
+
1298
+ def __init__(__self__, *,
1299
+ url: str,
1300
+ assertions: Optional[Sequence['outputs.CheckRequestAssertion']] = None,
1301
+ basic_auth: Optional['outputs.CheckRequestBasicAuth'] = None,
1302
+ body: Optional[str] = None,
1303
+ body_type: Optional[str] = None,
1304
+ follow_redirects: Optional[bool] = None,
1305
+ headers: Optional[Mapping[str, str]] = None,
1306
+ ip_family: Optional[str] = None,
1307
+ method: Optional[str] = None,
1308
+ query_parameters: Optional[Mapping[str, str]] = None,
1309
+ skip_ssl: Optional[bool] = None):
1310
+ """
1311
+ :param Sequence['CheckRequestAssertionArgs'] assertions: A request can have multiple assertions.
1312
+ :param 'CheckRequestBasicAuthArgs' basic_auth: Set up HTTP basic authentication (username & password).
1313
+ :param str body: The body of the request.
1314
+ :param str body_type: The `Content-Type` header of the request. Possible values `NONE`, `JSON`, `FORM`, `RAW`, and `GRAPHQL`.
1315
+ :param str ip_family: IP Family to be used when executing the api check. The value can be either IPv4 or IPv6.
1316
+ :param str method: The HTTP method to use for this API check. Possible values are `GET`, `POST`, `PUT`, `HEAD`, `DELETE`, `PATCH`. (Default `GET`).
1317
+ """
1318
+ pulumi.set(__self__, "url", url)
1319
+ if assertions is not None:
1320
+ pulumi.set(__self__, "assertions", assertions)
1321
+ if basic_auth is not None:
1322
+ pulumi.set(__self__, "basic_auth", basic_auth)
1323
+ if body is not None:
1324
+ pulumi.set(__self__, "body", body)
1325
+ if body_type is not None:
1326
+ pulumi.set(__self__, "body_type", body_type)
1327
+ if follow_redirects is not None:
1328
+ pulumi.set(__self__, "follow_redirects", follow_redirects)
1329
+ if headers is not None:
1330
+ pulumi.set(__self__, "headers", headers)
1331
+ if ip_family is not None:
1332
+ pulumi.set(__self__, "ip_family", ip_family)
1333
+ if method is not None:
1334
+ pulumi.set(__self__, "method", method)
1335
+ if query_parameters is not None:
1336
+ pulumi.set(__self__, "query_parameters", query_parameters)
1337
+ if skip_ssl is not None:
1338
+ pulumi.set(__self__, "skip_ssl", skip_ssl)
1339
+
1340
+ @property
1341
+ @pulumi.getter
1342
+ def url(self) -> str:
1343
+ return pulumi.get(self, "url")
1344
+
1345
+ @property
1346
+ @pulumi.getter
1347
+ def assertions(self) -> Optional[Sequence['outputs.CheckRequestAssertion']]:
1348
+ """
1349
+ A request can have multiple assertions.
1350
+ """
1351
+ return pulumi.get(self, "assertions")
1352
+
1353
+ @property
1354
+ @pulumi.getter(name="basicAuth")
1355
+ def basic_auth(self) -> Optional['outputs.CheckRequestBasicAuth']:
1356
+ """
1357
+ Set up HTTP basic authentication (username & password).
1358
+ """
1359
+ return pulumi.get(self, "basic_auth")
1360
+
1361
+ @property
1362
+ @pulumi.getter
1363
+ def body(self) -> Optional[str]:
1364
+ """
1365
+ The body of the request.
1366
+ """
1367
+ return pulumi.get(self, "body")
1368
+
1369
+ @property
1370
+ @pulumi.getter(name="bodyType")
1371
+ def body_type(self) -> Optional[str]:
1372
+ """
1373
+ The `Content-Type` header of the request. Possible values `NONE`, `JSON`, `FORM`, `RAW`, and `GRAPHQL`.
1374
+ """
1375
+ return pulumi.get(self, "body_type")
1376
+
1377
+ @property
1378
+ @pulumi.getter(name="followRedirects")
1379
+ def follow_redirects(self) -> Optional[bool]:
1380
+ return pulumi.get(self, "follow_redirects")
1381
+
1382
+ @property
1383
+ @pulumi.getter
1384
+ def headers(self) -> Optional[Mapping[str, str]]:
1385
+ return pulumi.get(self, "headers")
1386
+
1387
+ @property
1388
+ @pulumi.getter(name="ipFamily")
1389
+ def ip_family(self) -> Optional[str]:
1390
+ """
1391
+ IP Family to be used when executing the api check. The value can be either IPv4 or IPv6.
1392
+ """
1393
+ return pulumi.get(self, "ip_family")
1394
+
1395
+ @property
1396
+ @pulumi.getter
1397
+ def method(self) -> Optional[str]:
1398
+ """
1399
+ The HTTP method to use for this API check. Possible values are `GET`, `POST`, `PUT`, `HEAD`, `DELETE`, `PATCH`. (Default `GET`).
1400
+ """
1401
+ return pulumi.get(self, "method")
1402
+
1403
+ @property
1404
+ @pulumi.getter(name="queryParameters")
1405
+ def query_parameters(self) -> Optional[Mapping[str, str]]:
1406
+ return pulumi.get(self, "query_parameters")
1407
+
1408
+ @property
1409
+ @pulumi.getter(name="skipSsl")
1410
+ def skip_ssl(self) -> Optional[bool]:
1411
+ return pulumi.get(self, "skip_ssl")
1412
+
1413
+
1414
+ @pulumi.output_type
1415
+ class CheckRequestAssertion(dict):
1416
+ def __init__(__self__, *,
1417
+ comparison: str,
1418
+ source: str,
1419
+ property: Optional[str] = None,
1420
+ target: Optional[str] = None):
1421
+ """
1422
+ :param str comparison: The type of comparison to be executed between expected and actual value of the assertion. Possible values `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
1423
+ :param str source: The source of the asserted value. Possible values `STATUS_CODE`, `JSON_BODY`, `HEADERS`, `TEXT_BODY`, and `RESPONSE_TIME`.
1424
+ """
1425
+ pulumi.set(__self__, "comparison", comparison)
1426
+ pulumi.set(__self__, "source", source)
1427
+ if property is not None:
1428
+ pulumi.set(__self__, "property", property)
1429
+ if target is not None:
1430
+ pulumi.set(__self__, "target", target)
1431
+
1432
+ @property
1433
+ @pulumi.getter
1434
+ def comparison(self) -> str:
1435
+ """
1436
+ The type of comparison to be executed between expected and actual value of the assertion. Possible values `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
1437
+ """
1438
+ return pulumi.get(self, "comparison")
1439
+
1440
+ @property
1441
+ @pulumi.getter
1442
+ def source(self) -> str:
1443
+ """
1444
+ The source of the asserted value. Possible values `STATUS_CODE`, `JSON_BODY`, `HEADERS`, `TEXT_BODY`, and `RESPONSE_TIME`.
1445
+ """
1446
+ return pulumi.get(self, "source")
1447
+
1448
+ @property
1449
+ @pulumi.getter
1450
+ def target(self) -> Optional[str]:
1451
+ return pulumi.get(self, "target")
1452
+
1453
+ @property
1454
+ @pulumi.getter
1455
+ def property(self) -> Optional[str]:
1456
+ return pulumi.get(self, "property")
1457
+
1458
+
1459
+ @pulumi.output_type
1460
+ class CheckRequestBasicAuth(dict):
1461
+ def __init__(__self__, *,
1462
+ password: str,
1463
+ username: str):
1464
+ pulumi.set(__self__, "password", password)
1465
+ pulumi.set(__self__, "username", username)
1466
+
1467
+ @property
1468
+ @pulumi.getter
1469
+ def password(self) -> str:
1470
+ return pulumi.get(self, "password")
1471
+
1472
+ @property
1473
+ @pulumi.getter
1474
+ def username(self) -> str:
1475
+ return pulumi.get(self, "username")
1476
+
1477
+
1478
+ @pulumi.output_type
1479
+ class CheckRetryStrategy(dict):
1480
+ @staticmethod
1481
+ def __key_warning(key: str):
1482
+ suggest = None
1483
+ if key == "baseBackoffSeconds":
1484
+ suggest = "base_backoff_seconds"
1485
+ elif key == "maxDurationSeconds":
1486
+ suggest = "max_duration_seconds"
1487
+ elif key == "maxRetries":
1488
+ suggest = "max_retries"
1489
+ elif key == "sameRegion":
1490
+ suggest = "same_region"
1491
+
1492
+ if suggest:
1493
+ pulumi.log.warn(f"Key '{key}' not found in CheckRetryStrategy. Access the value via the '{suggest}' property getter instead.")
1494
+
1495
+ def __getitem__(self, key: str) -> Any:
1496
+ CheckRetryStrategy.__key_warning(key)
1497
+ return super().__getitem__(key)
1498
+
1499
+ def get(self, key: str, default = None) -> Any:
1500
+ CheckRetryStrategy.__key_warning(key)
1501
+ return super().get(key, default)
1502
+
1503
+ def __init__(__self__, *,
1504
+ type: str,
1505
+ base_backoff_seconds: Optional[int] = None,
1506
+ max_duration_seconds: Optional[int] = None,
1507
+ max_retries: Optional[int] = None,
1508
+ same_region: Optional[bool] = None):
1509
+ """
1510
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
1511
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
1512
+ :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
1513
+ :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
1514
+ :param bool same_region: Whether retries should be run in the same region as the initial check run.
1515
+ """
1516
+ pulumi.set(__self__, "type", type)
1517
+ if base_backoff_seconds is not None:
1518
+ pulumi.set(__self__, "base_backoff_seconds", base_backoff_seconds)
1519
+ if max_duration_seconds is not None:
1520
+ pulumi.set(__self__, "max_duration_seconds", max_duration_seconds)
1521
+ if max_retries is not None:
1522
+ pulumi.set(__self__, "max_retries", max_retries)
1523
+ if same_region is not None:
1524
+ pulumi.set(__self__, "same_region", same_region)
1525
+
1526
+ @property
1527
+ @pulumi.getter
1528
+ def type(self) -> str:
1529
+ """
1530
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
1531
+ """
1532
+ return pulumi.get(self, "type")
1533
+
1534
+ @property
1535
+ @pulumi.getter(name="baseBackoffSeconds")
1536
+ def base_backoff_seconds(self) -> Optional[int]:
1537
+ """
1538
+ The number of seconds to wait before the first retry attempt.
1539
+ """
1540
+ return pulumi.get(self, "base_backoff_seconds")
1541
+
1542
+ @property
1543
+ @pulumi.getter(name="maxDurationSeconds")
1544
+ def max_duration_seconds(self) -> Optional[int]:
1545
+ """
1546
+ The total amount of time to continue retrying the check (maximum 600 seconds).
1547
+ """
1548
+ return pulumi.get(self, "max_duration_seconds")
1549
+
1550
+ @property
1551
+ @pulumi.getter(name="maxRetries")
1552
+ def max_retries(self) -> Optional[int]:
1553
+ """
1554
+ The maximum number of times to retry the check. Value must be between 1 and 10.
1555
+ """
1556
+ return pulumi.get(self, "max_retries")
1557
+
1558
+ @property
1559
+ @pulumi.getter(name="sameRegion")
1560
+ def same_region(self) -> Optional[bool]:
1561
+ """
1562
+ Whether retries should be run in the same region as the initial check run.
1563
+ """
1564
+ return pulumi.get(self, "same_region")
1565
+
1566
+
1567
+ @pulumi.output_type
1568
+ class HeartbeatCheckAlertChannelSubscription(dict):
1569
+ @staticmethod
1570
+ def __key_warning(key: str):
1571
+ suggest = None
1572
+ if key == "channelId":
1573
+ suggest = "channel_id"
1574
+
1575
+ if suggest:
1576
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
1577
+
1578
+ def __getitem__(self, key: str) -> Any:
1579
+ HeartbeatCheckAlertChannelSubscription.__key_warning(key)
1580
+ return super().__getitem__(key)
1581
+
1582
+ def get(self, key: str, default = None) -> Any:
1583
+ HeartbeatCheckAlertChannelSubscription.__key_warning(key)
1584
+ return super().get(key, default)
1585
+
1586
+ def __init__(__self__, *,
1587
+ activated: bool,
1588
+ channel_id: int):
1589
+ pulumi.set(__self__, "activated", activated)
1590
+ pulumi.set(__self__, "channel_id", channel_id)
1591
+
1592
+ @property
1593
+ @pulumi.getter
1594
+ def activated(self) -> bool:
1595
+ return pulumi.get(self, "activated")
1596
+
1597
+ @property
1598
+ @pulumi.getter(name="channelId")
1599
+ def channel_id(self) -> int:
1600
+ return pulumi.get(self, "channel_id")
1601
+
1602
+
1603
+ @pulumi.output_type
1604
+ class HeartbeatCheckAlertSettings(dict):
1605
+ @staticmethod
1606
+ def __key_warning(key: str):
1607
+ suggest = None
1608
+ if key == "escalationType":
1609
+ suggest = "escalation_type"
1610
+ elif key == "parallelRunFailureThresholds":
1611
+ suggest = "parallel_run_failure_thresholds"
1612
+ elif key == "runBasedEscalations":
1613
+ suggest = "run_based_escalations"
1614
+ elif key == "sslCertificates":
1615
+ suggest = "ssl_certificates"
1616
+ elif key == "timeBasedEscalations":
1617
+ suggest = "time_based_escalations"
1618
+
1619
+ if suggest:
1620
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckAlertSettings. Access the value via the '{suggest}' property getter instead.")
1621
+
1622
+ def __getitem__(self, key: str) -> Any:
1623
+ HeartbeatCheckAlertSettings.__key_warning(key)
1624
+ return super().__getitem__(key)
1625
+
1626
+ def get(self, key: str, default = None) -> Any:
1627
+ HeartbeatCheckAlertSettings.__key_warning(key)
1628
+ return super().get(key, default)
1629
+
1630
+ def __init__(__self__, *,
1631
+ escalation_type: Optional[str] = None,
1632
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.HeartbeatCheckAlertSettingsParallelRunFailureThreshold']] = None,
1633
+ reminders: Optional[Sequence['outputs.HeartbeatCheckAlertSettingsReminder']] = None,
1634
+ run_based_escalations: Optional[Sequence['outputs.HeartbeatCheckAlertSettingsRunBasedEscalation']] = None,
1635
+ ssl_certificates: Optional[Sequence['outputs.HeartbeatCheckAlertSettingsSslCertificate']] = None,
1636
+ time_based_escalations: Optional[Sequence['outputs.HeartbeatCheckAlertSettingsTimeBasedEscalation']] = None):
1637
+ """
1638
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
1639
+ """
1640
+ if escalation_type is not None:
1641
+ pulumi.set(__self__, "escalation_type", escalation_type)
1642
+ if parallel_run_failure_thresholds is not None:
1643
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
1644
+ if reminders is not None:
1645
+ pulumi.set(__self__, "reminders", reminders)
1646
+ if run_based_escalations is not None:
1647
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
1648
+ if ssl_certificates is not None:
1649
+ pulumi.set(__self__, "ssl_certificates", ssl_certificates)
1650
+ if time_based_escalations is not None:
1651
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
1652
+
1653
+ @property
1654
+ @pulumi.getter(name="escalationType")
1655
+ def escalation_type(self) -> Optional[str]:
1656
+ """
1657
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
1658
+ """
1659
+ return pulumi.get(self, "escalation_type")
1660
+
1661
+ @property
1662
+ @pulumi.getter(name="parallelRunFailureThresholds")
1663
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.HeartbeatCheckAlertSettingsParallelRunFailureThreshold']]:
1664
+ return pulumi.get(self, "parallel_run_failure_thresholds")
1665
+
1666
+ @property
1667
+ @pulumi.getter
1668
+ def reminders(self) -> Optional[Sequence['outputs.HeartbeatCheckAlertSettingsReminder']]:
1669
+ return pulumi.get(self, "reminders")
1670
+
1671
+ @property
1672
+ @pulumi.getter(name="runBasedEscalations")
1673
+ def run_based_escalations(self) -> Optional[Sequence['outputs.HeartbeatCheckAlertSettingsRunBasedEscalation']]:
1674
+ return pulumi.get(self, "run_based_escalations")
1675
+
1676
+ @property
1677
+ @pulumi.getter(name="sslCertificates")
1678
+ @_utilities.deprecated("""This property is deprecated and it's ignored by the Checkly Public API. It will be removed in a future version.""")
1679
+ def ssl_certificates(self) -> Optional[Sequence['outputs.HeartbeatCheckAlertSettingsSslCertificate']]:
1680
+ return pulumi.get(self, "ssl_certificates")
1681
+
1682
+ @property
1683
+ @pulumi.getter(name="timeBasedEscalations")
1684
+ def time_based_escalations(self) -> Optional[Sequence['outputs.HeartbeatCheckAlertSettingsTimeBasedEscalation']]:
1685
+ return pulumi.get(self, "time_based_escalations")
1686
+
1687
+
1688
+ @pulumi.output_type
1689
+ class HeartbeatCheckAlertSettingsParallelRunFailureThreshold(dict):
1690
+ def __init__(__self__, *,
1691
+ enabled: Optional[bool] = None,
1692
+ percentage: Optional[int] = None):
1693
+ """
1694
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
1695
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
1696
+ """
1697
+ if enabled is not None:
1698
+ pulumi.set(__self__, "enabled", enabled)
1699
+ if percentage is not None:
1700
+ pulumi.set(__self__, "percentage", percentage)
1701
+
1702
+ @property
1703
+ @pulumi.getter
1704
+ def enabled(self) -> Optional[bool]:
1705
+ """
1706
+ Applicable only for checks scheduled in parallel in multiple locations.
1707
+ """
1708
+ return pulumi.get(self, "enabled")
1709
+
1710
+ @property
1711
+ @pulumi.getter
1712
+ def percentage(self) -> Optional[int]:
1713
+ """
1714
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
1715
+ """
1716
+ return pulumi.get(self, "percentage")
1717
+
1718
+
1719
+ @pulumi.output_type
1720
+ class HeartbeatCheckAlertSettingsReminder(dict):
1721
+ def __init__(__self__, *,
1722
+ amount: Optional[int] = None,
1723
+ interval: Optional[int] = None):
1724
+ """
1725
+ :param int amount: How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
1726
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
1727
+ """
1728
+ if amount is not None:
1729
+ pulumi.set(__self__, "amount", amount)
1730
+ if interval is not None:
1731
+ pulumi.set(__self__, "interval", interval)
1732
+
1733
+ @property
1734
+ @pulumi.getter
1735
+ def amount(self) -> Optional[int]:
1736
+ """
1737
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
1738
+ """
1739
+ return pulumi.get(self, "amount")
1740
+
1741
+ @property
1742
+ @pulumi.getter
1743
+ def interval(self) -> Optional[int]:
1744
+ """
1745
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
1746
+ """
1747
+ return pulumi.get(self, "interval")
1748
+
1749
+
1750
+ @pulumi.output_type
1751
+ class HeartbeatCheckAlertSettingsRunBasedEscalation(dict):
1752
+ @staticmethod
1753
+ def __key_warning(key: str):
1754
+ suggest = None
1755
+ if key == "failedRunThreshold":
1756
+ suggest = "failed_run_threshold"
1757
+
1758
+ if suggest:
1759
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
1760
+
1761
+ def __getitem__(self, key: str) -> Any:
1762
+ HeartbeatCheckAlertSettingsRunBasedEscalation.__key_warning(key)
1763
+ return super().__getitem__(key)
1764
+
1765
+ def get(self, key: str, default = None) -> Any:
1766
+ HeartbeatCheckAlertSettingsRunBasedEscalation.__key_warning(key)
1767
+ return super().get(key, default)
1768
+
1769
+ def __init__(__self__, *,
1770
+ failed_run_threshold: Optional[int] = None):
1771
+ """
1772
+ :param int failed_run_threshold: After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
1773
+ """
1774
+ if failed_run_threshold is not None:
1775
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
1776
+
1777
+ @property
1778
+ @pulumi.getter(name="failedRunThreshold")
1779
+ def failed_run_threshold(self) -> Optional[int]:
1780
+ """
1781
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
1782
+ """
1783
+ return pulumi.get(self, "failed_run_threshold")
1784
+
1785
+
1786
+ @pulumi.output_type
1787
+ class HeartbeatCheckAlertSettingsSslCertificate(dict):
1788
+ @staticmethod
1789
+ def __key_warning(key: str):
1790
+ suggest = None
1791
+ if key == "alertThreshold":
1792
+ suggest = "alert_threshold"
1793
+
1794
+ if suggest:
1795
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckAlertSettingsSslCertificate. Access the value via the '{suggest}' property getter instead.")
1796
+
1797
+ def __getitem__(self, key: str) -> Any:
1798
+ HeartbeatCheckAlertSettingsSslCertificate.__key_warning(key)
1799
+ return super().__getitem__(key)
1800
+
1801
+ def get(self, key: str, default = None) -> Any:
1802
+ HeartbeatCheckAlertSettingsSslCertificate.__key_warning(key)
1803
+ return super().get(key, default)
1804
+
1805
+ def __init__(__self__, *,
1806
+ alert_threshold: Optional[int] = None,
1807
+ enabled: Optional[bool] = None):
1808
+ """
1809
+ :param int alert_threshold: How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
1810
+ :param bool enabled: Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
1811
+ """
1812
+ if alert_threshold is not None:
1813
+ pulumi.set(__self__, "alert_threshold", alert_threshold)
1814
+ if enabled is not None:
1815
+ pulumi.set(__self__, "enabled", enabled)
1816
+
1817
+ @property
1818
+ @pulumi.getter(name="alertThreshold")
1819
+ def alert_threshold(self) -> Optional[int]:
1820
+ """
1821
+ How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
1822
+ """
1823
+ return pulumi.get(self, "alert_threshold")
1824
+
1825
+ @property
1826
+ @pulumi.getter
1827
+ def enabled(self) -> Optional[bool]:
1828
+ """
1829
+ Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
1830
+ """
1831
+ return pulumi.get(self, "enabled")
1832
+
1833
+
1834
+ @pulumi.output_type
1835
+ class HeartbeatCheckAlertSettingsTimeBasedEscalation(dict):
1836
+ @staticmethod
1837
+ def __key_warning(key: str):
1838
+ suggest = None
1839
+ if key == "minutesFailingThreshold":
1840
+ suggest = "minutes_failing_threshold"
1841
+
1842
+ if suggest:
1843
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
1844
+
1845
+ def __getitem__(self, key: str) -> Any:
1846
+ HeartbeatCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
1847
+ return super().__getitem__(key)
1848
+
1849
+ def get(self, key: str, default = None) -> Any:
1850
+ HeartbeatCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
1851
+ return super().get(key, default)
1852
+
1853
+ def __init__(__self__, *,
1854
+ minutes_failing_threshold: Optional[int] = None):
1855
+ """
1856
+ :param int minutes_failing_threshold: After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
1857
+ """
1858
+ if minutes_failing_threshold is not None:
1859
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
1860
+
1861
+ @property
1862
+ @pulumi.getter(name="minutesFailingThreshold")
1863
+ def minutes_failing_threshold(self) -> Optional[int]:
1864
+ """
1865
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
1866
+ """
1867
+ return pulumi.get(self, "minutes_failing_threshold")
1868
+
1869
+
1870
+ @pulumi.output_type
1871
+ class HeartbeatCheckHeartbeat(dict):
1872
+ @staticmethod
1873
+ def __key_warning(key: str):
1874
+ suggest = None
1875
+ if key == "graceUnit":
1876
+ suggest = "grace_unit"
1877
+ elif key == "periodUnit":
1878
+ suggest = "period_unit"
1879
+ elif key == "pingToken":
1880
+ suggest = "ping_token"
1881
+
1882
+ if suggest:
1883
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckHeartbeat. Access the value via the '{suggest}' property getter instead.")
1884
+
1885
+ def __getitem__(self, key: str) -> Any:
1886
+ HeartbeatCheckHeartbeat.__key_warning(key)
1887
+ return super().__getitem__(key)
1888
+
1889
+ def get(self, key: str, default = None) -> Any:
1890
+ HeartbeatCheckHeartbeat.__key_warning(key)
1891
+ return super().get(key, default)
1892
+
1893
+ def __init__(__self__, *,
1894
+ grace: int,
1895
+ grace_unit: str,
1896
+ period: int,
1897
+ period_unit: str,
1898
+ ping_token: Optional[str] = None):
1899
+ """
1900
+ :param int grace: How long Checkly should wait before triggering any alerts when a ping does not arrive within the set period.
1901
+ :param str grace_unit: Possible values `seconds`, `minutes`, `hours` and `days`.
1902
+ :param int period: How often you expect a ping to the ping URL.
1903
+ :param str period_unit: Possible values `seconds`, `minutes`, `hours` and `days`.
1904
+ :param str ping_token: Custom token to generate your ping URL. Checkly will expect a ping to `https://ping.checklyhq.com/[PING_TOKEN]`.
1905
+ """
1906
+ pulumi.set(__self__, "grace", grace)
1907
+ pulumi.set(__self__, "grace_unit", grace_unit)
1908
+ pulumi.set(__self__, "period", period)
1909
+ pulumi.set(__self__, "period_unit", period_unit)
1910
+ if ping_token is not None:
1911
+ pulumi.set(__self__, "ping_token", ping_token)
1912
+
1913
+ @property
1914
+ @pulumi.getter
1915
+ def grace(self) -> int:
1916
+ """
1917
+ How long Checkly should wait before triggering any alerts when a ping does not arrive within the set period.
1918
+ """
1919
+ return pulumi.get(self, "grace")
1920
+
1921
+ @property
1922
+ @pulumi.getter(name="graceUnit")
1923
+ def grace_unit(self) -> str:
1924
+ """
1925
+ Possible values `seconds`, `minutes`, `hours` and `days`.
1926
+ """
1927
+ return pulumi.get(self, "grace_unit")
1928
+
1929
+ @property
1930
+ @pulumi.getter
1931
+ def period(self) -> int:
1932
+ """
1933
+ How often you expect a ping to the ping URL.
1934
+ """
1935
+ return pulumi.get(self, "period")
1936
+
1937
+ @property
1938
+ @pulumi.getter(name="periodUnit")
1939
+ def period_unit(self) -> str:
1940
+ """
1941
+ Possible values `seconds`, `minutes`, `hours` and `days`.
1942
+ """
1943
+ return pulumi.get(self, "period_unit")
1944
+
1945
+ @property
1946
+ @pulumi.getter(name="pingToken")
1947
+ def ping_token(self) -> Optional[str]:
1948
+ """
1949
+ Custom token to generate your ping URL. Checkly will expect a ping to `https://ping.checklyhq.com/[PING_TOKEN]`.
1950
+ """
1951
+ return pulumi.get(self, "ping_token")
1952
+
1953
+
1954
+ @pulumi.output_type
1955
+ class TcpCheckAlertChannelSubscription(dict):
1956
+ @staticmethod
1957
+ def __key_warning(key: str):
1958
+ suggest = None
1959
+ if key == "channelId":
1960
+ suggest = "channel_id"
1961
+
1962
+ if suggest:
1963
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
1964
+
1965
+ def __getitem__(self, key: str) -> Any:
1966
+ TcpCheckAlertChannelSubscription.__key_warning(key)
1967
+ return super().__getitem__(key)
1968
+
1969
+ def get(self, key: str, default = None) -> Any:
1970
+ TcpCheckAlertChannelSubscription.__key_warning(key)
1971
+ return super().get(key, default)
1972
+
1973
+ def __init__(__self__, *,
1974
+ activated: bool,
1975
+ channel_id: int):
1976
+ pulumi.set(__self__, "activated", activated)
1977
+ pulumi.set(__self__, "channel_id", channel_id)
1978
+
1979
+ @property
1980
+ @pulumi.getter
1981
+ def activated(self) -> bool:
1982
+ return pulumi.get(self, "activated")
1983
+
1984
+ @property
1985
+ @pulumi.getter(name="channelId")
1986
+ def channel_id(self) -> int:
1987
+ return pulumi.get(self, "channel_id")
1988
+
1989
+
1990
+ @pulumi.output_type
1991
+ class TcpCheckAlertSettings(dict):
1992
+ @staticmethod
1993
+ def __key_warning(key: str):
1994
+ suggest = None
1995
+ if key == "escalationType":
1996
+ suggest = "escalation_type"
1997
+ elif key == "parallelRunFailureThresholds":
1998
+ suggest = "parallel_run_failure_thresholds"
1999
+ elif key == "runBasedEscalations":
2000
+ suggest = "run_based_escalations"
2001
+ elif key == "timeBasedEscalations":
2002
+ suggest = "time_based_escalations"
2003
+
2004
+ if suggest:
2005
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettings. Access the value via the '{suggest}' property getter instead.")
2006
+
2007
+ def __getitem__(self, key: str) -> Any:
2008
+ TcpCheckAlertSettings.__key_warning(key)
2009
+ return super().__getitem__(key)
2010
+
2011
+ def get(self, key: str, default = None) -> Any:
2012
+ TcpCheckAlertSettings.__key_warning(key)
2013
+ return super().get(key, default)
2014
+
2015
+ def __init__(__self__, *,
2016
+ escalation_type: Optional[str] = None,
2017
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']] = None,
2018
+ reminders: Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']] = None,
2019
+ run_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']] = None,
2020
+ time_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']] = None):
2021
+ """
2022
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
2023
+ """
2024
+ if escalation_type is not None:
2025
+ pulumi.set(__self__, "escalation_type", escalation_type)
2026
+ if parallel_run_failure_thresholds is not None:
2027
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
2028
+ if reminders is not None:
2029
+ pulumi.set(__self__, "reminders", reminders)
2030
+ if run_based_escalations is not None:
2031
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
2032
+ if time_based_escalations is not None:
2033
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
2034
+
2035
+ @property
2036
+ @pulumi.getter(name="escalationType")
2037
+ def escalation_type(self) -> Optional[str]:
2038
+ """
2039
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
2040
+ """
2041
+ return pulumi.get(self, "escalation_type")
2042
+
2043
+ @property
2044
+ @pulumi.getter(name="parallelRunFailureThresholds")
2045
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']]:
2046
+ return pulumi.get(self, "parallel_run_failure_thresholds")
2047
+
2048
+ @property
2049
+ @pulumi.getter
2050
+ def reminders(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']]:
2051
+ return pulumi.get(self, "reminders")
2052
+
2053
+ @property
2054
+ @pulumi.getter(name="runBasedEscalations")
2055
+ def run_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']]:
2056
+ return pulumi.get(self, "run_based_escalations")
2057
+
2058
+ @property
2059
+ @pulumi.getter(name="timeBasedEscalations")
2060
+ def time_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']]:
2061
+ return pulumi.get(self, "time_based_escalations")
2062
+
2063
+
2064
+ @pulumi.output_type
2065
+ class TcpCheckAlertSettingsParallelRunFailureThreshold(dict):
2066
+ def __init__(__self__, *,
2067
+ enabled: Optional[bool] = None,
2068
+ percentage: Optional[int] = None):
2069
+ """
2070
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
2071
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
2072
+ """
2073
+ if enabled is not None:
2074
+ pulumi.set(__self__, "enabled", enabled)
2075
+ if percentage is not None:
2076
+ pulumi.set(__self__, "percentage", percentage)
2077
+
2078
+ @property
2079
+ @pulumi.getter
2080
+ def enabled(self) -> Optional[bool]:
2081
+ """
2082
+ Applicable only for checks scheduled in parallel in multiple locations.
2083
+ """
2084
+ return pulumi.get(self, "enabled")
2085
+
2086
+ @property
2087
+ @pulumi.getter
2088
+ def percentage(self) -> Optional[int]:
2089
+ """
2090
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
2091
+ """
2092
+ return pulumi.get(self, "percentage")
2093
+
2094
+
2095
+ @pulumi.output_type
2096
+ class TcpCheckAlertSettingsReminder(dict):
2097
+ def __init__(__self__, *,
2098
+ amount: Optional[int] = None,
2099
+ interval: Optional[int] = None):
2100
+ """
2101
+ :param int amount: How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
2102
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2103
+ """
2104
+ if amount is not None:
2105
+ pulumi.set(__self__, "amount", amount)
2106
+ if interval is not None:
2107
+ pulumi.set(__self__, "interval", interval)
2108
+
2109
+ @property
2110
+ @pulumi.getter
2111
+ def amount(self) -> Optional[int]:
2112
+ """
2113
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
2114
+ """
2115
+ return pulumi.get(self, "amount")
2116
+
2117
+ @property
2118
+ @pulumi.getter
2119
+ def interval(self) -> Optional[int]:
2120
+ """
2121
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2122
+ """
2123
+ return pulumi.get(self, "interval")
2124
+
2125
+
2126
+ @pulumi.output_type
2127
+ class TcpCheckAlertSettingsRunBasedEscalation(dict):
2128
+ @staticmethod
2129
+ def __key_warning(key: str):
2130
+ suggest = None
2131
+ if key == "failedRunThreshold":
2132
+ suggest = "failed_run_threshold"
2133
+
2134
+ if suggest:
2135
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2136
+
2137
+ def __getitem__(self, key: str) -> Any:
2138
+ TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2139
+ return super().__getitem__(key)
2140
+
2141
+ def get(self, key: str, default = None) -> Any:
2142
+ TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2143
+ return super().get(key, default)
2144
+
2145
+ def __init__(__self__, *,
2146
+ failed_run_threshold: Optional[int] = None):
2147
+ """
2148
+ :param int failed_run_threshold: After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
2149
+ """
2150
+ if failed_run_threshold is not None:
2151
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
2152
+
2153
+ @property
2154
+ @pulumi.getter(name="failedRunThreshold")
2155
+ def failed_run_threshold(self) -> Optional[int]:
2156
+ """
2157
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
2158
+ """
2159
+ return pulumi.get(self, "failed_run_threshold")
2160
+
2161
+
2162
+ @pulumi.output_type
2163
+ class TcpCheckAlertSettingsTimeBasedEscalation(dict):
2164
+ @staticmethod
2165
+ def __key_warning(key: str):
2166
+ suggest = None
2167
+ if key == "minutesFailingThreshold":
2168
+ suggest = "minutes_failing_threshold"
2169
+
2170
+ if suggest:
2171
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2172
+
2173
+ def __getitem__(self, key: str) -> Any:
2174
+ TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2175
+ return super().__getitem__(key)
2176
+
2177
+ def get(self, key: str, default = None) -> Any:
2178
+ TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2179
+ return super().get(key, default)
2180
+
2181
+ def __init__(__self__, *,
2182
+ minutes_failing_threshold: Optional[int] = None):
2183
+ """
2184
+ :param int minutes_failing_threshold: After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2185
+ """
2186
+ if minutes_failing_threshold is not None:
2187
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
2188
+
2189
+ @property
2190
+ @pulumi.getter(name="minutesFailingThreshold")
2191
+ def minutes_failing_threshold(self) -> Optional[int]:
2192
+ """
2193
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2194
+ """
2195
+ return pulumi.get(self, "minutes_failing_threshold")
2196
+
2197
+
2198
+ @pulumi.output_type
2199
+ class TcpCheckRequest(dict):
2200
+ @staticmethod
2201
+ def __key_warning(key: str):
2202
+ suggest = None
2203
+ if key == "ipFamily":
2204
+ suggest = "ip_family"
2205
+
2206
+ if suggest:
2207
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckRequest. Access the value via the '{suggest}' property getter instead.")
2208
+
2209
+ def __getitem__(self, key: str) -> Any:
2210
+ TcpCheckRequest.__key_warning(key)
2211
+ return super().__getitem__(key)
2212
+
2213
+ def get(self, key: str, default = None) -> Any:
2214
+ TcpCheckRequest.__key_warning(key)
2215
+ return super().get(key, default)
2216
+
2217
+ def __init__(__self__, *,
2218
+ hostname: str,
2219
+ port: int,
2220
+ assertions: Optional[Sequence['outputs.TcpCheckRequestAssertion']] = None,
2221
+ data: Optional[str] = None,
2222
+ ip_family: Optional[str] = None):
2223
+ """
2224
+ :param str hostname: The hostname or IP to connect to. Do not include a scheme or a port in this value.
2225
+ :param int port: The port number to connect to.
2226
+ :param Sequence['TcpCheckRequestAssertionArgs'] assertions: A request can have multiple assertions.
2227
+ :param str data: The data to send to the target host.
2228
+ :param str ip_family: The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
2229
+ """
2230
+ pulumi.set(__self__, "hostname", hostname)
2231
+ pulumi.set(__self__, "port", port)
2232
+ if assertions is not None:
2233
+ pulumi.set(__self__, "assertions", assertions)
2234
+ if data is not None:
2235
+ pulumi.set(__self__, "data", data)
2236
+ if ip_family is not None:
2237
+ pulumi.set(__self__, "ip_family", ip_family)
2238
+
2239
+ @property
2240
+ @pulumi.getter
2241
+ def hostname(self) -> str:
2242
+ """
2243
+ The hostname or IP to connect to. Do not include a scheme or a port in this value.
2244
+ """
2245
+ return pulumi.get(self, "hostname")
2246
+
2247
+ @property
2248
+ @pulumi.getter
2249
+ def port(self) -> int:
2250
+ """
2251
+ The port number to connect to.
2252
+ """
2253
+ return pulumi.get(self, "port")
2254
+
2255
+ @property
2256
+ @pulumi.getter
2257
+ def assertions(self) -> Optional[Sequence['outputs.TcpCheckRequestAssertion']]:
2258
+ """
2259
+ A request can have multiple assertions.
2260
+ """
2261
+ return pulumi.get(self, "assertions")
2262
+
2263
+ @property
2264
+ @pulumi.getter
2265
+ def data(self) -> Optional[str]:
2266
+ """
2267
+ The data to send to the target host.
2268
+ """
2269
+ return pulumi.get(self, "data")
2270
+
2271
+ @property
2272
+ @pulumi.getter(name="ipFamily")
2273
+ def ip_family(self) -> Optional[str]:
2274
+ """
2275
+ The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
2276
+ """
2277
+ return pulumi.get(self, "ip_family")
2278
+
2279
+
2280
+ @pulumi.output_type
2281
+ class TcpCheckRequestAssertion(dict):
2282
+ def __init__(__self__, *,
2283
+ comparison: str,
2284
+ source: str,
2285
+ property: Optional[str] = None,
2286
+ target: Optional[str] = None):
2287
+ """
2288
+ :param str comparison: The type of comparison to be executed between expected and actual value of the assertion. Possible values are `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
2289
+ :param str source: The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
2290
+ """
2291
+ pulumi.set(__self__, "comparison", comparison)
2292
+ pulumi.set(__self__, "source", source)
2293
+ if property is not None:
2294
+ pulumi.set(__self__, "property", property)
2295
+ if target is not None:
2296
+ pulumi.set(__self__, "target", target)
2297
+
2298
+ @property
2299
+ @pulumi.getter
2300
+ def comparison(self) -> str:
2301
+ """
2302
+ The type of comparison to be executed between expected and actual value of the assertion. Possible values are `EQUALS`, `NOT_EQUALS`, `HAS_KEY`, `NOT_HAS_KEY`, `HAS_VALUE`, `NOT_HAS_VALUE`, `IS_EMPTY`, `NOT_EMPTY`, `GREATER_THAN`, `LESS_THAN`, `CONTAINS`, `NOT_CONTAINS`, `IS_NULL`, and `NOT_NULL`.
2303
+ """
2304
+ return pulumi.get(self, "comparison")
2305
+
2306
+ @property
2307
+ @pulumi.getter
2308
+ def source(self) -> str:
2309
+ """
2310
+ The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
2311
+ """
2312
+ return pulumi.get(self, "source")
2313
+
2314
+ @property
2315
+ @pulumi.getter
2316
+ def target(self) -> Optional[str]:
2317
+ return pulumi.get(self, "target")
2318
+
2319
+ @property
2320
+ @pulumi.getter
2321
+ def property(self) -> Optional[str]:
2322
+ return pulumi.get(self, "property")
2323
+
2324
+
2325
+ @pulumi.output_type
2326
+ class TcpCheckRetryStrategy(dict):
2327
+ @staticmethod
2328
+ def __key_warning(key: str):
2329
+ suggest = None
2330
+ if key == "baseBackoffSeconds":
2331
+ suggest = "base_backoff_seconds"
2332
+ elif key == "maxDurationSeconds":
2333
+ suggest = "max_duration_seconds"
2334
+ elif key == "maxRetries":
2335
+ suggest = "max_retries"
2336
+ elif key == "sameRegion":
2337
+ suggest = "same_region"
2338
+
2339
+ if suggest:
2340
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckRetryStrategy. Access the value via the '{suggest}' property getter instead.")
2341
+
2342
+ def __getitem__(self, key: str) -> Any:
2343
+ TcpCheckRetryStrategy.__key_warning(key)
2344
+ return super().__getitem__(key)
2345
+
2346
+ def get(self, key: str, default = None) -> Any:
2347
+ TcpCheckRetryStrategy.__key_warning(key)
2348
+ return super().get(key, default)
2349
+
2350
+ def __init__(__self__, *,
2351
+ type: str,
2352
+ base_backoff_seconds: Optional[int] = None,
2353
+ max_duration_seconds: Optional[int] = None,
2354
+ max_retries: Optional[int] = None,
2355
+ same_region: Optional[bool] = None):
2356
+ """
2357
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
2358
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
2359
+ :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
2360
+ :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
2361
+ :param bool same_region: Whether retries should be run in the same region as the initial check run.
2362
+ """
2363
+ pulumi.set(__self__, "type", type)
2364
+ if base_backoff_seconds is not None:
2365
+ pulumi.set(__self__, "base_backoff_seconds", base_backoff_seconds)
2366
+ if max_duration_seconds is not None:
2367
+ pulumi.set(__self__, "max_duration_seconds", max_duration_seconds)
2368
+ if max_retries is not None:
2369
+ pulumi.set(__self__, "max_retries", max_retries)
2370
+ if same_region is not None:
2371
+ pulumi.set(__self__, "same_region", same_region)
2372
+
2373
+ @property
2374
+ @pulumi.getter
2375
+ def type(self) -> str:
2376
+ """
2377
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
2378
+ """
2379
+ return pulumi.get(self, "type")
2380
+
2381
+ @property
2382
+ @pulumi.getter(name="baseBackoffSeconds")
2383
+ def base_backoff_seconds(self) -> Optional[int]:
2384
+ """
2385
+ The number of seconds to wait before the first retry attempt.
2386
+ """
2387
+ return pulumi.get(self, "base_backoff_seconds")
2388
+
2389
+ @property
2390
+ @pulumi.getter(name="maxDurationSeconds")
2391
+ def max_duration_seconds(self) -> Optional[int]:
2392
+ """
2393
+ The total amount of time to continue retrying the check (maximum 600 seconds).
2394
+ """
2395
+ return pulumi.get(self, "max_duration_seconds")
2396
+
2397
+ @property
2398
+ @pulumi.getter(name="maxRetries")
2399
+ def max_retries(self) -> Optional[int]:
2400
+ """
2401
+ The maximum number of times to retry the check. Value must be between 1 and 10.
2402
+ """
2403
+ return pulumi.get(self, "max_retries")
2404
+
2405
+ @property
2406
+ @pulumi.getter(name="sameRegion")
2407
+ def same_region(self) -> Optional[bool]:
2408
+ """
2409
+ Whether retries should be run in the same region as the initial check run.
2410
+ """
2411
+ return pulumi.get(self, "same_region")
2412
+
2413
+