pulumi-checkly 2.3.0a1750944663__py3-none-any.whl → 2.4.0__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.
pulumi_checkly/outputs.py CHANGED
@@ -47,6 +47,7 @@ __all__ = [
47
47
  'CheckRequestAssertion',
48
48
  'CheckRequestBasicAuth',
49
49
  'CheckRetryStrategy',
50
+ 'CheckTriggerIncident',
50
51
  'HeartbeatCheckAlertChannelSubscription',
51
52
  'HeartbeatCheckAlertSettings',
52
53
  'HeartbeatCheckAlertSettingsParallelRunFailureThreshold',
@@ -55,6 +56,16 @@ __all__ = [
55
56
  'HeartbeatCheckAlertSettingsSslCertificate',
56
57
  'HeartbeatCheckAlertSettingsTimeBasedEscalation',
57
58
  'HeartbeatCheckHeartbeat',
59
+ 'HeartbeatCheckTriggerIncident',
60
+ 'HeartbeatMonitorAlertChannelSubscription',
61
+ 'HeartbeatMonitorAlertSettings',
62
+ 'HeartbeatMonitorAlertSettingsParallelRunFailureThreshold',
63
+ 'HeartbeatMonitorAlertSettingsReminder',
64
+ 'HeartbeatMonitorAlertSettingsRunBasedEscalation',
65
+ 'HeartbeatMonitorAlertSettingsSslCertificate',
66
+ 'HeartbeatMonitorAlertSettingsTimeBasedEscalation',
67
+ 'HeartbeatMonitorHeartbeat',
68
+ 'HeartbeatMonitorTriggerIncident',
58
69
  'StatusPageCard',
59
70
  'StatusPageCardServiceAttachment',
60
71
  'TcpCheckAlertChannelSubscription',
@@ -66,6 +77,27 @@ __all__ = [
66
77
  'TcpCheckRequest',
67
78
  'TcpCheckRequestAssertion',
68
79
  'TcpCheckRetryStrategy',
80
+ 'TcpCheckTriggerIncident',
81
+ 'TcpMonitorAlertChannelSubscription',
82
+ 'TcpMonitorAlertSettings',
83
+ 'TcpMonitorAlertSettingsParallelRunFailureThreshold',
84
+ 'TcpMonitorAlertSettingsReminder',
85
+ 'TcpMonitorAlertSettingsRunBasedEscalation',
86
+ 'TcpMonitorAlertSettingsTimeBasedEscalation',
87
+ 'TcpMonitorRequest',
88
+ 'TcpMonitorRequestAssertion',
89
+ 'TcpMonitorRetryStrategy',
90
+ 'TcpMonitorTriggerIncident',
91
+ 'UrlMonitorAlertChannelSubscription',
92
+ 'UrlMonitorAlertSettings',
93
+ 'UrlMonitorAlertSettingsParallelRunFailureThreshold',
94
+ 'UrlMonitorAlertSettingsReminder',
95
+ 'UrlMonitorAlertSettingsRunBasedEscalation',
96
+ 'UrlMonitorAlertSettingsTimeBasedEscalation',
97
+ 'UrlMonitorRequest',
98
+ 'UrlMonitorRequestAssertion',
99
+ 'UrlMonitorRetryStrategy',
100
+ 'UrlMonitorTriggerIncident',
69
101
  ]
70
102
 
71
103
  @pulumi.output_type
@@ -1566,6 +1598,87 @@ class CheckRetryStrategy(dict):
1566
1598
  return pulumi.get(self, "same_region")
1567
1599
 
1568
1600
 
1601
+ @pulumi.output_type
1602
+ class CheckTriggerIncident(dict):
1603
+ @staticmethod
1604
+ def __key_warning(key: str):
1605
+ suggest = None
1606
+ if key == "notifySubscribers":
1607
+ suggest = "notify_subscribers"
1608
+ elif key == "serviceId":
1609
+ suggest = "service_id"
1610
+
1611
+ if suggest:
1612
+ pulumi.log.warn(f"Key '{key}' not found in CheckTriggerIncident. Access the value via the '{suggest}' property getter instead.")
1613
+
1614
+ def __getitem__(self, key: str) -> Any:
1615
+ CheckTriggerIncident.__key_warning(key)
1616
+ return super().__getitem__(key)
1617
+
1618
+ def get(self, key: str, default = None) -> Any:
1619
+ CheckTriggerIncident.__key_warning(key)
1620
+ return super().get(key, default)
1621
+
1622
+ def __init__(__self__, *,
1623
+ description: str,
1624
+ name: str,
1625
+ notify_subscribers: bool,
1626
+ service_id: str,
1627
+ severity: str):
1628
+ """
1629
+ :param str description: A detailed description of the incident.
1630
+ :param str name: The name of the incident.
1631
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
1632
+ :param str service_id: The status page service that this incident will be associated with.
1633
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
1634
+ """
1635
+ pulumi.set(__self__, "description", description)
1636
+ pulumi.set(__self__, "name", name)
1637
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
1638
+ pulumi.set(__self__, "service_id", service_id)
1639
+ pulumi.set(__self__, "severity", severity)
1640
+
1641
+ @property
1642
+ @pulumi.getter
1643
+ def description(self) -> str:
1644
+ """
1645
+ A detailed description of the incident.
1646
+ """
1647
+ return pulumi.get(self, "description")
1648
+
1649
+ @property
1650
+ @pulumi.getter
1651
+ def name(self) -> str:
1652
+ """
1653
+ The name of the incident.
1654
+ """
1655
+ return pulumi.get(self, "name")
1656
+
1657
+ @property
1658
+ @pulumi.getter(name="notifySubscribers")
1659
+ def notify_subscribers(self) -> bool:
1660
+ """
1661
+ Whether to notify subscribers when the incident is triggered.
1662
+ """
1663
+ return pulumi.get(self, "notify_subscribers")
1664
+
1665
+ @property
1666
+ @pulumi.getter(name="serviceId")
1667
+ def service_id(self) -> str:
1668
+ """
1669
+ The status page service that this incident will be associated with.
1670
+ """
1671
+ return pulumi.get(self, "service_id")
1672
+
1673
+ @property
1674
+ @pulumi.getter
1675
+ def severity(self) -> str:
1676
+ """
1677
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
1678
+ """
1679
+ return pulumi.get(self, "severity")
1680
+
1681
+
1569
1682
  @pulumi.output_type
1570
1683
  class HeartbeatCheckAlertChannelSubscription(dict):
1571
1684
  @staticmethod
@@ -1954,88 +2067,88 @@ class HeartbeatCheckHeartbeat(dict):
1954
2067
 
1955
2068
 
1956
2069
  @pulumi.output_type
1957
- class StatusPageCard(dict):
2070
+ class HeartbeatCheckTriggerIncident(dict):
1958
2071
  @staticmethod
1959
2072
  def __key_warning(key: str):
1960
2073
  suggest = None
1961
- if key == "serviceAttachments":
1962
- suggest = "service_attachments"
2074
+ if key == "notifySubscribers":
2075
+ suggest = "notify_subscribers"
2076
+ elif key == "serviceId":
2077
+ suggest = "service_id"
1963
2078
 
1964
2079
  if suggest:
1965
- pulumi.log.warn(f"Key '{key}' not found in StatusPageCard. Access the value via the '{suggest}' property getter instead.")
2080
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatCheckTriggerIncident. Access the value via the '{suggest}' property getter instead.")
1966
2081
 
1967
2082
  def __getitem__(self, key: str) -> Any:
1968
- StatusPageCard.__key_warning(key)
2083
+ HeartbeatCheckTriggerIncident.__key_warning(key)
1969
2084
  return super().__getitem__(key)
1970
2085
 
1971
2086
  def get(self, key: str, default = None) -> Any:
1972
- StatusPageCard.__key_warning(key)
2087
+ HeartbeatCheckTriggerIncident.__key_warning(key)
1973
2088
  return super().get(key, default)
1974
2089
 
1975
2090
  def __init__(__self__, *,
2091
+ description: str,
1976
2092
  name: str,
1977
- service_attachments: Sequence['outputs.StatusPageCardServiceAttachment']):
2093
+ notify_subscribers: bool,
2094
+ service_id: str,
2095
+ severity: str):
1978
2096
  """
1979
- :param str name: The name of the card.
1980
- :param Sequence['StatusPageCardServiceAttachmentArgs'] service_attachments: A list of services to attach to the card.
2097
+ :param str description: A detailed description of the incident.
2098
+ :param str name: The name of the incident.
2099
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
2100
+ :param str service_id: The status page service that this incident will be associated with.
2101
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
1981
2102
  """
2103
+ pulumi.set(__self__, "description", description)
1982
2104
  pulumi.set(__self__, "name", name)
1983
- pulumi.set(__self__, "service_attachments", service_attachments)
2105
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
2106
+ pulumi.set(__self__, "service_id", service_id)
2107
+ pulumi.set(__self__, "severity", severity)
1984
2108
 
1985
2109
  @property
1986
2110
  @pulumi.getter
1987
- def name(self) -> str:
2111
+ def description(self) -> str:
1988
2112
  """
1989
- The name of the card.
2113
+ A detailed description of the incident.
1990
2114
  """
1991
- return pulumi.get(self, "name")
2115
+ return pulumi.get(self, "description")
1992
2116
 
1993
2117
  @property
1994
- @pulumi.getter(name="serviceAttachments")
1995
- def service_attachments(self) -> Sequence['outputs.StatusPageCardServiceAttachment']:
2118
+ @pulumi.getter
2119
+ def name(self) -> str:
1996
2120
  """
1997
- A list of services to attach to the card.
2121
+ The name of the incident.
1998
2122
  """
1999
- return pulumi.get(self, "service_attachments")
2000
-
2001
-
2002
- @pulumi.output_type
2003
- class StatusPageCardServiceAttachment(dict):
2004
- @staticmethod
2005
- def __key_warning(key: str):
2006
- suggest = None
2007
- if key == "serviceId":
2008
- suggest = "service_id"
2009
-
2010
- if suggest:
2011
- pulumi.log.warn(f"Key '{key}' not found in StatusPageCardServiceAttachment. Access the value via the '{suggest}' property getter instead.")
2012
-
2013
- def __getitem__(self, key: str) -> Any:
2014
- StatusPageCardServiceAttachment.__key_warning(key)
2015
- return super().__getitem__(key)
2016
-
2017
- def get(self, key: str, default = None) -> Any:
2018
- StatusPageCardServiceAttachment.__key_warning(key)
2019
- return super().get(key, default)
2123
+ return pulumi.get(self, "name")
2020
2124
 
2021
- def __init__(__self__, *,
2022
- service_id: str):
2125
+ @property
2126
+ @pulumi.getter(name="notifySubscribers")
2127
+ def notify_subscribers(self) -> bool:
2023
2128
  """
2024
- :param str service_id: The ID of the service.
2129
+ Whether to notify subscribers when the incident is triggered.
2025
2130
  """
2026
- pulumi.set(__self__, "service_id", service_id)
2131
+ return pulumi.get(self, "notify_subscribers")
2027
2132
 
2028
2133
  @property
2029
2134
  @pulumi.getter(name="serviceId")
2030
2135
  def service_id(self) -> str:
2031
2136
  """
2032
- The ID of the service.
2137
+ The status page service that this incident will be associated with.
2033
2138
  """
2034
2139
  return pulumi.get(self, "service_id")
2035
2140
 
2141
+ @property
2142
+ @pulumi.getter
2143
+ def severity(self) -> str:
2144
+ """
2145
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
2146
+ """
2147
+ return pulumi.get(self, "severity")
2148
+
2036
2149
 
2037
2150
  @pulumi.output_type
2038
- class TcpCheckAlertChannelSubscription(dict):
2151
+ class HeartbeatMonitorAlertChannelSubscription(dict):
2039
2152
  @staticmethod
2040
2153
  def __key_warning(key: str):
2041
2154
  suggest = None
@@ -2043,14 +2156,14 @@ class TcpCheckAlertChannelSubscription(dict):
2043
2156
  suggest = "channel_id"
2044
2157
 
2045
2158
  if suggest:
2046
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
2159
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
2047
2160
 
2048
2161
  def __getitem__(self, key: str) -> Any:
2049
- TcpCheckAlertChannelSubscription.__key_warning(key)
2162
+ HeartbeatMonitorAlertChannelSubscription.__key_warning(key)
2050
2163
  return super().__getitem__(key)
2051
2164
 
2052
2165
  def get(self, key: str, default = None) -> Any:
2053
- TcpCheckAlertChannelSubscription.__key_warning(key)
2166
+ HeartbeatMonitorAlertChannelSubscription.__key_warning(key)
2054
2167
  return super().get(key, default)
2055
2168
 
2056
2169
  def __init__(__self__, *,
@@ -2071,7 +2184,7 @@ class TcpCheckAlertChannelSubscription(dict):
2071
2184
 
2072
2185
 
2073
2186
  @pulumi.output_type
2074
- class TcpCheckAlertSettings(dict):
2187
+ class HeartbeatMonitorAlertSettings(dict):
2075
2188
  @staticmethod
2076
2189
  def __key_warning(key: str):
2077
2190
  suggest = None
@@ -2081,26 +2194,29 @@ class TcpCheckAlertSettings(dict):
2081
2194
  suggest = "parallel_run_failure_thresholds"
2082
2195
  elif key == "runBasedEscalations":
2083
2196
  suggest = "run_based_escalations"
2197
+ elif key == "sslCertificates":
2198
+ suggest = "ssl_certificates"
2084
2199
  elif key == "timeBasedEscalations":
2085
2200
  suggest = "time_based_escalations"
2086
2201
 
2087
2202
  if suggest:
2088
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettings. Access the value via the '{suggest}' property getter instead.")
2203
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorAlertSettings. Access the value via the '{suggest}' property getter instead.")
2089
2204
 
2090
2205
  def __getitem__(self, key: str) -> Any:
2091
- TcpCheckAlertSettings.__key_warning(key)
2206
+ HeartbeatMonitorAlertSettings.__key_warning(key)
2092
2207
  return super().__getitem__(key)
2093
2208
 
2094
2209
  def get(self, key: str, default = None) -> Any:
2095
- TcpCheckAlertSettings.__key_warning(key)
2210
+ HeartbeatMonitorAlertSettings.__key_warning(key)
2096
2211
  return super().get(key, default)
2097
2212
 
2098
2213
  def __init__(__self__, *,
2099
2214
  escalation_type: Optional[str] = None,
2100
- parallel_run_failure_thresholds: Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']] = None,
2101
- reminders: Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']] = None,
2102
- run_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']] = None,
2103
- time_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']] = None):
2215
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsParallelRunFailureThreshold']] = None,
2216
+ reminders: Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsReminder']] = None,
2217
+ run_based_escalations: Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsRunBasedEscalation']] = None,
2218
+ ssl_certificates: Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsSslCertificate']] = None,
2219
+ time_based_escalations: Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsTimeBasedEscalation']] = None):
2104
2220
  """
2105
2221
  :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
2106
2222
  """
@@ -2112,6 +2228,8 @@ class TcpCheckAlertSettings(dict):
2112
2228
  pulumi.set(__self__, "reminders", reminders)
2113
2229
  if run_based_escalations is not None:
2114
2230
  pulumi.set(__self__, "run_based_escalations", run_based_escalations)
2231
+ if ssl_certificates is not None:
2232
+ pulumi.set(__self__, "ssl_certificates", ssl_certificates)
2115
2233
  if time_based_escalations is not None:
2116
2234
  pulumi.set(__self__, "time_based_escalations", time_based_escalations)
2117
2235
 
@@ -2125,27 +2243,33 @@ class TcpCheckAlertSettings(dict):
2125
2243
 
2126
2244
  @property
2127
2245
  @pulumi.getter(name="parallelRunFailureThresholds")
2128
- def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']]:
2246
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsParallelRunFailureThreshold']]:
2129
2247
  return pulumi.get(self, "parallel_run_failure_thresholds")
2130
2248
 
2131
2249
  @property
2132
2250
  @pulumi.getter
2133
- def reminders(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']]:
2251
+ def reminders(self) -> Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsReminder']]:
2134
2252
  return pulumi.get(self, "reminders")
2135
2253
 
2136
2254
  @property
2137
2255
  @pulumi.getter(name="runBasedEscalations")
2138
- def run_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']]:
2256
+ def run_based_escalations(self) -> Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsRunBasedEscalation']]:
2139
2257
  return pulumi.get(self, "run_based_escalations")
2140
2258
 
2259
+ @property
2260
+ @pulumi.getter(name="sslCertificates")
2261
+ @_utilities.deprecated("""This property is deprecated and it's ignored by the Checkly Public API. It will be removed in a future version.""")
2262
+ def ssl_certificates(self) -> Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsSslCertificate']]:
2263
+ return pulumi.get(self, "ssl_certificates")
2264
+
2141
2265
  @property
2142
2266
  @pulumi.getter(name="timeBasedEscalations")
2143
- def time_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']]:
2267
+ def time_based_escalations(self) -> Optional[Sequence['outputs.HeartbeatMonitorAlertSettingsTimeBasedEscalation']]:
2144
2268
  return pulumi.get(self, "time_based_escalations")
2145
2269
 
2146
2270
 
2147
2271
  @pulumi.output_type
2148
- class TcpCheckAlertSettingsParallelRunFailureThreshold(dict):
2272
+ class HeartbeatMonitorAlertSettingsParallelRunFailureThreshold(dict):
2149
2273
  def __init__(__self__, *,
2150
2274
  enabled: Optional[bool] = None,
2151
2275
  percentage: Optional[int] = None):
@@ -2176,7 +2300,7 @@ class TcpCheckAlertSettingsParallelRunFailureThreshold(dict):
2176
2300
 
2177
2301
 
2178
2302
  @pulumi.output_type
2179
- class TcpCheckAlertSettingsReminder(dict):
2303
+ class HeartbeatMonitorAlertSettingsReminder(dict):
2180
2304
  def __init__(__self__, *,
2181
2305
  amount: Optional[int] = None,
2182
2306
  interval: Optional[int] = None):
@@ -2207,7 +2331,7 @@ class TcpCheckAlertSettingsReminder(dict):
2207
2331
 
2208
2332
 
2209
2333
  @pulumi.output_type
2210
- class TcpCheckAlertSettingsRunBasedEscalation(dict):
2334
+ class HeartbeatMonitorAlertSettingsRunBasedEscalation(dict):
2211
2335
  @staticmethod
2212
2336
  def __key_warning(key: str):
2213
2337
  suggest = None
@@ -2215,14 +2339,14 @@ class TcpCheckAlertSettingsRunBasedEscalation(dict):
2215
2339
  suggest = "failed_run_threshold"
2216
2340
 
2217
2341
  if suggest:
2218
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2342
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2219
2343
 
2220
2344
  def __getitem__(self, key: str) -> Any:
2221
- TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2345
+ HeartbeatMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
2222
2346
  return super().__getitem__(key)
2223
2347
 
2224
2348
  def get(self, key: str, default = None) -> Any:
2225
- TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2349
+ HeartbeatMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
2226
2350
  return super().get(key, default)
2227
2351
 
2228
2352
  def __init__(__self__, *,
@@ -2243,7 +2367,55 @@ class TcpCheckAlertSettingsRunBasedEscalation(dict):
2243
2367
 
2244
2368
 
2245
2369
  @pulumi.output_type
2246
- class TcpCheckAlertSettingsTimeBasedEscalation(dict):
2370
+ class HeartbeatMonitorAlertSettingsSslCertificate(dict):
2371
+ @staticmethod
2372
+ def __key_warning(key: str):
2373
+ suggest = None
2374
+ if key == "alertThreshold":
2375
+ suggest = "alert_threshold"
2376
+
2377
+ if suggest:
2378
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorAlertSettingsSslCertificate. Access the value via the '{suggest}' property getter instead.")
2379
+
2380
+ def __getitem__(self, key: str) -> Any:
2381
+ HeartbeatMonitorAlertSettingsSslCertificate.__key_warning(key)
2382
+ return super().__getitem__(key)
2383
+
2384
+ def get(self, key: str, default = None) -> Any:
2385
+ HeartbeatMonitorAlertSettingsSslCertificate.__key_warning(key)
2386
+ return super().get(key, default)
2387
+
2388
+ def __init__(__self__, *,
2389
+ alert_threshold: Optional[int] = None,
2390
+ enabled: Optional[bool] = None):
2391
+ """
2392
+ :param int alert_threshold: How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
2393
+ :param bool enabled: Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
2394
+ """
2395
+ if alert_threshold is not None:
2396
+ pulumi.set(__self__, "alert_threshold", alert_threshold)
2397
+ if enabled is not None:
2398
+ pulumi.set(__self__, "enabled", enabled)
2399
+
2400
+ @property
2401
+ @pulumi.getter(name="alertThreshold")
2402
+ def alert_threshold(self) -> Optional[int]:
2403
+ """
2404
+ How long before SSL certificate expiry to send alerts. Possible values `3`, `7`, `14`, `30`. (Default `3`).
2405
+ """
2406
+ return pulumi.get(self, "alert_threshold")
2407
+
2408
+ @property
2409
+ @pulumi.getter
2410
+ def enabled(self) -> Optional[bool]:
2411
+ """
2412
+ Determines if alert notifications should be sent for expiring SSL certificates. Possible values `true`, and `false`. (Default `false`).
2413
+ """
2414
+ return pulumi.get(self, "enabled")
2415
+
2416
+
2417
+ @pulumi.output_type
2418
+ class HeartbeatMonitorAlertSettingsTimeBasedEscalation(dict):
2247
2419
  @staticmethod
2248
2420
  def __key_warning(key: str):
2249
2421
  suggest = None
@@ -2251,14 +2423,14 @@ class TcpCheckAlertSettingsTimeBasedEscalation(dict):
2251
2423
  suggest = "minutes_failing_threshold"
2252
2424
 
2253
2425
  if suggest:
2254
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2426
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2255
2427
 
2256
2428
  def __getitem__(self, key: str) -> Any:
2257
- TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2429
+ HeartbeatMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
2258
2430
  return super().__getitem__(key)
2259
2431
 
2260
2432
  def get(self, key: str, default = None) -> Any:
2261
- TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2433
+ HeartbeatMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
2262
2434
  return super().get(key, default)
2263
2435
 
2264
2436
  def __init__(__self__, *,
@@ -2279,110 +2451,1712 @@ class TcpCheckAlertSettingsTimeBasedEscalation(dict):
2279
2451
 
2280
2452
 
2281
2453
  @pulumi.output_type
2282
- class TcpCheckRequest(dict):
2454
+ class HeartbeatMonitorHeartbeat(dict):
2283
2455
  @staticmethod
2284
2456
  def __key_warning(key: str):
2285
2457
  suggest = None
2286
- if key == "ipFamily":
2287
- suggest = "ip_family"
2458
+ if key == "graceUnit":
2459
+ suggest = "grace_unit"
2460
+ elif key == "periodUnit":
2461
+ suggest = "period_unit"
2462
+ elif key == "pingToken":
2463
+ suggest = "ping_token"
2288
2464
 
2289
2465
  if suggest:
2290
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckRequest. Access the value via the '{suggest}' property getter instead.")
2466
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorHeartbeat. Access the value via the '{suggest}' property getter instead.")
2291
2467
 
2292
2468
  def __getitem__(self, key: str) -> Any:
2293
- TcpCheckRequest.__key_warning(key)
2469
+ HeartbeatMonitorHeartbeat.__key_warning(key)
2294
2470
  return super().__getitem__(key)
2295
2471
 
2296
2472
  def get(self, key: str, default = None) -> Any:
2297
- TcpCheckRequest.__key_warning(key)
2473
+ HeartbeatMonitorHeartbeat.__key_warning(key)
2298
2474
  return super().get(key, default)
2299
2475
 
2300
2476
  def __init__(__self__, *,
2301
- hostname: str,
2302
- port: int,
2303
- assertions: Optional[Sequence['outputs.TcpCheckRequestAssertion']] = None,
2304
- data: Optional[str] = None,
2305
- ip_family: Optional[str] = None):
2477
+ grace: int,
2478
+ grace_unit: str,
2479
+ period: int,
2480
+ period_unit: str,
2481
+ ping_token: Optional[str] = None):
2306
2482
  """
2307
- :param str hostname: The hostname or IP to connect to. Do not include a scheme or a port in this value.
2308
- :param int port: The port number to connect to.
2309
- :param Sequence['TcpCheckRequestAssertionArgs'] assertions: A request can have multiple assertions.
2310
- :param str data: The data to send to the target host.
2311
- :param str ip_family: The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
2483
+ :param int grace: How long Checkly should wait before triggering any alerts when a ping does not arrive within the set period.
2484
+ :param str grace_unit: Possible values `seconds`, `minutes`, `hours` and `days`.
2485
+ :param int period: How often you expect a ping to the ping URL.
2486
+ :param str period_unit: Possible values `seconds`, `minutes`, `hours` and `days`.
2487
+ :param str ping_token: Custom token to generate your ping URL. Checkly will expect a ping to `https://ping.checklyhq.com/[PING_TOKEN]`.
2312
2488
  """
2313
- pulumi.set(__self__, "hostname", hostname)
2314
- pulumi.set(__self__, "port", port)
2315
- if assertions is not None:
2316
- pulumi.set(__self__, "assertions", assertions)
2317
- if data is not None:
2318
- pulumi.set(__self__, "data", data)
2319
- if ip_family is not None:
2320
- pulumi.set(__self__, "ip_family", ip_family)
2489
+ pulumi.set(__self__, "grace", grace)
2490
+ pulumi.set(__self__, "grace_unit", grace_unit)
2491
+ pulumi.set(__self__, "period", period)
2492
+ pulumi.set(__self__, "period_unit", period_unit)
2493
+ if ping_token is not None:
2494
+ pulumi.set(__self__, "ping_token", ping_token)
2321
2495
 
2322
2496
  @property
2323
2497
  @pulumi.getter
2324
- def hostname(self) -> str:
2498
+ def grace(self) -> int:
2325
2499
  """
2326
- The hostname or IP to connect to. Do not include a scheme or a port in this value.
2500
+ How long Checkly should wait before triggering any alerts when a ping does not arrive within the set period.
2327
2501
  """
2328
- return pulumi.get(self, "hostname")
2502
+ return pulumi.get(self, "grace")
2329
2503
 
2330
2504
  @property
2331
- @pulumi.getter
2332
- def port(self) -> int:
2505
+ @pulumi.getter(name="graceUnit")
2506
+ def grace_unit(self) -> str:
2333
2507
  """
2334
- The port number to connect to.
2508
+ Possible values `seconds`, `minutes`, `hours` and `days`.
2335
2509
  """
2336
- return pulumi.get(self, "port")
2510
+ return pulumi.get(self, "grace_unit")
2337
2511
 
2338
2512
  @property
2339
2513
  @pulumi.getter
2340
- def assertions(self) -> Optional[Sequence['outputs.TcpCheckRequestAssertion']]:
2514
+ def period(self) -> int:
2341
2515
  """
2342
- A request can have multiple assertions.
2516
+ How often you expect a ping to the ping URL.
2343
2517
  """
2344
- return pulumi.get(self, "assertions")
2518
+ return pulumi.get(self, "period")
2345
2519
 
2346
2520
  @property
2347
- @pulumi.getter
2348
- def data(self) -> Optional[str]:
2521
+ @pulumi.getter(name="periodUnit")
2522
+ def period_unit(self) -> str:
2349
2523
  """
2350
- The data to send to the target host.
2524
+ Possible values `seconds`, `minutes`, `hours` and `days`.
2351
2525
  """
2352
- return pulumi.get(self, "data")
2526
+ return pulumi.get(self, "period_unit")
2527
+
2528
+ @property
2529
+ @pulumi.getter(name="pingToken")
2530
+ def ping_token(self) -> Optional[str]:
2531
+ """
2532
+ Custom token to generate your ping URL. Checkly will expect a ping to `https://ping.checklyhq.com/[PING_TOKEN]`.
2533
+ """
2534
+ return pulumi.get(self, "ping_token")
2535
+
2536
+
2537
+ @pulumi.output_type
2538
+ class HeartbeatMonitorTriggerIncident(dict):
2539
+ @staticmethod
2540
+ def __key_warning(key: str):
2541
+ suggest = None
2542
+ if key == "notifySubscribers":
2543
+ suggest = "notify_subscribers"
2544
+ elif key == "serviceId":
2545
+ suggest = "service_id"
2546
+
2547
+ if suggest:
2548
+ pulumi.log.warn(f"Key '{key}' not found in HeartbeatMonitorTriggerIncident. Access the value via the '{suggest}' property getter instead.")
2549
+
2550
+ def __getitem__(self, key: str) -> Any:
2551
+ HeartbeatMonitorTriggerIncident.__key_warning(key)
2552
+ return super().__getitem__(key)
2553
+
2554
+ def get(self, key: str, default = None) -> Any:
2555
+ HeartbeatMonitorTriggerIncident.__key_warning(key)
2556
+ return super().get(key, default)
2557
+
2558
+ def __init__(__self__, *,
2559
+ description: str,
2560
+ name: str,
2561
+ notify_subscribers: bool,
2562
+ service_id: str,
2563
+ severity: str):
2564
+ """
2565
+ :param str description: A detailed description of the incident.
2566
+ :param str name: The name of the incident.
2567
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
2568
+ :param str service_id: The status page service that this incident will be associated with.
2569
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
2570
+ """
2571
+ pulumi.set(__self__, "description", description)
2572
+ pulumi.set(__self__, "name", name)
2573
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
2574
+ pulumi.set(__self__, "service_id", service_id)
2575
+ pulumi.set(__self__, "severity", severity)
2576
+
2577
+ @property
2578
+ @pulumi.getter
2579
+ def description(self) -> str:
2580
+ """
2581
+ A detailed description of the incident.
2582
+ """
2583
+ return pulumi.get(self, "description")
2584
+
2585
+ @property
2586
+ @pulumi.getter
2587
+ def name(self) -> str:
2588
+ """
2589
+ The name of the incident.
2590
+ """
2591
+ return pulumi.get(self, "name")
2592
+
2593
+ @property
2594
+ @pulumi.getter(name="notifySubscribers")
2595
+ def notify_subscribers(self) -> bool:
2596
+ """
2597
+ Whether to notify subscribers when the incident is triggered.
2598
+ """
2599
+ return pulumi.get(self, "notify_subscribers")
2600
+
2601
+ @property
2602
+ @pulumi.getter(name="serviceId")
2603
+ def service_id(self) -> str:
2604
+ """
2605
+ The status page service that this incident will be associated with.
2606
+ """
2607
+ return pulumi.get(self, "service_id")
2608
+
2609
+ @property
2610
+ @pulumi.getter
2611
+ def severity(self) -> str:
2612
+ """
2613
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
2614
+ """
2615
+ return pulumi.get(self, "severity")
2616
+
2617
+
2618
+ @pulumi.output_type
2619
+ class StatusPageCard(dict):
2620
+ @staticmethod
2621
+ def __key_warning(key: str):
2622
+ suggest = None
2623
+ if key == "serviceAttachments":
2624
+ suggest = "service_attachments"
2625
+
2626
+ if suggest:
2627
+ pulumi.log.warn(f"Key '{key}' not found in StatusPageCard. Access the value via the '{suggest}' property getter instead.")
2628
+
2629
+ def __getitem__(self, key: str) -> Any:
2630
+ StatusPageCard.__key_warning(key)
2631
+ return super().__getitem__(key)
2632
+
2633
+ def get(self, key: str, default = None) -> Any:
2634
+ StatusPageCard.__key_warning(key)
2635
+ return super().get(key, default)
2636
+
2637
+ def __init__(__self__, *,
2638
+ name: str,
2639
+ service_attachments: Sequence['outputs.StatusPageCardServiceAttachment']):
2640
+ """
2641
+ :param str name: The name of the card.
2642
+ :param Sequence['StatusPageCardServiceAttachmentArgs'] service_attachments: A list of services to attach to the card.
2643
+ """
2644
+ pulumi.set(__self__, "name", name)
2645
+ pulumi.set(__self__, "service_attachments", service_attachments)
2646
+
2647
+ @property
2648
+ @pulumi.getter
2649
+ def name(self) -> str:
2650
+ """
2651
+ The name of the card.
2652
+ """
2653
+ return pulumi.get(self, "name")
2654
+
2655
+ @property
2656
+ @pulumi.getter(name="serviceAttachments")
2657
+ def service_attachments(self) -> Sequence['outputs.StatusPageCardServiceAttachment']:
2658
+ """
2659
+ A list of services to attach to the card.
2660
+ """
2661
+ return pulumi.get(self, "service_attachments")
2662
+
2663
+
2664
+ @pulumi.output_type
2665
+ class StatusPageCardServiceAttachment(dict):
2666
+ @staticmethod
2667
+ def __key_warning(key: str):
2668
+ suggest = None
2669
+ if key == "serviceId":
2670
+ suggest = "service_id"
2671
+
2672
+ if suggest:
2673
+ pulumi.log.warn(f"Key '{key}' not found in StatusPageCardServiceAttachment. Access the value via the '{suggest}' property getter instead.")
2674
+
2675
+ def __getitem__(self, key: str) -> Any:
2676
+ StatusPageCardServiceAttachment.__key_warning(key)
2677
+ return super().__getitem__(key)
2678
+
2679
+ def get(self, key: str, default = None) -> Any:
2680
+ StatusPageCardServiceAttachment.__key_warning(key)
2681
+ return super().get(key, default)
2682
+
2683
+ def __init__(__self__, *,
2684
+ service_id: str):
2685
+ """
2686
+ :param str service_id: The ID of the service.
2687
+ """
2688
+ pulumi.set(__self__, "service_id", service_id)
2689
+
2690
+ @property
2691
+ @pulumi.getter(name="serviceId")
2692
+ def service_id(self) -> str:
2693
+ """
2694
+ The ID of the service.
2695
+ """
2696
+ return pulumi.get(self, "service_id")
2697
+
2698
+
2699
+ @pulumi.output_type
2700
+ class TcpCheckAlertChannelSubscription(dict):
2701
+ @staticmethod
2702
+ def __key_warning(key: str):
2703
+ suggest = None
2704
+ if key == "channelId":
2705
+ suggest = "channel_id"
2706
+
2707
+ if suggest:
2708
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
2709
+
2710
+ def __getitem__(self, key: str) -> Any:
2711
+ TcpCheckAlertChannelSubscription.__key_warning(key)
2712
+ return super().__getitem__(key)
2713
+
2714
+ def get(self, key: str, default = None) -> Any:
2715
+ TcpCheckAlertChannelSubscription.__key_warning(key)
2716
+ return super().get(key, default)
2717
+
2718
+ def __init__(__self__, *,
2719
+ activated: bool,
2720
+ channel_id: int):
2721
+ pulumi.set(__self__, "activated", activated)
2722
+ pulumi.set(__self__, "channel_id", channel_id)
2723
+
2724
+ @property
2725
+ @pulumi.getter
2726
+ def activated(self) -> bool:
2727
+ return pulumi.get(self, "activated")
2728
+
2729
+ @property
2730
+ @pulumi.getter(name="channelId")
2731
+ def channel_id(self) -> int:
2732
+ return pulumi.get(self, "channel_id")
2733
+
2734
+
2735
+ @pulumi.output_type
2736
+ class TcpCheckAlertSettings(dict):
2737
+ @staticmethod
2738
+ def __key_warning(key: str):
2739
+ suggest = None
2740
+ if key == "escalationType":
2741
+ suggest = "escalation_type"
2742
+ elif key == "parallelRunFailureThresholds":
2743
+ suggest = "parallel_run_failure_thresholds"
2744
+ elif key == "runBasedEscalations":
2745
+ suggest = "run_based_escalations"
2746
+ elif key == "timeBasedEscalations":
2747
+ suggest = "time_based_escalations"
2748
+
2749
+ if suggest:
2750
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettings. Access the value via the '{suggest}' property getter instead.")
2751
+
2752
+ def __getitem__(self, key: str) -> Any:
2753
+ TcpCheckAlertSettings.__key_warning(key)
2754
+ return super().__getitem__(key)
2755
+
2756
+ def get(self, key: str, default = None) -> Any:
2757
+ TcpCheckAlertSettings.__key_warning(key)
2758
+ return super().get(key, default)
2759
+
2760
+ def __init__(__self__, *,
2761
+ escalation_type: Optional[str] = None,
2762
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']] = None,
2763
+ reminders: Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']] = None,
2764
+ run_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']] = None,
2765
+ time_based_escalations: Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']] = None):
2766
+ """
2767
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
2768
+ """
2769
+ if escalation_type is not None:
2770
+ pulumi.set(__self__, "escalation_type", escalation_type)
2771
+ if parallel_run_failure_thresholds is not None:
2772
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
2773
+ if reminders is not None:
2774
+ pulumi.set(__self__, "reminders", reminders)
2775
+ if run_based_escalations is not None:
2776
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
2777
+ if time_based_escalations is not None:
2778
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
2779
+
2780
+ @property
2781
+ @pulumi.getter(name="escalationType")
2782
+ def escalation_type(self) -> Optional[str]:
2783
+ """
2784
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
2785
+ """
2786
+ return pulumi.get(self, "escalation_type")
2787
+
2788
+ @property
2789
+ @pulumi.getter(name="parallelRunFailureThresholds")
2790
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsParallelRunFailureThreshold']]:
2791
+ return pulumi.get(self, "parallel_run_failure_thresholds")
2792
+
2793
+ @property
2794
+ @pulumi.getter
2795
+ def reminders(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsReminder']]:
2796
+ return pulumi.get(self, "reminders")
2797
+
2798
+ @property
2799
+ @pulumi.getter(name="runBasedEscalations")
2800
+ def run_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsRunBasedEscalation']]:
2801
+ return pulumi.get(self, "run_based_escalations")
2802
+
2803
+ @property
2804
+ @pulumi.getter(name="timeBasedEscalations")
2805
+ def time_based_escalations(self) -> Optional[Sequence['outputs.TcpCheckAlertSettingsTimeBasedEscalation']]:
2806
+ return pulumi.get(self, "time_based_escalations")
2807
+
2808
+
2809
+ @pulumi.output_type
2810
+ class TcpCheckAlertSettingsParallelRunFailureThreshold(dict):
2811
+ def __init__(__self__, *,
2812
+ enabled: Optional[bool] = None,
2813
+ percentage: Optional[int] = None):
2814
+ """
2815
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
2816
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
2817
+ """
2818
+ if enabled is not None:
2819
+ pulumi.set(__self__, "enabled", enabled)
2820
+ if percentage is not None:
2821
+ pulumi.set(__self__, "percentage", percentage)
2822
+
2823
+ @property
2824
+ @pulumi.getter
2825
+ def enabled(self) -> Optional[bool]:
2826
+ """
2827
+ Applicable only for checks scheduled in parallel in multiple locations.
2828
+ """
2829
+ return pulumi.get(self, "enabled")
2830
+
2831
+ @property
2832
+ @pulumi.getter
2833
+ def percentage(self) -> Optional[int]:
2834
+ """
2835
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
2836
+ """
2837
+ return pulumi.get(self, "percentage")
2838
+
2839
+
2840
+ @pulumi.output_type
2841
+ class TcpCheckAlertSettingsReminder(dict):
2842
+ def __init__(__self__, *,
2843
+ amount: Optional[int] = None,
2844
+ interval: Optional[int] = None):
2845
+ """
2846
+ :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`
2847
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2848
+ """
2849
+ if amount is not None:
2850
+ pulumi.set(__self__, "amount", amount)
2851
+ if interval is not None:
2852
+ pulumi.set(__self__, "interval", interval)
2853
+
2854
+ @property
2855
+ @pulumi.getter
2856
+ def amount(self) -> Optional[int]:
2857
+ """
2858
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
2859
+ """
2860
+ return pulumi.get(self, "amount")
2861
+
2862
+ @property
2863
+ @pulumi.getter
2864
+ def interval(self) -> Optional[int]:
2865
+ """
2866
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2867
+ """
2868
+ return pulumi.get(self, "interval")
2869
+
2870
+
2871
+ @pulumi.output_type
2872
+ class TcpCheckAlertSettingsRunBasedEscalation(dict):
2873
+ @staticmethod
2874
+ def __key_warning(key: str):
2875
+ suggest = None
2876
+ if key == "failedRunThreshold":
2877
+ suggest = "failed_run_threshold"
2878
+
2879
+ if suggest:
2880
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2881
+
2882
+ def __getitem__(self, key: str) -> Any:
2883
+ TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2884
+ return super().__getitem__(key)
2885
+
2886
+ def get(self, key: str, default = None) -> Any:
2887
+ TcpCheckAlertSettingsRunBasedEscalation.__key_warning(key)
2888
+ return super().get(key, default)
2889
+
2890
+ def __init__(__self__, *,
2891
+ failed_run_threshold: Optional[int] = None):
2892
+ """
2893
+ :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`).
2894
+ """
2895
+ if failed_run_threshold is not None:
2896
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
2897
+
2898
+ @property
2899
+ @pulumi.getter(name="failedRunThreshold")
2900
+ def failed_run_threshold(self) -> Optional[int]:
2901
+ """
2902
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
2903
+ """
2904
+ return pulumi.get(self, "failed_run_threshold")
2905
+
2906
+
2907
+ @pulumi.output_type
2908
+ class TcpCheckAlertSettingsTimeBasedEscalation(dict):
2909
+ @staticmethod
2910
+ def __key_warning(key: str):
2911
+ suggest = None
2912
+ if key == "minutesFailingThreshold":
2913
+ suggest = "minutes_failing_threshold"
2914
+
2915
+ if suggest:
2916
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
2917
+
2918
+ def __getitem__(self, key: str) -> Any:
2919
+ TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2920
+ return super().__getitem__(key)
2921
+
2922
+ def get(self, key: str, default = None) -> Any:
2923
+ TcpCheckAlertSettingsTimeBasedEscalation.__key_warning(key)
2924
+ return super().get(key, default)
2925
+
2926
+ def __init__(__self__, *,
2927
+ minutes_failing_threshold: Optional[int] = None):
2928
+ """
2929
+ :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`).
2930
+ """
2931
+ if minutes_failing_threshold is not None:
2932
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
2933
+
2934
+ @property
2935
+ @pulumi.getter(name="minutesFailingThreshold")
2936
+ def minutes_failing_threshold(self) -> Optional[int]:
2937
+ """
2938
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
2939
+ """
2940
+ return pulumi.get(self, "minutes_failing_threshold")
2941
+
2942
+
2943
+ @pulumi.output_type
2944
+ class TcpCheckRequest(dict):
2945
+ @staticmethod
2946
+ def __key_warning(key: str):
2947
+ suggest = None
2948
+ if key == "ipFamily":
2949
+ suggest = "ip_family"
2950
+
2951
+ if suggest:
2952
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckRequest. Access the value via the '{suggest}' property getter instead.")
2953
+
2954
+ def __getitem__(self, key: str) -> Any:
2955
+ TcpCheckRequest.__key_warning(key)
2956
+ return super().__getitem__(key)
2957
+
2958
+ def get(self, key: str, default = None) -> Any:
2959
+ TcpCheckRequest.__key_warning(key)
2960
+ return super().get(key, default)
2961
+
2962
+ def __init__(__self__, *,
2963
+ hostname: str,
2964
+ port: int,
2965
+ assertions: Optional[Sequence['outputs.TcpCheckRequestAssertion']] = None,
2966
+ data: Optional[str] = None,
2967
+ ip_family: Optional[str] = None):
2968
+ """
2969
+ :param str hostname: The hostname or IP to connect to. Do not include a scheme or a port in this value.
2970
+ :param int port: The port number to connect to.
2971
+ :param Sequence['TcpCheckRequestAssertionArgs'] assertions: A request can have multiple assertions.
2972
+ :param str data: The data to send to the target host.
2973
+ :param str ip_family: The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
2974
+ """
2975
+ pulumi.set(__self__, "hostname", hostname)
2976
+ pulumi.set(__self__, "port", port)
2977
+ if assertions is not None:
2978
+ pulumi.set(__self__, "assertions", assertions)
2979
+ if data is not None:
2980
+ pulumi.set(__self__, "data", data)
2981
+ if ip_family is not None:
2982
+ pulumi.set(__self__, "ip_family", ip_family)
2983
+
2984
+ @property
2985
+ @pulumi.getter
2986
+ def hostname(self) -> str:
2987
+ """
2988
+ The hostname or IP to connect to. Do not include a scheme or a port in this value.
2989
+ """
2990
+ return pulumi.get(self, "hostname")
2991
+
2992
+ @property
2993
+ @pulumi.getter
2994
+ def port(self) -> int:
2995
+ """
2996
+ The port number to connect to.
2997
+ """
2998
+ return pulumi.get(self, "port")
2999
+
3000
+ @property
3001
+ @pulumi.getter
3002
+ def assertions(self) -> Optional[Sequence['outputs.TcpCheckRequestAssertion']]:
3003
+ """
3004
+ A request can have multiple assertions.
3005
+ """
3006
+ return pulumi.get(self, "assertions")
3007
+
3008
+ @property
3009
+ @pulumi.getter
3010
+ def data(self) -> Optional[str]:
3011
+ """
3012
+ The data to send to the target host.
3013
+ """
3014
+ return pulumi.get(self, "data")
3015
+
3016
+ @property
3017
+ @pulumi.getter(name="ipFamily")
3018
+ def ip_family(self) -> Optional[str]:
3019
+ """
3020
+ The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
3021
+ """
3022
+ return pulumi.get(self, "ip_family")
3023
+
3024
+
3025
+ @pulumi.output_type
3026
+ class TcpCheckRequestAssertion(dict):
3027
+ def __init__(__self__, *,
3028
+ comparison: str,
3029
+ source: str,
3030
+ property: Optional[str] = None,
3031
+ target: Optional[str] = None):
3032
+ """
3033
+ :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`.
3034
+ :param str source: The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
3035
+ """
3036
+ pulumi.set(__self__, "comparison", comparison)
3037
+ pulumi.set(__self__, "source", source)
3038
+ if property is not None:
3039
+ pulumi.set(__self__, "property", property)
3040
+ if target is not None:
3041
+ pulumi.set(__self__, "target", target)
3042
+
3043
+ @property
3044
+ @pulumi.getter
3045
+ def comparison(self) -> str:
3046
+ """
3047
+ 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`.
3048
+ """
3049
+ return pulumi.get(self, "comparison")
3050
+
3051
+ @property
3052
+ @pulumi.getter
3053
+ def source(self) -> str:
3054
+ """
3055
+ The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
3056
+ """
3057
+ return pulumi.get(self, "source")
3058
+
3059
+ @property
3060
+ @pulumi.getter
3061
+ def target(self) -> Optional[str]:
3062
+ return pulumi.get(self, "target")
3063
+
3064
+ @property
3065
+ @pulumi.getter
3066
+ def property(self) -> Optional[str]:
3067
+ return pulumi.get(self, "property")
3068
+
3069
+
3070
+ @pulumi.output_type
3071
+ class TcpCheckRetryStrategy(dict):
3072
+ @staticmethod
3073
+ def __key_warning(key: str):
3074
+ suggest = None
3075
+ if key == "baseBackoffSeconds":
3076
+ suggest = "base_backoff_seconds"
3077
+ elif key == "maxDurationSeconds":
3078
+ suggest = "max_duration_seconds"
3079
+ elif key == "maxRetries":
3080
+ suggest = "max_retries"
3081
+ elif key == "sameRegion":
3082
+ suggest = "same_region"
3083
+
3084
+ if suggest:
3085
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckRetryStrategy. Access the value via the '{suggest}' property getter instead.")
3086
+
3087
+ def __getitem__(self, key: str) -> Any:
3088
+ TcpCheckRetryStrategy.__key_warning(key)
3089
+ return super().__getitem__(key)
3090
+
3091
+ def get(self, key: str, default = None) -> Any:
3092
+ TcpCheckRetryStrategy.__key_warning(key)
3093
+ return super().get(key, default)
3094
+
3095
+ def __init__(__self__, *,
3096
+ type: str,
3097
+ base_backoff_seconds: Optional[int] = None,
3098
+ max_duration_seconds: Optional[int] = None,
3099
+ max_retries: Optional[int] = None,
3100
+ same_region: Optional[bool] = None):
3101
+ """
3102
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
3103
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
3104
+ :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
3105
+ :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
3106
+ :param bool same_region: Whether retries should be run in the same region as the initial check run.
3107
+ """
3108
+ pulumi.set(__self__, "type", type)
3109
+ if base_backoff_seconds is not None:
3110
+ pulumi.set(__self__, "base_backoff_seconds", base_backoff_seconds)
3111
+ if max_duration_seconds is not None:
3112
+ pulumi.set(__self__, "max_duration_seconds", max_duration_seconds)
3113
+ if max_retries is not None:
3114
+ pulumi.set(__self__, "max_retries", max_retries)
3115
+ if same_region is not None:
3116
+ pulumi.set(__self__, "same_region", same_region)
3117
+
3118
+ @property
3119
+ @pulumi.getter
3120
+ def type(self) -> str:
3121
+ """
3122
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
3123
+ """
3124
+ return pulumi.get(self, "type")
3125
+
3126
+ @property
3127
+ @pulumi.getter(name="baseBackoffSeconds")
3128
+ def base_backoff_seconds(self) -> Optional[int]:
3129
+ """
3130
+ The number of seconds to wait before the first retry attempt.
3131
+ """
3132
+ return pulumi.get(self, "base_backoff_seconds")
3133
+
3134
+ @property
3135
+ @pulumi.getter(name="maxDurationSeconds")
3136
+ def max_duration_seconds(self) -> Optional[int]:
3137
+ """
3138
+ The total amount of time to continue retrying the check (maximum 600 seconds).
3139
+ """
3140
+ return pulumi.get(self, "max_duration_seconds")
3141
+
3142
+ @property
3143
+ @pulumi.getter(name="maxRetries")
3144
+ def max_retries(self) -> Optional[int]:
3145
+ """
3146
+ The maximum number of times to retry the check. Value must be between 1 and 10.
3147
+ """
3148
+ return pulumi.get(self, "max_retries")
3149
+
3150
+ @property
3151
+ @pulumi.getter(name="sameRegion")
3152
+ def same_region(self) -> Optional[bool]:
3153
+ """
3154
+ Whether retries should be run in the same region as the initial check run.
3155
+ """
3156
+ return pulumi.get(self, "same_region")
3157
+
3158
+
3159
+ @pulumi.output_type
3160
+ class TcpCheckTriggerIncident(dict):
3161
+ @staticmethod
3162
+ def __key_warning(key: str):
3163
+ suggest = None
3164
+ if key == "notifySubscribers":
3165
+ suggest = "notify_subscribers"
3166
+ elif key == "serviceId":
3167
+ suggest = "service_id"
3168
+
3169
+ if suggest:
3170
+ pulumi.log.warn(f"Key '{key}' not found in TcpCheckTriggerIncident. Access the value via the '{suggest}' property getter instead.")
3171
+
3172
+ def __getitem__(self, key: str) -> Any:
3173
+ TcpCheckTriggerIncident.__key_warning(key)
3174
+ return super().__getitem__(key)
3175
+
3176
+ def get(self, key: str, default = None) -> Any:
3177
+ TcpCheckTriggerIncident.__key_warning(key)
3178
+ return super().get(key, default)
3179
+
3180
+ def __init__(__self__, *,
3181
+ description: str,
3182
+ name: str,
3183
+ notify_subscribers: bool,
3184
+ service_id: str,
3185
+ severity: str):
3186
+ """
3187
+ :param str description: A detailed description of the incident.
3188
+ :param str name: The name of the incident.
3189
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
3190
+ :param str service_id: The status page service that this incident will be associated with.
3191
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
3192
+ """
3193
+ pulumi.set(__self__, "description", description)
3194
+ pulumi.set(__self__, "name", name)
3195
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
3196
+ pulumi.set(__self__, "service_id", service_id)
3197
+ pulumi.set(__self__, "severity", severity)
3198
+
3199
+ @property
3200
+ @pulumi.getter
3201
+ def description(self) -> str:
3202
+ """
3203
+ A detailed description of the incident.
3204
+ """
3205
+ return pulumi.get(self, "description")
3206
+
3207
+ @property
3208
+ @pulumi.getter
3209
+ def name(self) -> str:
3210
+ """
3211
+ The name of the incident.
3212
+ """
3213
+ return pulumi.get(self, "name")
3214
+
3215
+ @property
3216
+ @pulumi.getter(name="notifySubscribers")
3217
+ def notify_subscribers(self) -> bool:
3218
+ """
3219
+ Whether to notify subscribers when the incident is triggered.
3220
+ """
3221
+ return pulumi.get(self, "notify_subscribers")
3222
+
3223
+ @property
3224
+ @pulumi.getter(name="serviceId")
3225
+ def service_id(self) -> str:
3226
+ """
3227
+ The status page service that this incident will be associated with.
3228
+ """
3229
+ return pulumi.get(self, "service_id")
3230
+
3231
+ @property
3232
+ @pulumi.getter
3233
+ def severity(self) -> str:
3234
+ """
3235
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
3236
+ """
3237
+ return pulumi.get(self, "severity")
3238
+
3239
+
3240
+ @pulumi.output_type
3241
+ class TcpMonitorAlertChannelSubscription(dict):
3242
+ @staticmethod
3243
+ def __key_warning(key: str):
3244
+ suggest = None
3245
+ if key == "channelId":
3246
+ suggest = "channel_id"
3247
+
3248
+ if suggest:
3249
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
3250
+
3251
+ def __getitem__(self, key: str) -> Any:
3252
+ TcpMonitorAlertChannelSubscription.__key_warning(key)
3253
+ return super().__getitem__(key)
3254
+
3255
+ def get(self, key: str, default = None) -> Any:
3256
+ TcpMonitorAlertChannelSubscription.__key_warning(key)
3257
+ return super().get(key, default)
3258
+
3259
+ def __init__(__self__, *,
3260
+ activated: bool,
3261
+ channel_id: int):
3262
+ pulumi.set(__self__, "activated", activated)
3263
+ pulumi.set(__self__, "channel_id", channel_id)
3264
+
3265
+ @property
3266
+ @pulumi.getter
3267
+ def activated(self) -> bool:
3268
+ return pulumi.get(self, "activated")
3269
+
3270
+ @property
3271
+ @pulumi.getter(name="channelId")
3272
+ def channel_id(self) -> int:
3273
+ return pulumi.get(self, "channel_id")
3274
+
3275
+
3276
+ @pulumi.output_type
3277
+ class TcpMonitorAlertSettings(dict):
3278
+ @staticmethod
3279
+ def __key_warning(key: str):
3280
+ suggest = None
3281
+ if key == "escalationType":
3282
+ suggest = "escalation_type"
3283
+ elif key == "parallelRunFailureThresholds":
3284
+ suggest = "parallel_run_failure_thresholds"
3285
+ elif key == "runBasedEscalations":
3286
+ suggest = "run_based_escalations"
3287
+ elif key == "timeBasedEscalations":
3288
+ suggest = "time_based_escalations"
3289
+
3290
+ if suggest:
3291
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorAlertSettings. Access the value via the '{suggest}' property getter instead.")
3292
+
3293
+ def __getitem__(self, key: str) -> Any:
3294
+ TcpMonitorAlertSettings.__key_warning(key)
3295
+ return super().__getitem__(key)
3296
+
3297
+ def get(self, key: str, default = None) -> Any:
3298
+ TcpMonitorAlertSettings.__key_warning(key)
3299
+ return super().get(key, default)
3300
+
3301
+ def __init__(__self__, *,
3302
+ escalation_type: Optional[str] = None,
3303
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.TcpMonitorAlertSettingsParallelRunFailureThreshold']] = None,
3304
+ reminders: Optional[Sequence['outputs.TcpMonitorAlertSettingsReminder']] = None,
3305
+ run_based_escalations: Optional[Sequence['outputs.TcpMonitorAlertSettingsRunBasedEscalation']] = None,
3306
+ time_based_escalations: Optional[Sequence['outputs.TcpMonitorAlertSettingsTimeBasedEscalation']] = None):
3307
+ """
3308
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
3309
+ """
3310
+ if escalation_type is not None:
3311
+ pulumi.set(__self__, "escalation_type", escalation_type)
3312
+ if parallel_run_failure_thresholds is not None:
3313
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
3314
+ if reminders is not None:
3315
+ pulumi.set(__self__, "reminders", reminders)
3316
+ if run_based_escalations is not None:
3317
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
3318
+ if time_based_escalations is not None:
3319
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
3320
+
3321
+ @property
3322
+ @pulumi.getter(name="escalationType")
3323
+ def escalation_type(self) -> Optional[str]:
3324
+ """
3325
+ Determines what type of escalation to use. Possible values are `RUN_BASED` or `TIME_BASED`.
3326
+ """
3327
+ return pulumi.get(self, "escalation_type")
3328
+
3329
+ @property
3330
+ @pulumi.getter(name="parallelRunFailureThresholds")
3331
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.TcpMonitorAlertSettingsParallelRunFailureThreshold']]:
3332
+ return pulumi.get(self, "parallel_run_failure_thresholds")
3333
+
3334
+ @property
3335
+ @pulumi.getter
3336
+ def reminders(self) -> Optional[Sequence['outputs.TcpMonitorAlertSettingsReminder']]:
3337
+ return pulumi.get(self, "reminders")
3338
+
3339
+ @property
3340
+ @pulumi.getter(name="runBasedEscalations")
3341
+ def run_based_escalations(self) -> Optional[Sequence['outputs.TcpMonitorAlertSettingsRunBasedEscalation']]:
3342
+ return pulumi.get(self, "run_based_escalations")
3343
+
3344
+ @property
3345
+ @pulumi.getter(name="timeBasedEscalations")
3346
+ def time_based_escalations(self) -> Optional[Sequence['outputs.TcpMonitorAlertSettingsTimeBasedEscalation']]:
3347
+ return pulumi.get(self, "time_based_escalations")
3348
+
3349
+
3350
+ @pulumi.output_type
3351
+ class TcpMonitorAlertSettingsParallelRunFailureThreshold(dict):
3352
+ def __init__(__self__, *,
3353
+ enabled: Optional[bool] = None,
3354
+ percentage: Optional[int] = None):
3355
+ """
3356
+ :param bool enabled: Applicable only for checks scheduled in parallel in multiple locations.
3357
+ :param int percentage: Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
3358
+ """
3359
+ if enabled is not None:
3360
+ pulumi.set(__self__, "enabled", enabled)
3361
+ if percentage is not None:
3362
+ pulumi.set(__self__, "percentage", percentage)
3363
+
3364
+ @property
3365
+ @pulumi.getter
3366
+ def enabled(self) -> Optional[bool]:
3367
+ """
3368
+ Applicable only for checks scheduled in parallel in multiple locations.
3369
+ """
3370
+ return pulumi.get(self, "enabled")
3371
+
3372
+ @property
3373
+ @pulumi.getter
3374
+ def percentage(self) -> Optional[int]:
3375
+ """
3376
+ Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `100`, and `100`. (Default `10`).
3377
+ """
3378
+ return pulumi.get(self, "percentage")
3379
+
3380
+
3381
+ @pulumi.output_type
3382
+ class TcpMonitorAlertSettingsReminder(dict):
3383
+ def __init__(__self__, *,
3384
+ amount: Optional[int] = None,
3385
+ interval: Optional[int] = None):
3386
+ """
3387
+ :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`
3388
+ :param int interval: Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
3389
+ """
3390
+ if amount is not None:
3391
+ pulumi.set(__self__, "amount", amount)
3392
+ if interval is not None:
3393
+ pulumi.set(__self__, "interval", interval)
3394
+
3395
+ @property
3396
+ @pulumi.getter
3397
+ def amount(self) -> Optional[int]:
3398
+ """
3399
+ How many reminders to send out after the initial alert notification. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000`
3400
+ """
3401
+ return pulumi.get(self, "amount")
3402
+
3403
+ @property
3404
+ @pulumi.getter
3405
+ def interval(self) -> Optional[int]:
3406
+ """
3407
+ Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
3408
+ """
3409
+ return pulumi.get(self, "interval")
3410
+
3411
+
3412
+ @pulumi.output_type
3413
+ class TcpMonitorAlertSettingsRunBasedEscalation(dict):
3414
+ @staticmethod
3415
+ def __key_warning(key: str):
3416
+ suggest = None
3417
+ if key == "failedRunThreshold":
3418
+ suggest = "failed_run_threshold"
3419
+
3420
+ if suggest:
3421
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
3422
+
3423
+ def __getitem__(self, key: str) -> Any:
3424
+ TcpMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
3425
+ return super().__getitem__(key)
3426
+
3427
+ def get(self, key: str, default = None) -> Any:
3428
+ TcpMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
3429
+ return super().get(key, default)
3430
+
3431
+ def __init__(__self__, *,
3432
+ failed_run_threshold: Optional[int] = None):
3433
+ """
3434
+ :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`).
3435
+ """
3436
+ if failed_run_threshold is not None:
3437
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
3438
+
3439
+ @property
3440
+ @pulumi.getter(name="failedRunThreshold")
3441
+ def failed_run_threshold(self) -> Optional[int]:
3442
+ """
3443
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between 1 and 5. (Default `1`).
3444
+ """
3445
+ return pulumi.get(self, "failed_run_threshold")
3446
+
3447
+
3448
+ @pulumi.output_type
3449
+ class TcpMonitorAlertSettingsTimeBasedEscalation(dict):
3450
+ @staticmethod
3451
+ def __key_warning(key: str):
3452
+ suggest = None
3453
+ if key == "minutesFailingThreshold":
3454
+ suggest = "minutes_failing_threshold"
3455
+
3456
+ if suggest:
3457
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
3458
+
3459
+ def __getitem__(self, key: str) -> Any:
3460
+ TcpMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
3461
+ return super().__getitem__(key)
3462
+
3463
+ def get(self, key: str, default = None) -> Any:
3464
+ TcpMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
3465
+ return super().get(key, default)
3466
+
3467
+ def __init__(__self__, *,
3468
+ minutes_failing_threshold: Optional[int] = None):
3469
+ """
3470
+ :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`).
3471
+ """
3472
+ if minutes_failing_threshold is not None:
3473
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
3474
+
3475
+ @property
3476
+ @pulumi.getter(name="minutesFailingThreshold")
3477
+ def minutes_failing_threshold(self) -> Optional[int]:
3478
+ """
3479
+ After how many minutes after a check starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
3480
+ """
3481
+ return pulumi.get(self, "minutes_failing_threshold")
3482
+
3483
+
3484
+ @pulumi.output_type
3485
+ class TcpMonitorRequest(dict):
3486
+ @staticmethod
3487
+ def __key_warning(key: str):
3488
+ suggest = None
3489
+ if key == "ipFamily":
3490
+ suggest = "ip_family"
3491
+
3492
+ if suggest:
3493
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorRequest. Access the value via the '{suggest}' property getter instead.")
3494
+
3495
+ def __getitem__(self, key: str) -> Any:
3496
+ TcpMonitorRequest.__key_warning(key)
3497
+ return super().__getitem__(key)
3498
+
3499
+ def get(self, key: str, default = None) -> Any:
3500
+ TcpMonitorRequest.__key_warning(key)
3501
+ return super().get(key, default)
3502
+
3503
+ def __init__(__self__, *,
3504
+ hostname: str,
3505
+ port: int,
3506
+ assertions: Optional[Sequence['outputs.TcpMonitorRequestAssertion']] = None,
3507
+ data: Optional[str] = None,
3508
+ ip_family: Optional[str] = None):
3509
+ """
3510
+ :param str hostname: The hostname or IP to connect to. Do not include a scheme or a port in this value.
3511
+ :param int port: The port number to connect to.
3512
+ :param Sequence['TcpMonitorRequestAssertionArgs'] assertions: A request can have multiple assertions.
3513
+ :param str data: The data to send to the target host.
3514
+ :param str ip_family: The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
3515
+ """
3516
+ pulumi.set(__self__, "hostname", hostname)
3517
+ pulumi.set(__self__, "port", port)
3518
+ if assertions is not None:
3519
+ pulumi.set(__self__, "assertions", assertions)
3520
+ if data is not None:
3521
+ pulumi.set(__self__, "data", data)
3522
+ if ip_family is not None:
3523
+ pulumi.set(__self__, "ip_family", ip_family)
3524
+
3525
+ @property
3526
+ @pulumi.getter
3527
+ def hostname(self) -> str:
3528
+ """
3529
+ The hostname or IP to connect to. Do not include a scheme or a port in this value.
3530
+ """
3531
+ return pulumi.get(self, "hostname")
3532
+
3533
+ @property
3534
+ @pulumi.getter
3535
+ def port(self) -> int:
3536
+ """
3537
+ The port number to connect to.
3538
+ """
3539
+ return pulumi.get(self, "port")
3540
+
3541
+ @property
3542
+ @pulumi.getter
3543
+ def assertions(self) -> Optional[Sequence['outputs.TcpMonitorRequestAssertion']]:
3544
+ """
3545
+ A request can have multiple assertions.
3546
+ """
3547
+ return pulumi.get(self, "assertions")
3548
+
3549
+ @property
3550
+ @pulumi.getter
3551
+ def data(self) -> Optional[str]:
3552
+ """
3553
+ The data to send to the target host.
3554
+ """
3555
+ return pulumi.get(self, "data")
3556
+
3557
+ @property
3558
+ @pulumi.getter(name="ipFamily")
3559
+ def ip_family(self) -> Optional[str]:
3560
+ """
3561
+ The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
3562
+ """
3563
+ return pulumi.get(self, "ip_family")
3564
+
3565
+
3566
+ @pulumi.output_type
3567
+ class TcpMonitorRequestAssertion(dict):
3568
+ def __init__(__self__, *,
3569
+ comparison: str,
3570
+ source: str,
3571
+ property: Optional[str] = None,
3572
+ target: Optional[str] = None):
3573
+ """
3574
+ :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`.
3575
+ :param str source: The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
3576
+ """
3577
+ pulumi.set(__self__, "comparison", comparison)
3578
+ pulumi.set(__self__, "source", source)
3579
+ if property is not None:
3580
+ pulumi.set(__self__, "property", property)
3581
+ if target is not None:
3582
+ pulumi.set(__self__, "target", target)
3583
+
3584
+ @property
3585
+ @pulumi.getter
3586
+ def comparison(self) -> str:
3587
+ """
3588
+ 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`.
3589
+ """
3590
+ return pulumi.get(self, "comparison")
3591
+
3592
+ @property
3593
+ @pulumi.getter
3594
+ def source(self) -> str:
3595
+ """
3596
+ The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
3597
+ """
3598
+ return pulumi.get(self, "source")
3599
+
3600
+ @property
3601
+ @pulumi.getter
3602
+ def target(self) -> Optional[str]:
3603
+ return pulumi.get(self, "target")
3604
+
3605
+ @property
3606
+ @pulumi.getter
3607
+ def property(self) -> Optional[str]:
3608
+ return pulumi.get(self, "property")
3609
+
3610
+
3611
+ @pulumi.output_type
3612
+ class TcpMonitorRetryStrategy(dict):
3613
+ @staticmethod
3614
+ def __key_warning(key: str):
3615
+ suggest = None
3616
+ if key == "baseBackoffSeconds":
3617
+ suggest = "base_backoff_seconds"
3618
+ elif key == "maxDurationSeconds":
3619
+ suggest = "max_duration_seconds"
3620
+ elif key == "maxRetries":
3621
+ suggest = "max_retries"
3622
+ elif key == "sameRegion":
3623
+ suggest = "same_region"
3624
+
3625
+ if suggest:
3626
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorRetryStrategy. Access the value via the '{suggest}' property getter instead.")
3627
+
3628
+ def __getitem__(self, key: str) -> Any:
3629
+ TcpMonitorRetryStrategy.__key_warning(key)
3630
+ return super().__getitem__(key)
3631
+
3632
+ def get(self, key: str, default = None) -> Any:
3633
+ TcpMonitorRetryStrategy.__key_warning(key)
3634
+ return super().get(key, default)
3635
+
3636
+ def __init__(__self__, *,
3637
+ type: str,
3638
+ base_backoff_seconds: Optional[int] = None,
3639
+ max_duration_seconds: Optional[int] = None,
3640
+ max_retries: Optional[int] = None,
3641
+ same_region: Optional[bool] = None):
3642
+ """
3643
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
3644
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
3645
+ :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
3646
+ :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
3647
+ :param bool same_region: Whether retries should be run in the same region as the initial check run.
3648
+ """
3649
+ pulumi.set(__self__, "type", type)
3650
+ if base_backoff_seconds is not None:
3651
+ pulumi.set(__self__, "base_backoff_seconds", base_backoff_seconds)
3652
+ if max_duration_seconds is not None:
3653
+ pulumi.set(__self__, "max_duration_seconds", max_duration_seconds)
3654
+ if max_retries is not None:
3655
+ pulumi.set(__self__, "max_retries", max_retries)
3656
+ if same_region is not None:
3657
+ pulumi.set(__self__, "same_region", same_region)
3658
+
3659
+ @property
3660
+ @pulumi.getter
3661
+ def type(self) -> str:
3662
+ """
3663
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
3664
+ """
3665
+ return pulumi.get(self, "type")
3666
+
3667
+ @property
3668
+ @pulumi.getter(name="baseBackoffSeconds")
3669
+ def base_backoff_seconds(self) -> Optional[int]:
3670
+ """
3671
+ The number of seconds to wait before the first retry attempt.
3672
+ """
3673
+ return pulumi.get(self, "base_backoff_seconds")
3674
+
3675
+ @property
3676
+ @pulumi.getter(name="maxDurationSeconds")
3677
+ def max_duration_seconds(self) -> Optional[int]:
3678
+ """
3679
+ The total amount of time to continue retrying the check (maximum 600 seconds).
3680
+ """
3681
+ return pulumi.get(self, "max_duration_seconds")
3682
+
3683
+ @property
3684
+ @pulumi.getter(name="maxRetries")
3685
+ def max_retries(self) -> Optional[int]:
3686
+ """
3687
+ The maximum number of times to retry the check. Value must be between 1 and 10.
3688
+ """
3689
+ return pulumi.get(self, "max_retries")
3690
+
3691
+ @property
3692
+ @pulumi.getter(name="sameRegion")
3693
+ def same_region(self) -> Optional[bool]:
3694
+ """
3695
+ Whether retries should be run in the same region as the initial check run.
3696
+ """
3697
+ return pulumi.get(self, "same_region")
3698
+
3699
+
3700
+ @pulumi.output_type
3701
+ class TcpMonitorTriggerIncident(dict):
3702
+ @staticmethod
3703
+ def __key_warning(key: str):
3704
+ suggest = None
3705
+ if key == "notifySubscribers":
3706
+ suggest = "notify_subscribers"
3707
+ elif key == "serviceId":
3708
+ suggest = "service_id"
3709
+
3710
+ if suggest:
3711
+ pulumi.log.warn(f"Key '{key}' not found in TcpMonitorTriggerIncident. Access the value via the '{suggest}' property getter instead.")
3712
+
3713
+ def __getitem__(self, key: str) -> Any:
3714
+ TcpMonitorTriggerIncident.__key_warning(key)
3715
+ return super().__getitem__(key)
3716
+
3717
+ def get(self, key: str, default = None) -> Any:
3718
+ TcpMonitorTriggerIncident.__key_warning(key)
3719
+ return super().get(key, default)
3720
+
3721
+ def __init__(__self__, *,
3722
+ description: str,
3723
+ name: str,
3724
+ notify_subscribers: bool,
3725
+ service_id: str,
3726
+ severity: str):
3727
+ """
3728
+ :param str description: A detailed description of the incident.
3729
+ :param str name: The name of the incident.
3730
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
3731
+ :param str service_id: The status page service that this incident will be associated with.
3732
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
3733
+ """
3734
+ pulumi.set(__self__, "description", description)
3735
+ pulumi.set(__self__, "name", name)
3736
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
3737
+ pulumi.set(__self__, "service_id", service_id)
3738
+ pulumi.set(__self__, "severity", severity)
3739
+
3740
+ @property
3741
+ @pulumi.getter
3742
+ def description(self) -> str:
3743
+ """
3744
+ A detailed description of the incident.
3745
+ """
3746
+ return pulumi.get(self, "description")
3747
+
3748
+ @property
3749
+ @pulumi.getter
3750
+ def name(self) -> str:
3751
+ """
3752
+ The name of the incident.
3753
+ """
3754
+ return pulumi.get(self, "name")
3755
+
3756
+ @property
3757
+ @pulumi.getter(name="notifySubscribers")
3758
+ def notify_subscribers(self) -> bool:
3759
+ """
3760
+ Whether to notify subscribers when the incident is triggered.
3761
+ """
3762
+ return pulumi.get(self, "notify_subscribers")
3763
+
3764
+ @property
3765
+ @pulumi.getter(name="serviceId")
3766
+ def service_id(self) -> str:
3767
+ """
3768
+ The status page service that this incident will be associated with.
3769
+ """
3770
+ return pulumi.get(self, "service_id")
3771
+
3772
+ @property
3773
+ @pulumi.getter
3774
+ def severity(self) -> str:
3775
+ """
3776
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
3777
+ """
3778
+ return pulumi.get(self, "severity")
3779
+
3780
+
3781
+ @pulumi.output_type
3782
+ class UrlMonitorAlertChannelSubscription(dict):
3783
+ @staticmethod
3784
+ def __key_warning(key: str):
3785
+ suggest = None
3786
+ if key == "channelId":
3787
+ suggest = "channel_id"
3788
+
3789
+ if suggest:
3790
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorAlertChannelSubscription. Access the value via the '{suggest}' property getter instead.")
3791
+
3792
+ def __getitem__(self, key: str) -> Any:
3793
+ UrlMonitorAlertChannelSubscription.__key_warning(key)
3794
+ return super().__getitem__(key)
3795
+
3796
+ def get(self, key: str, default = None) -> Any:
3797
+ UrlMonitorAlertChannelSubscription.__key_warning(key)
3798
+ return super().get(key, default)
3799
+
3800
+ def __init__(__self__, *,
3801
+ activated: bool,
3802
+ channel_id: int):
3803
+ """
3804
+ :param bool activated: Whether an alert should be sent to this channel.
3805
+ :param int channel_id: The ID of the alert channel.
3806
+ """
3807
+ pulumi.set(__self__, "activated", activated)
3808
+ pulumi.set(__self__, "channel_id", channel_id)
3809
+
3810
+ @property
3811
+ @pulumi.getter
3812
+ def activated(self) -> bool:
3813
+ """
3814
+ Whether an alert should be sent to this channel.
3815
+ """
3816
+ return pulumi.get(self, "activated")
3817
+
3818
+ @property
3819
+ @pulumi.getter(name="channelId")
3820
+ def channel_id(self) -> int:
3821
+ """
3822
+ The ID of the alert channel.
3823
+ """
3824
+ return pulumi.get(self, "channel_id")
3825
+
3826
+
3827
+ @pulumi.output_type
3828
+ class UrlMonitorAlertSettings(dict):
3829
+ @staticmethod
3830
+ def __key_warning(key: str):
3831
+ suggest = None
3832
+ if key == "escalationType":
3833
+ suggest = "escalation_type"
3834
+ elif key == "parallelRunFailureThresholds":
3835
+ suggest = "parallel_run_failure_thresholds"
3836
+ elif key == "runBasedEscalations":
3837
+ suggest = "run_based_escalations"
3838
+ elif key == "timeBasedEscalations":
3839
+ suggest = "time_based_escalations"
3840
+
3841
+ if suggest:
3842
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorAlertSettings. Access the value via the '{suggest}' property getter instead.")
3843
+
3844
+ def __getitem__(self, key: str) -> Any:
3845
+ UrlMonitorAlertSettings.__key_warning(key)
3846
+ return super().__getitem__(key)
3847
+
3848
+ def get(self, key: str, default = None) -> Any:
3849
+ UrlMonitorAlertSettings.__key_warning(key)
3850
+ return super().get(key, default)
3851
+
3852
+ def __init__(__self__, *,
3853
+ escalation_type: str,
3854
+ parallel_run_failure_thresholds: Optional[Sequence['outputs.UrlMonitorAlertSettingsParallelRunFailureThreshold']] = None,
3855
+ reminders: Optional[Sequence['outputs.UrlMonitorAlertSettingsReminder']] = None,
3856
+ run_based_escalations: Optional[Sequence['outputs.UrlMonitorAlertSettingsRunBasedEscalation']] = None,
3857
+ time_based_escalations: Optional[Sequence['outputs.UrlMonitorAlertSettingsTimeBasedEscalation']] = None):
3858
+ """
3859
+ :param str escalation_type: Determines what type of escalation to use. Possible values are `RUN_BASED` and `TIME_BASED`.
3860
+ :param Sequence['UrlMonitorAlertSettingsParallelRunFailureThresholdArgs'] parallel_run_failure_thresholds: Configuration for parallel run failure threshold.
3861
+ :param Sequence['UrlMonitorAlertSettingsReminderArgs'] reminders: Defines how often to send reminder notifications after initial alert.
3862
+ :param Sequence['UrlMonitorAlertSettingsRunBasedEscalationArgs'] run_based_escalations: Configuration for run-based escalation.
3863
+ :param Sequence['UrlMonitorAlertSettingsTimeBasedEscalationArgs'] time_based_escalations: Configuration for time-based escalation.
3864
+ """
3865
+ pulumi.set(__self__, "escalation_type", escalation_type)
3866
+ if parallel_run_failure_thresholds is not None:
3867
+ pulumi.set(__self__, "parallel_run_failure_thresholds", parallel_run_failure_thresholds)
3868
+ if reminders is not None:
3869
+ pulumi.set(__self__, "reminders", reminders)
3870
+ if run_based_escalations is not None:
3871
+ pulumi.set(__self__, "run_based_escalations", run_based_escalations)
3872
+ if time_based_escalations is not None:
3873
+ pulumi.set(__self__, "time_based_escalations", time_based_escalations)
3874
+
3875
+ @property
3876
+ @pulumi.getter(name="escalationType")
3877
+ def escalation_type(self) -> str:
3878
+ """
3879
+ Determines what type of escalation to use. Possible values are `RUN_BASED` and `TIME_BASED`.
3880
+ """
3881
+ return pulumi.get(self, "escalation_type")
3882
+
3883
+ @property
3884
+ @pulumi.getter(name="parallelRunFailureThresholds")
3885
+ def parallel_run_failure_thresholds(self) -> Optional[Sequence['outputs.UrlMonitorAlertSettingsParallelRunFailureThreshold']]:
3886
+ """
3887
+ Configuration for parallel run failure threshold.
3888
+ """
3889
+ return pulumi.get(self, "parallel_run_failure_thresholds")
3890
+
3891
+ @property
3892
+ @pulumi.getter
3893
+ def reminders(self) -> Optional[Sequence['outputs.UrlMonitorAlertSettingsReminder']]:
3894
+ """
3895
+ Defines how often to send reminder notifications after initial alert.
3896
+ """
3897
+ return pulumi.get(self, "reminders")
3898
+
3899
+ @property
3900
+ @pulumi.getter(name="runBasedEscalations")
3901
+ def run_based_escalations(self) -> Optional[Sequence['outputs.UrlMonitorAlertSettingsRunBasedEscalation']]:
3902
+ """
3903
+ Configuration for run-based escalation.
3904
+ """
3905
+ return pulumi.get(self, "run_based_escalations")
3906
+
3907
+ @property
3908
+ @pulumi.getter(name="timeBasedEscalations")
3909
+ def time_based_escalations(self) -> Optional[Sequence['outputs.UrlMonitorAlertSettingsTimeBasedEscalation']]:
3910
+ """
3911
+ Configuration for time-based escalation.
3912
+ """
3913
+ return pulumi.get(self, "time_based_escalations")
3914
+
3915
+
3916
+ @pulumi.output_type
3917
+ class UrlMonitorAlertSettingsParallelRunFailureThreshold(dict):
3918
+ def __init__(__self__, *,
3919
+ enabled: Optional[bool] = None,
3920
+ percentage: Optional[int] = None):
3921
+ """
3922
+ :param bool enabled: Whether parallel run failure threshold is enabled. Applicable only for monitors scheduled in parallel in multiple locations. (Default `false`).
3923
+ :param int percentage: Percentage of runs that must fail to trigger alert. Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, and `100`. (Default `10`).
3924
+ """
3925
+ if enabled is not None:
3926
+ pulumi.set(__self__, "enabled", enabled)
3927
+ if percentage is not None:
3928
+ pulumi.set(__self__, "percentage", percentage)
3929
+
3930
+ @property
3931
+ @pulumi.getter
3932
+ def enabled(self) -> Optional[bool]:
3933
+ """
3934
+ Whether parallel run failure threshold is enabled. Applicable only for monitors scheduled in parallel in multiple locations. (Default `false`).
3935
+ """
3936
+ return pulumi.get(self, "enabled")
3937
+
3938
+ @property
3939
+ @pulumi.getter
3940
+ def percentage(self) -> Optional[int]:
3941
+ """
3942
+ Percentage of runs that must fail to trigger alert. Possible values are `10`, `20`, `30`, `40`, `50`, `60`, `70`, `80`, `90`, and `100`. (Default `10`).
3943
+ """
3944
+ return pulumi.get(self, "percentage")
3945
+
3946
+
3947
+ @pulumi.output_type
3948
+ class UrlMonitorAlertSettingsReminder(dict):
3949
+ def __init__(__self__, *,
3950
+ amount: Optional[int] = None,
3951
+ interval: Optional[int] = None):
3952
+ """
3953
+ :param int amount: Number of reminder notifications to send. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000` (`0` to disable, `100000` for unlimited). (Default `0`).
3954
+ :param int interval: Interval between reminder notifications in minutes. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
3955
+ """
3956
+ if amount is not None:
3957
+ pulumi.set(__self__, "amount", amount)
3958
+ if interval is not None:
3959
+ pulumi.set(__self__, "interval", interval)
3960
+
3961
+ @property
3962
+ @pulumi.getter
3963
+ def amount(self) -> Optional[int]:
3964
+ """
3965
+ Number of reminder notifications to send. Possible values are `0`, `1`, `2`, `3`, `4`, `5`, and `100000` (`0` to disable, `100000` for unlimited). (Default `0`).
3966
+ """
3967
+ return pulumi.get(self, "amount")
3968
+
3969
+ @property
3970
+ @pulumi.getter
3971
+ def interval(self) -> Optional[int]:
3972
+ """
3973
+ Interval between reminder notifications in minutes. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
3974
+ """
3975
+ return pulumi.get(self, "interval")
3976
+
3977
+
3978
+ @pulumi.output_type
3979
+ class UrlMonitorAlertSettingsRunBasedEscalation(dict):
3980
+ @staticmethod
3981
+ def __key_warning(key: str):
3982
+ suggest = None
3983
+ if key == "failedRunThreshold":
3984
+ suggest = "failed_run_threshold"
3985
+
3986
+ if suggest:
3987
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorAlertSettingsRunBasedEscalation. Access the value via the '{suggest}' property getter instead.")
3988
+
3989
+ def __getitem__(self, key: str) -> Any:
3990
+ UrlMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
3991
+ return super().__getitem__(key)
3992
+
3993
+ def get(self, key: str, default = None) -> Any:
3994
+ UrlMonitorAlertSettingsRunBasedEscalation.__key_warning(key)
3995
+ return super().get(key, default)
3996
+
3997
+ def __init__(__self__, *,
3998
+ failed_run_threshold: Optional[int] = None):
3999
+ """
4000
+ :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`).
4001
+ """
4002
+ if failed_run_threshold is not None:
4003
+ pulumi.set(__self__, "failed_run_threshold", failed_run_threshold)
4004
+
4005
+ @property
4006
+ @pulumi.getter(name="failedRunThreshold")
4007
+ def failed_run_threshold(self) -> Optional[int]:
4008
+ """
4009
+ After how many failed consecutive check runs an alert notification should be sent. Possible values are between `1` and `5`. (Default `1`).
4010
+ """
4011
+ return pulumi.get(self, "failed_run_threshold")
4012
+
4013
+
4014
+ @pulumi.output_type
4015
+ class UrlMonitorAlertSettingsTimeBasedEscalation(dict):
4016
+ @staticmethod
4017
+ def __key_warning(key: str):
4018
+ suggest = None
4019
+ if key == "minutesFailingThreshold":
4020
+ suggest = "minutes_failing_threshold"
4021
+
4022
+ if suggest:
4023
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorAlertSettingsTimeBasedEscalation. Access the value via the '{suggest}' property getter instead.")
4024
+
4025
+ def __getitem__(self, key: str) -> Any:
4026
+ UrlMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
4027
+ return super().__getitem__(key)
4028
+
4029
+ def get(self, key: str, default = None) -> Any:
4030
+ UrlMonitorAlertSettingsTimeBasedEscalation.__key_warning(key)
4031
+ return super().get(key, default)
4032
+
4033
+ def __init__(__self__, *,
4034
+ minutes_failing_threshold: Optional[int] = None):
4035
+ """
4036
+ :param int minutes_failing_threshold: After how many minutes after a monitor starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
4037
+ """
4038
+ if minutes_failing_threshold is not None:
4039
+ pulumi.set(__self__, "minutes_failing_threshold", minutes_failing_threshold)
4040
+
4041
+ @property
4042
+ @pulumi.getter(name="minutesFailingThreshold")
4043
+ def minutes_failing_threshold(self) -> Optional[int]:
4044
+ """
4045
+ After how many minutes after a monitor starts failing an alert should be sent. Possible values are `5`, `10`, `15`, and `30`. (Default `5`).
4046
+ """
4047
+ return pulumi.get(self, "minutes_failing_threshold")
4048
+
4049
+
4050
+ @pulumi.output_type
4051
+ class UrlMonitorRequest(dict):
4052
+ @staticmethod
4053
+ def __key_warning(key: str):
4054
+ suggest = None
4055
+ if key == "followRedirects":
4056
+ suggest = "follow_redirects"
4057
+ elif key == "ipFamily":
4058
+ suggest = "ip_family"
4059
+ elif key == "skipSsl":
4060
+ suggest = "skip_ssl"
4061
+
4062
+ if suggest:
4063
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorRequest. Access the value via the '{suggest}' property getter instead.")
4064
+
4065
+ def __getitem__(self, key: str) -> Any:
4066
+ UrlMonitorRequest.__key_warning(key)
4067
+ return super().__getitem__(key)
4068
+
4069
+ def get(self, key: str, default = None) -> Any:
4070
+ UrlMonitorRequest.__key_warning(key)
4071
+ return super().get(key, default)
4072
+
4073
+ def __init__(__self__, *,
4074
+ url: str,
4075
+ assertions: Optional[Sequence['outputs.UrlMonitorRequestAssertion']] = None,
4076
+ follow_redirects: Optional[bool] = None,
4077
+ ip_family: Optional[str] = None,
4078
+ skip_ssl: Optional[bool] = None):
4079
+ """
4080
+ :param str url: The URL to monitor. Must be a valid HTTP or HTTPS URL.
4081
+ :param Sequence['UrlMonitorRequestAssertionArgs'] assertions: Assertions to validate the HTTP response. URL monitors only support status code assertions.
4082
+ :param bool follow_redirects: Whether to follow HTTP redirects automatically. (Default `true`).
4083
+ :param str ip_family: IP family version to use for the connection. The value can be either `IPv4` or `IPv6`. (Default `IPv4`).
4084
+ :param bool skip_ssl: Whether to skip SSL certificate verification. (Default `false`).
4085
+ """
4086
+ pulumi.set(__self__, "url", url)
4087
+ if assertions is not None:
4088
+ pulumi.set(__self__, "assertions", assertions)
4089
+ if follow_redirects is not None:
4090
+ pulumi.set(__self__, "follow_redirects", follow_redirects)
4091
+ if ip_family is not None:
4092
+ pulumi.set(__self__, "ip_family", ip_family)
4093
+ if skip_ssl is not None:
4094
+ pulumi.set(__self__, "skip_ssl", skip_ssl)
4095
+
4096
+ @property
4097
+ @pulumi.getter
4098
+ def url(self) -> str:
4099
+ """
4100
+ The URL to monitor. Must be a valid HTTP or HTTPS URL.
4101
+ """
4102
+ return pulumi.get(self, "url")
4103
+
4104
+ @property
4105
+ @pulumi.getter
4106
+ def assertions(self) -> Optional[Sequence['outputs.UrlMonitorRequestAssertion']]:
4107
+ """
4108
+ Assertions to validate the HTTP response. URL monitors only support status code assertions.
4109
+ """
4110
+ return pulumi.get(self, "assertions")
4111
+
4112
+ @property
4113
+ @pulumi.getter(name="followRedirects")
4114
+ def follow_redirects(self) -> Optional[bool]:
4115
+ """
4116
+ Whether to follow HTTP redirects automatically. (Default `true`).
4117
+ """
4118
+ return pulumi.get(self, "follow_redirects")
2353
4119
 
2354
4120
  @property
2355
4121
  @pulumi.getter(name="ipFamily")
2356
4122
  def ip_family(self) -> Optional[str]:
2357
4123
  """
2358
- The IP family to use when executing the TCP check. The value can be either `IPv4` or `IPv6`.
4124
+ IP family version to use for the connection. The value can be either `IPv4` or `IPv6`. (Default `IPv4`).
2359
4125
  """
2360
4126
  return pulumi.get(self, "ip_family")
2361
4127
 
4128
+ @property
4129
+ @pulumi.getter(name="skipSsl")
4130
+ def skip_ssl(self) -> Optional[bool]:
4131
+ """
4132
+ Whether to skip SSL certificate verification. (Default `false`).
4133
+ """
4134
+ return pulumi.get(self, "skip_ssl")
4135
+
2362
4136
 
2363
4137
  @pulumi.output_type
2364
- class TcpCheckRequestAssertion(dict):
4138
+ class UrlMonitorRequestAssertion(dict):
2365
4139
  def __init__(__self__, *,
2366
4140
  comparison: str,
2367
4141
  source: str,
2368
- property: Optional[str] = None,
2369
- target: Optional[str] = None):
4142
+ target: str,
4143
+ property: Optional[str] = None):
2370
4144
  """
2371
- :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`.
2372
- :param str source: The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
4145
+ :param str comparison: The type of comparison to be executed between expected and actual value of the assertion. Possible values are `EQUALS`, `NOT_EQUALS`, `GREATER_THAN` and `LESS_THAN`.
4146
+ :param str source: The source of the asserted value. The only allowed value is `STATUS_CODE`.
4147
+ :param str target: The target value. Typically `200` when the source is `STATUS_CODE`.
2373
4148
  """
2374
4149
  pulumi.set(__self__, "comparison", comparison)
2375
4150
  pulumi.set(__self__, "source", source)
4151
+ pulumi.set(__self__, "target", target)
2376
4152
  if property is not None:
2377
4153
  pulumi.set(__self__, "property", property)
2378
- if target is not None:
2379
- pulumi.set(__self__, "target", target)
2380
4154
 
2381
4155
  @property
2382
4156
  @pulumi.getter
2383
4157
  def comparison(self) -> str:
2384
4158
  """
2385
- 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`.
4159
+ The type of comparison to be executed between expected and actual value of the assertion. Possible values are `EQUALS`, `NOT_EQUALS`, `GREATER_THAN` and `LESS_THAN`.
2386
4160
  """
2387
4161
  return pulumi.get(self, "comparison")
2388
4162
 
@@ -2390,13 +4164,16 @@ class TcpCheckRequestAssertion(dict):
2390
4164
  @pulumi.getter
2391
4165
  def source(self) -> str:
2392
4166
  """
2393
- The source of the asserted value. Possible values are `RESPONSE_DATA` and `RESPONSE_TIME`.
4167
+ The source of the asserted value. The only allowed value is `STATUS_CODE`.
2394
4168
  """
2395
4169
  return pulumi.get(self, "source")
2396
4170
 
2397
4171
  @property
2398
4172
  @pulumi.getter
2399
- def target(self) -> Optional[str]:
4173
+ def target(self) -> str:
4174
+ """
4175
+ The target value. Typically `200` when the source is `STATUS_CODE`.
4176
+ """
2400
4177
  return pulumi.get(self, "target")
2401
4178
 
2402
4179
  @property
@@ -2406,7 +4183,7 @@ class TcpCheckRequestAssertion(dict):
2406
4183
 
2407
4184
 
2408
4185
  @pulumi.output_type
2409
- class TcpCheckRetryStrategy(dict):
4186
+ class UrlMonitorRetryStrategy(dict):
2410
4187
  @staticmethod
2411
4188
  def __key_warning(key: str):
2412
4189
  suggest = None
@@ -2420,14 +4197,14 @@ class TcpCheckRetryStrategy(dict):
2420
4197
  suggest = "same_region"
2421
4198
 
2422
4199
  if suggest:
2423
- pulumi.log.warn(f"Key '{key}' not found in TcpCheckRetryStrategy. Access the value via the '{suggest}' property getter instead.")
4200
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorRetryStrategy. Access the value via the '{suggest}' property getter instead.")
2424
4201
 
2425
4202
  def __getitem__(self, key: str) -> Any:
2426
- TcpCheckRetryStrategy.__key_warning(key)
4203
+ UrlMonitorRetryStrategy.__key_warning(key)
2427
4204
  return super().__getitem__(key)
2428
4205
 
2429
4206
  def get(self, key: str, default = None) -> Any:
2430
- TcpCheckRetryStrategy.__key_warning(key)
4207
+ UrlMonitorRetryStrategy.__key_warning(key)
2431
4208
  return super().get(key, default)
2432
4209
 
2433
4210
  def __init__(__self__, *,
@@ -2437,11 +4214,11 @@ class TcpCheckRetryStrategy(dict):
2437
4214
  max_retries: Optional[int] = None,
2438
4215
  same_region: Optional[bool] = None):
2439
4216
  """
2440
- :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
2441
- :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt.
2442
- :param int max_duration_seconds: The total amount of time to continue retrying the check (maximum 600 seconds).
2443
- :param int max_retries: The maximum number of times to retry the check. Value must be between 1 and 10.
2444
- :param bool same_region: Whether retries should be run in the same region as the initial check run.
4217
+ :param str type: Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, and `EXPONENTIAL`.
4218
+ :param int base_backoff_seconds: The number of seconds to wait before the first retry attempt. (Default `60`).
4219
+ :param int max_duration_seconds: The total amount of time to continue retrying the monitor (maximum 600 seconds). (Default `600`).
4220
+ :param int max_retries: The maximum number of times to retry the monitor. Value must be between `1` and `10`. (Default `2`).
4221
+ :param bool same_region: Whether retries should be run in the same region as the initial monitor run. (Default `true`).
2445
4222
  """
2446
4223
  pulumi.set(__self__, "type", type)
2447
4224
  if base_backoff_seconds is not None:
@@ -2457,7 +4234,7 @@ class TcpCheckRetryStrategy(dict):
2457
4234
  @pulumi.getter
2458
4235
  def type(self) -> str:
2459
4236
  """
2460
- Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, or `EXPONENTIAL`.
4237
+ Determines which type of retry strategy to use. Possible values are `FIXED`, `LINEAR`, and `EXPONENTIAL`.
2461
4238
  """
2462
4239
  return pulumi.get(self, "type")
2463
4240
 
@@ -2465,7 +4242,7 @@ class TcpCheckRetryStrategy(dict):
2465
4242
  @pulumi.getter(name="baseBackoffSeconds")
2466
4243
  def base_backoff_seconds(self) -> Optional[int]:
2467
4244
  """
2468
- The number of seconds to wait before the first retry attempt.
4245
+ The number of seconds to wait before the first retry attempt. (Default `60`).
2469
4246
  """
2470
4247
  return pulumi.get(self, "base_backoff_seconds")
2471
4248
 
@@ -2473,7 +4250,7 @@ class TcpCheckRetryStrategy(dict):
2473
4250
  @pulumi.getter(name="maxDurationSeconds")
2474
4251
  def max_duration_seconds(self) -> Optional[int]:
2475
4252
  """
2476
- The total amount of time to continue retrying the check (maximum 600 seconds).
4253
+ The total amount of time to continue retrying the monitor (maximum 600 seconds). (Default `600`).
2477
4254
  """
2478
4255
  return pulumi.get(self, "max_duration_seconds")
2479
4256
 
@@ -2481,7 +4258,7 @@ class TcpCheckRetryStrategy(dict):
2481
4258
  @pulumi.getter(name="maxRetries")
2482
4259
  def max_retries(self) -> Optional[int]:
2483
4260
  """
2484
- The maximum number of times to retry the check. Value must be between 1 and 10.
4261
+ The maximum number of times to retry the monitor. Value must be between `1` and `10`. (Default `2`).
2485
4262
  """
2486
4263
  return pulumi.get(self, "max_retries")
2487
4264
 
@@ -2489,8 +4266,89 @@ class TcpCheckRetryStrategy(dict):
2489
4266
  @pulumi.getter(name="sameRegion")
2490
4267
  def same_region(self) -> Optional[bool]:
2491
4268
  """
2492
- Whether retries should be run in the same region as the initial check run.
4269
+ Whether retries should be run in the same region as the initial monitor run. (Default `true`).
2493
4270
  """
2494
4271
  return pulumi.get(self, "same_region")
2495
4272
 
2496
4273
 
4274
+ @pulumi.output_type
4275
+ class UrlMonitorTriggerIncident(dict):
4276
+ @staticmethod
4277
+ def __key_warning(key: str):
4278
+ suggest = None
4279
+ if key == "notifySubscribers":
4280
+ suggest = "notify_subscribers"
4281
+ elif key == "serviceId":
4282
+ suggest = "service_id"
4283
+
4284
+ if suggest:
4285
+ pulumi.log.warn(f"Key '{key}' not found in UrlMonitorTriggerIncident. Access the value via the '{suggest}' property getter instead.")
4286
+
4287
+ def __getitem__(self, key: str) -> Any:
4288
+ UrlMonitorTriggerIncident.__key_warning(key)
4289
+ return super().__getitem__(key)
4290
+
4291
+ def get(self, key: str, default = None) -> Any:
4292
+ UrlMonitorTriggerIncident.__key_warning(key)
4293
+ return super().get(key, default)
4294
+
4295
+ def __init__(__self__, *,
4296
+ description: str,
4297
+ name: str,
4298
+ notify_subscribers: bool,
4299
+ service_id: str,
4300
+ severity: str):
4301
+ """
4302
+ :param str description: A detailed description of the incident.
4303
+ :param str name: The name of the incident.
4304
+ :param bool notify_subscribers: Whether to notify subscribers when the incident is triggered.
4305
+ :param str service_id: The status page service that this incident will be associated with.
4306
+ :param str severity: The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
4307
+ """
4308
+ pulumi.set(__self__, "description", description)
4309
+ pulumi.set(__self__, "name", name)
4310
+ pulumi.set(__self__, "notify_subscribers", notify_subscribers)
4311
+ pulumi.set(__self__, "service_id", service_id)
4312
+ pulumi.set(__self__, "severity", severity)
4313
+
4314
+ @property
4315
+ @pulumi.getter
4316
+ def description(self) -> str:
4317
+ """
4318
+ A detailed description of the incident.
4319
+ """
4320
+ return pulumi.get(self, "description")
4321
+
4322
+ @property
4323
+ @pulumi.getter
4324
+ def name(self) -> str:
4325
+ """
4326
+ The name of the incident.
4327
+ """
4328
+ return pulumi.get(self, "name")
4329
+
4330
+ @property
4331
+ @pulumi.getter(name="notifySubscribers")
4332
+ def notify_subscribers(self) -> bool:
4333
+ """
4334
+ Whether to notify subscribers when the incident is triggered.
4335
+ """
4336
+ return pulumi.get(self, "notify_subscribers")
4337
+
4338
+ @property
4339
+ @pulumi.getter(name="serviceId")
4340
+ def service_id(self) -> str:
4341
+ """
4342
+ The status page service that this incident will be associated with.
4343
+ """
4344
+ return pulumi.get(self, "service_id")
4345
+
4346
+ @property
4347
+ @pulumi.getter
4348
+ def severity(self) -> str:
4349
+ """
4350
+ The severity level of the incident. Possible values are `MINOR`, `MEDIUM`, `MAJOR`, and `CRITICAL`.
4351
+ """
4352
+ return pulumi.get(self, "severity")
4353
+
4354
+