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.
@@ -0,0 +1,1092 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['UrlMonitorArgs', 'UrlMonitor']
20
+
21
+ @pulumi.input_type
22
+ class UrlMonitorArgs:
23
+ def __init__(__self__, *,
24
+ activated: pulumi.Input[bool],
25
+ frequency: pulumi.Input[int],
26
+ request: pulumi.Input['UrlMonitorRequestArgs'],
27
+ alert_channel_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]] = None,
28
+ alert_settings: Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']] = None,
29
+ degraded_response_time: Optional[pulumi.Input[int]] = None,
30
+ frequency_offset: Optional[pulumi.Input[int]] = None,
31
+ group_id: Optional[pulumi.Input[int]] = None,
32
+ group_order: Optional[pulumi.Input[int]] = None,
33
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
34
+ max_response_time: Optional[pulumi.Input[int]] = None,
35
+ muted: Optional[pulumi.Input[bool]] = None,
36
+ name: Optional[pulumi.Input[str]] = None,
37
+ private_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
38
+ retry_strategy: Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']] = None,
39
+ run_parallel: Optional[pulumi.Input[bool]] = None,
40
+ should_fail: Optional[pulumi.Input[bool]] = None,
41
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
42
+ trigger_incident: Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']] = None,
43
+ use_global_alert_settings: Optional[pulumi.Input[bool]] = None):
44
+ """
45
+ The set of arguments for constructing a UrlMonitor resource.
46
+ :param pulumi.Input[bool] activated: Determines whether the monitor will run periodically or not after being deployed.
47
+ :param pulumi.Input[int] frequency: How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
48
+ :param pulumi.Input['UrlMonitorRequestArgs'] request: The parameters of the HTTP request.
49
+ :param pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]] alert_channel_subscriptions: An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
50
+ :param pulumi.Input['UrlMonitorAlertSettingsArgs'] alert_settings: Determines the alert escalation policy for the monitor.
51
+ :param pulumi.Input[int] degraded_response_time: The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
52
+ :param pulumi.Input[int] frequency_offset: To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
53
+ :param pulumi.Input[int] group_id: The ID of the check group that this monitor is part of.
54
+ :param pulumi.Input[int] group_order: The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
55
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] locations: An array of one or more data center locations where to run the this monitor.
56
+ :param pulumi.Input[int] max_response_time: The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
57
+ :param pulumi.Input[bool] muted: Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
58
+ :param pulumi.Input[str] name: The name of the monitor.
59
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] private_locations: An array of one or more private locations slugs.
60
+ :param pulumi.Input['UrlMonitorRetryStrategyArgs'] retry_strategy: A strategy for retrying failed monitor runs.
61
+ :param pulumi.Input[bool] run_parallel: Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
62
+ :param pulumi.Input[bool] should_fail: Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
63
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags for organizing and filtering checks and monitors.
64
+ :param pulumi.Input['UrlMonitorTriggerIncidentArgs'] trigger_incident: Create and resolve an incident based on the alert configuration. Useful for status page automation.
65
+ :param pulumi.Input[bool] use_global_alert_settings: When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
66
+ """
67
+ pulumi.set(__self__, "activated", activated)
68
+ pulumi.set(__self__, "frequency", frequency)
69
+ pulumi.set(__self__, "request", request)
70
+ if alert_channel_subscriptions is not None:
71
+ pulumi.set(__self__, "alert_channel_subscriptions", alert_channel_subscriptions)
72
+ if alert_settings is not None:
73
+ pulumi.set(__self__, "alert_settings", alert_settings)
74
+ if degraded_response_time is not None:
75
+ pulumi.set(__self__, "degraded_response_time", degraded_response_time)
76
+ if frequency_offset is not None:
77
+ pulumi.set(__self__, "frequency_offset", frequency_offset)
78
+ if group_id is not None:
79
+ pulumi.set(__self__, "group_id", group_id)
80
+ if group_order is not None:
81
+ pulumi.set(__self__, "group_order", group_order)
82
+ if locations is not None:
83
+ pulumi.set(__self__, "locations", locations)
84
+ if max_response_time is not None:
85
+ pulumi.set(__self__, "max_response_time", max_response_time)
86
+ if muted is not None:
87
+ pulumi.set(__self__, "muted", muted)
88
+ if name is not None:
89
+ pulumi.set(__self__, "name", name)
90
+ if private_locations is not None:
91
+ pulumi.set(__self__, "private_locations", private_locations)
92
+ if retry_strategy is not None:
93
+ pulumi.set(__self__, "retry_strategy", retry_strategy)
94
+ if run_parallel is not None:
95
+ pulumi.set(__self__, "run_parallel", run_parallel)
96
+ if should_fail is not None:
97
+ pulumi.set(__self__, "should_fail", should_fail)
98
+ if tags is not None:
99
+ pulumi.set(__self__, "tags", tags)
100
+ if trigger_incident is not None:
101
+ pulumi.set(__self__, "trigger_incident", trigger_incident)
102
+ if use_global_alert_settings is not None:
103
+ pulumi.set(__self__, "use_global_alert_settings", use_global_alert_settings)
104
+
105
+ @property
106
+ @pulumi.getter
107
+ def activated(self) -> pulumi.Input[bool]:
108
+ """
109
+ Determines whether the monitor will run periodically or not after being deployed.
110
+ """
111
+ return pulumi.get(self, "activated")
112
+
113
+ @activated.setter
114
+ def activated(self, value: pulumi.Input[bool]):
115
+ pulumi.set(self, "activated", value)
116
+
117
+ @property
118
+ @pulumi.getter
119
+ def frequency(self) -> pulumi.Input[int]:
120
+ """
121
+ How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
122
+ """
123
+ return pulumi.get(self, "frequency")
124
+
125
+ @frequency.setter
126
+ def frequency(self, value: pulumi.Input[int]):
127
+ pulumi.set(self, "frequency", value)
128
+
129
+ @property
130
+ @pulumi.getter
131
+ def request(self) -> pulumi.Input['UrlMonitorRequestArgs']:
132
+ """
133
+ The parameters of the HTTP request.
134
+ """
135
+ return pulumi.get(self, "request")
136
+
137
+ @request.setter
138
+ def request(self, value: pulumi.Input['UrlMonitorRequestArgs']):
139
+ pulumi.set(self, "request", value)
140
+
141
+ @property
142
+ @pulumi.getter(name="alertChannelSubscriptions")
143
+ def alert_channel_subscriptions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]]:
144
+ """
145
+ An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
146
+ """
147
+ return pulumi.get(self, "alert_channel_subscriptions")
148
+
149
+ @alert_channel_subscriptions.setter
150
+ def alert_channel_subscriptions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]]):
151
+ pulumi.set(self, "alert_channel_subscriptions", value)
152
+
153
+ @property
154
+ @pulumi.getter(name="alertSettings")
155
+ def alert_settings(self) -> Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']]:
156
+ """
157
+ Determines the alert escalation policy for the monitor.
158
+ """
159
+ return pulumi.get(self, "alert_settings")
160
+
161
+ @alert_settings.setter
162
+ def alert_settings(self, value: Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']]):
163
+ pulumi.set(self, "alert_settings", value)
164
+
165
+ @property
166
+ @pulumi.getter(name="degradedResponseTime")
167
+ def degraded_response_time(self) -> Optional[pulumi.Input[int]]:
168
+ """
169
+ The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
170
+ """
171
+ return pulumi.get(self, "degraded_response_time")
172
+
173
+ @degraded_response_time.setter
174
+ def degraded_response_time(self, value: Optional[pulumi.Input[int]]):
175
+ pulumi.set(self, "degraded_response_time", value)
176
+
177
+ @property
178
+ @pulumi.getter(name="frequencyOffset")
179
+ def frequency_offset(self) -> Optional[pulumi.Input[int]]:
180
+ """
181
+ To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
182
+ """
183
+ return pulumi.get(self, "frequency_offset")
184
+
185
+ @frequency_offset.setter
186
+ def frequency_offset(self, value: Optional[pulumi.Input[int]]):
187
+ pulumi.set(self, "frequency_offset", value)
188
+
189
+ @property
190
+ @pulumi.getter(name="groupId")
191
+ def group_id(self) -> Optional[pulumi.Input[int]]:
192
+ """
193
+ The ID of the check group that this monitor is part of.
194
+ """
195
+ return pulumi.get(self, "group_id")
196
+
197
+ @group_id.setter
198
+ def group_id(self, value: Optional[pulumi.Input[int]]):
199
+ pulumi.set(self, "group_id", value)
200
+
201
+ @property
202
+ @pulumi.getter(name="groupOrder")
203
+ def group_order(self) -> Optional[pulumi.Input[int]]:
204
+ """
205
+ The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
206
+ """
207
+ return pulumi.get(self, "group_order")
208
+
209
+ @group_order.setter
210
+ def group_order(self, value: Optional[pulumi.Input[int]]):
211
+ pulumi.set(self, "group_order", value)
212
+
213
+ @property
214
+ @pulumi.getter
215
+ def locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
216
+ """
217
+ An array of one or more data center locations where to run the this monitor.
218
+ """
219
+ return pulumi.get(self, "locations")
220
+
221
+ @locations.setter
222
+ def locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
223
+ pulumi.set(self, "locations", value)
224
+
225
+ @property
226
+ @pulumi.getter(name="maxResponseTime")
227
+ def max_response_time(self) -> Optional[pulumi.Input[int]]:
228
+ """
229
+ The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
230
+ """
231
+ return pulumi.get(self, "max_response_time")
232
+
233
+ @max_response_time.setter
234
+ def max_response_time(self, value: Optional[pulumi.Input[int]]):
235
+ pulumi.set(self, "max_response_time", value)
236
+
237
+ @property
238
+ @pulumi.getter
239
+ def muted(self) -> Optional[pulumi.Input[bool]]:
240
+ """
241
+ Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
242
+ """
243
+ return pulumi.get(self, "muted")
244
+
245
+ @muted.setter
246
+ def muted(self, value: Optional[pulumi.Input[bool]]):
247
+ pulumi.set(self, "muted", value)
248
+
249
+ @property
250
+ @pulumi.getter
251
+ def name(self) -> Optional[pulumi.Input[str]]:
252
+ """
253
+ The name of the monitor.
254
+ """
255
+ return pulumi.get(self, "name")
256
+
257
+ @name.setter
258
+ def name(self, value: Optional[pulumi.Input[str]]):
259
+ pulumi.set(self, "name", value)
260
+
261
+ @property
262
+ @pulumi.getter(name="privateLocations")
263
+ def private_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
264
+ """
265
+ An array of one or more private locations slugs.
266
+ """
267
+ return pulumi.get(self, "private_locations")
268
+
269
+ @private_locations.setter
270
+ def private_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
271
+ pulumi.set(self, "private_locations", value)
272
+
273
+ @property
274
+ @pulumi.getter(name="retryStrategy")
275
+ def retry_strategy(self) -> Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']]:
276
+ """
277
+ A strategy for retrying failed monitor runs.
278
+ """
279
+ return pulumi.get(self, "retry_strategy")
280
+
281
+ @retry_strategy.setter
282
+ def retry_strategy(self, value: Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']]):
283
+ pulumi.set(self, "retry_strategy", value)
284
+
285
+ @property
286
+ @pulumi.getter(name="runParallel")
287
+ def run_parallel(self) -> Optional[pulumi.Input[bool]]:
288
+ """
289
+ Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
290
+ """
291
+ return pulumi.get(self, "run_parallel")
292
+
293
+ @run_parallel.setter
294
+ def run_parallel(self, value: Optional[pulumi.Input[bool]]):
295
+ pulumi.set(self, "run_parallel", value)
296
+
297
+ @property
298
+ @pulumi.getter(name="shouldFail")
299
+ def should_fail(self) -> Optional[pulumi.Input[bool]]:
300
+ """
301
+ Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
302
+ """
303
+ return pulumi.get(self, "should_fail")
304
+
305
+ @should_fail.setter
306
+ def should_fail(self, value: Optional[pulumi.Input[bool]]):
307
+ pulumi.set(self, "should_fail", value)
308
+
309
+ @property
310
+ @pulumi.getter
311
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
312
+ """
313
+ A list of tags for organizing and filtering checks and monitors.
314
+ """
315
+ return pulumi.get(self, "tags")
316
+
317
+ @tags.setter
318
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
319
+ pulumi.set(self, "tags", value)
320
+
321
+ @property
322
+ @pulumi.getter(name="triggerIncident")
323
+ def trigger_incident(self) -> Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']]:
324
+ """
325
+ Create and resolve an incident based on the alert configuration. Useful for status page automation.
326
+ """
327
+ return pulumi.get(self, "trigger_incident")
328
+
329
+ @trigger_incident.setter
330
+ def trigger_incident(self, value: Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']]):
331
+ pulumi.set(self, "trigger_incident", value)
332
+
333
+ @property
334
+ @pulumi.getter(name="useGlobalAlertSettings")
335
+ def use_global_alert_settings(self) -> Optional[pulumi.Input[bool]]:
336
+ """
337
+ When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
338
+ """
339
+ return pulumi.get(self, "use_global_alert_settings")
340
+
341
+ @use_global_alert_settings.setter
342
+ def use_global_alert_settings(self, value: Optional[pulumi.Input[bool]]):
343
+ pulumi.set(self, "use_global_alert_settings", value)
344
+
345
+
346
+ @pulumi.input_type
347
+ class _UrlMonitorState:
348
+ def __init__(__self__, *,
349
+ activated: Optional[pulumi.Input[bool]] = None,
350
+ alert_channel_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]] = None,
351
+ alert_settings: Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']] = None,
352
+ degraded_response_time: Optional[pulumi.Input[int]] = None,
353
+ frequency: Optional[pulumi.Input[int]] = None,
354
+ frequency_offset: Optional[pulumi.Input[int]] = None,
355
+ group_id: Optional[pulumi.Input[int]] = None,
356
+ group_order: Optional[pulumi.Input[int]] = None,
357
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
358
+ max_response_time: Optional[pulumi.Input[int]] = None,
359
+ muted: Optional[pulumi.Input[bool]] = None,
360
+ name: Optional[pulumi.Input[str]] = None,
361
+ private_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
362
+ request: Optional[pulumi.Input['UrlMonitorRequestArgs']] = None,
363
+ retry_strategy: Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']] = None,
364
+ run_parallel: Optional[pulumi.Input[bool]] = None,
365
+ should_fail: Optional[pulumi.Input[bool]] = None,
366
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
367
+ trigger_incident: Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']] = None,
368
+ use_global_alert_settings: Optional[pulumi.Input[bool]] = None):
369
+ """
370
+ Input properties used for looking up and filtering UrlMonitor resources.
371
+ :param pulumi.Input[bool] activated: Determines whether the monitor will run periodically or not after being deployed.
372
+ :param pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]] alert_channel_subscriptions: An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
373
+ :param pulumi.Input['UrlMonitorAlertSettingsArgs'] alert_settings: Determines the alert escalation policy for the monitor.
374
+ :param pulumi.Input[int] degraded_response_time: The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
375
+ :param pulumi.Input[int] frequency: How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
376
+ :param pulumi.Input[int] frequency_offset: To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
377
+ :param pulumi.Input[int] group_id: The ID of the check group that this monitor is part of.
378
+ :param pulumi.Input[int] group_order: The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
379
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] locations: An array of one or more data center locations where to run the this monitor.
380
+ :param pulumi.Input[int] max_response_time: The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
381
+ :param pulumi.Input[bool] muted: Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
382
+ :param pulumi.Input[str] name: The name of the monitor.
383
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] private_locations: An array of one or more private locations slugs.
384
+ :param pulumi.Input['UrlMonitorRequestArgs'] request: The parameters of the HTTP request.
385
+ :param pulumi.Input['UrlMonitorRetryStrategyArgs'] retry_strategy: A strategy for retrying failed monitor runs.
386
+ :param pulumi.Input[bool] run_parallel: Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
387
+ :param pulumi.Input[bool] should_fail: Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
388
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags for organizing and filtering checks and monitors.
389
+ :param pulumi.Input['UrlMonitorTriggerIncidentArgs'] trigger_incident: Create and resolve an incident based on the alert configuration. Useful for status page automation.
390
+ :param pulumi.Input[bool] use_global_alert_settings: When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
391
+ """
392
+ if activated is not None:
393
+ pulumi.set(__self__, "activated", activated)
394
+ if alert_channel_subscriptions is not None:
395
+ pulumi.set(__self__, "alert_channel_subscriptions", alert_channel_subscriptions)
396
+ if alert_settings is not None:
397
+ pulumi.set(__self__, "alert_settings", alert_settings)
398
+ if degraded_response_time is not None:
399
+ pulumi.set(__self__, "degraded_response_time", degraded_response_time)
400
+ if frequency is not None:
401
+ pulumi.set(__self__, "frequency", frequency)
402
+ if frequency_offset is not None:
403
+ pulumi.set(__self__, "frequency_offset", frequency_offset)
404
+ if group_id is not None:
405
+ pulumi.set(__self__, "group_id", group_id)
406
+ if group_order is not None:
407
+ pulumi.set(__self__, "group_order", group_order)
408
+ if locations is not None:
409
+ pulumi.set(__self__, "locations", locations)
410
+ if max_response_time is not None:
411
+ pulumi.set(__self__, "max_response_time", max_response_time)
412
+ if muted is not None:
413
+ pulumi.set(__self__, "muted", muted)
414
+ if name is not None:
415
+ pulumi.set(__self__, "name", name)
416
+ if private_locations is not None:
417
+ pulumi.set(__self__, "private_locations", private_locations)
418
+ if request is not None:
419
+ pulumi.set(__self__, "request", request)
420
+ if retry_strategy is not None:
421
+ pulumi.set(__self__, "retry_strategy", retry_strategy)
422
+ if run_parallel is not None:
423
+ pulumi.set(__self__, "run_parallel", run_parallel)
424
+ if should_fail is not None:
425
+ pulumi.set(__self__, "should_fail", should_fail)
426
+ if tags is not None:
427
+ pulumi.set(__self__, "tags", tags)
428
+ if trigger_incident is not None:
429
+ pulumi.set(__self__, "trigger_incident", trigger_incident)
430
+ if use_global_alert_settings is not None:
431
+ pulumi.set(__self__, "use_global_alert_settings", use_global_alert_settings)
432
+
433
+ @property
434
+ @pulumi.getter
435
+ def activated(self) -> Optional[pulumi.Input[bool]]:
436
+ """
437
+ Determines whether the monitor will run periodically or not after being deployed.
438
+ """
439
+ return pulumi.get(self, "activated")
440
+
441
+ @activated.setter
442
+ def activated(self, value: Optional[pulumi.Input[bool]]):
443
+ pulumi.set(self, "activated", value)
444
+
445
+ @property
446
+ @pulumi.getter(name="alertChannelSubscriptions")
447
+ def alert_channel_subscriptions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]]:
448
+ """
449
+ An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
450
+ """
451
+ return pulumi.get(self, "alert_channel_subscriptions")
452
+
453
+ @alert_channel_subscriptions.setter
454
+ def alert_channel_subscriptions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UrlMonitorAlertChannelSubscriptionArgs']]]]):
455
+ pulumi.set(self, "alert_channel_subscriptions", value)
456
+
457
+ @property
458
+ @pulumi.getter(name="alertSettings")
459
+ def alert_settings(self) -> Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']]:
460
+ """
461
+ Determines the alert escalation policy for the monitor.
462
+ """
463
+ return pulumi.get(self, "alert_settings")
464
+
465
+ @alert_settings.setter
466
+ def alert_settings(self, value: Optional[pulumi.Input['UrlMonitorAlertSettingsArgs']]):
467
+ pulumi.set(self, "alert_settings", value)
468
+
469
+ @property
470
+ @pulumi.getter(name="degradedResponseTime")
471
+ def degraded_response_time(self) -> Optional[pulumi.Input[int]]:
472
+ """
473
+ The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
474
+ """
475
+ return pulumi.get(self, "degraded_response_time")
476
+
477
+ @degraded_response_time.setter
478
+ def degraded_response_time(self, value: Optional[pulumi.Input[int]]):
479
+ pulumi.set(self, "degraded_response_time", value)
480
+
481
+ @property
482
+ @pulumi.getter
483
+ def frequency(self) -> Optional[pulumi.Input[int]]:
484
+ """
485
+ How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
486
+ """
487
+ return pulumi.get(self, "frequency")
488
+
489
+ @frequency.setter
490
+ def frequency(self, value: Optional[pulumi.Input[int]]):
491
+ pulumi.set(self, "frequency", value)
492
+
493
+ @property
494
+ @pulumi.getter(name="frequencyOffset")
495
+ def frequency_offset(self) -> Optional[pulumi.Input[int]]:
496
+ """
497
+ To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
498
+ """
499
+ return pulumi.get(self, "frequency_offset")
500
+
501
+ @frequency_offset.setter
502
+ def frequency_offset(self, value: Optional[pulumi.Input[int]]):
503
+ pulumi.set(self, "frequency_offset", value)
504
+
505
+ @property
506
+ @pulumi.getter(name="groupId")
507
+ def group_id(self) -> Optional[pulumi.Input[int]]:
508
+ """
509
+ The ID of the check group that this monitor is part of.
510
+ """
511
+ return pulumi.get(self, "group_id")
512
+
513
+ @group_id.setter
514
+ def group_id(self, value: Optional[pulumi.Input[int]]):
515
+ pulumi.set(self, "group_id", value)
516
+
517
+ @property
518
+ @pulumi.getter(name="groupOrder")
519
+ def group_order(self) -> Optional[pulumi.Input[int]]:
520
+ """
521
+ The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
522
+ """
523
+ return pulumi.get(self, "group_order")
524
+
525
+ @group_order.setter
526
+ def group_order(self, value: Optional[pulumi.Input[int]]):
527
+ pulumi.set(self, "group_order", value)
528
+
529
+ @property
530
+ @pulumi.getter
531
+ def locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
532
+ """
533
+ An array of one or more data center locations where to run the this monitor.
534
+ """
535
+ return pulumi.get(self, "locations")
536
+
537
+ @locations.setter
538
+ def locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
539
+ pulumi.set(self, "locations", value)
540
+
541
+ @property
542
+ @pulumi.getter(name="maxResponseTime")
543
+ def max_response_time(self) -> Optional[pulumi.Input[int]]:
544
+ """
545
+ The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
546
+ """
547
+ return pulumi.get(self, "max_response_time")
548
+
549
+ @max_response_time.setter
550
+ def max_response_time(self, value: Optional[pulumi.Input[int]]):
551
+ pulumi.set(self, "max_response_time", value)
552
+
553
+ @property
554
+ @pulumi.getter
555
+ def muted(self) -> Optional[pulumi.Input[bool]]:
556
+ """
557
+ Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
558
+ """
559
+ return pulumi.get(self, "muted")
560
+
561
+ @muted.setter
562
+ def muted(self, value: Optional[pulumi.Input[bool]]):
563
+ pulumi.set(self, "muted", value)
564
+
565
+ @property
566
+ @pulumi.getter
567
+ def name(self) -> Optional[pulumi.Input[str]]:
568
+ """
569
+ The name of the monitor.
570
+ """
571
+ return pulumi.get(self, "name")
572
+
573
+ @name.setter
574
+ def name(self, value: Optional[pulumi.Input[str]]):
575
+ pulumi.set(self, "name", value)
576
+
577
+ @property
578
+ @pulumi.getter(name="privateLocations")
579
+ def private_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
580
+ """
581
+ An array of one or more private locations slugs.
582
+ """
583
+ return pulumi.get(self, "private_locations")
584
+
585
+ @private_locations.setter
586
+ def private_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
587
+ pulumi.set(self, "private_locations", value)
588
+
589
+ @property
590
+ @pulumi.getter
591
+ def request(self) -> Optional[pulumi.Input['UrlMonitorRequestArgs']]:
592
+ """
593
+ The parameters of the HTTP request.
594
+ """
595
+ return pulumi.get(self, "request")
596
+
597
+ @request.setter
598
+ def request(self, value: Optional[pulumi.Input['UrlMonitorRequestArgs']]):
599
+ pulumi.set(self, "request", value)
600
+
601
+ @property
602
+ @pulumi.getter(name="retryStrategy")
603
+ def retry_strategy(self) -> Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']]:
604
+ """
605
+ A strategy for retrying failed monitor runs.
606
+ """
607
+ return pulumi.get(self, "retry_strategy")
608
+
609
+ @retry_strategy.setter
610
+ def retry_strategy(self, value: Optional[pulumi.Input['UrlMonitorRetryStrategyArgs']]):
611
+ pulumi.set(self, "retry_strategy", value)
612
+
613
+ @property
614
+ @pulumi.getter(name="runParallel")
615
+ def run_parallel(self) -> Optional[pulumi.Input[bool]]:
616
+ """
617
+ Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
618
+ """
619
+ return pulumi.get(self, "run_parallel")
620
+
621
+ @run_parallel.setter
622
+ def run_parallel(self, value: Optional[pulumi.Input[bool]]):
623
+ pulumi.set(self, "run_parallel", value)
624
+
625
+ @property
626
+ @pulumi.getter(name="shouldFail")
627
+ def should_fail(self) -> Optional[pulumi.Input[bool]]:
628
+ """
629
+ Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
630
+ """
631
+ return pulumi.get(self, "should_fail")
632
+
633
+ @should_fail.setter
634
+ def should_fail(self, value: Optional[pulumi.Input[bool]]):
635
+ pulumi.set(self, "should_fail", value)
636
+
637
+ @property
638
+ @pulumi.getter
639
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
640
+ """
641
+ A list of tags for organizing and filtering checks and monitors.
642
+ """
643
+ return pulumi.get(self, "tags")
644
+
645
+ @tags.setter
646
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
647
+ pulumi.set(self, "tags", value)
648
+
649
+ @property
650
+ @pulumi.getter(name="triggerIncident")
651
+ def trigger_incident(self) -> Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']]:
652
+ """
653
+ Create and resolve an incident based on the alert configuration. Useful for status page automation.
654
+ """
655
+ return pulumi.get(self, "trigger_incident")
656
+
657
+ @trigger_incident.setter
658
+ def trigger_incident(self, value: Optional[pulumi.Input['UrlMonitorTriggerIncidentArgs']]):
659
+ pulumi.set(self, "trigger_incident", value)
660
+
661
+ @property
662
+ @pulumi.getter(name="useGlobalAlertSettings")
663
+ def use_global_alert_settings(self) -> Optional[pulumi.Input[bool]]:
664
+ """
665
+ When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
666
+ """
667
+ return pulumi.get(self, "use_global_alert_settings")
668
+
669
+ @use_global_alert_settings.setter
670
+ def use_global_alert_settings(self, value: Optional[pulumi.Input[bool]]):
671
+ pulumi.set(self, "use_global_alert_settings", value)
672
+
673
+
674
+ class UrlMonitor(pulumi.CustomResource):
675
+ @overload
676
+ def __init__(__self__,
677
+ resource_name: str,
678
+ opts: Optional[pulumi.ResourceOptions] = None,
679
+ activated: Optional[pulumi.Input[bool]] = None,
680
+ alert_channel_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UrlMonitorAlertChannelSubscriptionArgs', 'UrlMonitorAlertChannelSubscriptionArgsDict']]]]] = None,
681
+ alert_settings: Optional[pulumi.Input[Union['UrlMonitorAlertSettingsArgs', 'UrlMonitorAlertSettingsArgsDict']]] = None,
682
+ degraded_response_time: Optional[pulumi.Input[int]] = None,
683
+ frequency: Optional[pulumi.Input[int]] = None,
684
+ frequency_offset: Optional[pulumi.Input[int]] = None,
685
+ group_id: Optional[pulumi.Input[int]] = None,
686
+ group_order: Optional[pulumi.Input[int]] = None,
687
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
688
+ max_response_time: Optional[pulumi.Input[int]] = None,
689
+ muted: Optional[pulumi.Input[bool]] = None,
690
+ name: Optional[pulumi.Input[str]] = None,
691
+ private_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
692
+ request: Optional[pulumi.Input[Union['UrlMonitorRequestArgs', 'UrlMonitorRequestArgsDict']]] = None,
693
+ retry_strategy: Optional[pulumi.Input[Union['UrlMonitorRetryStrategyArgs', 'UrlMonitorRetryStrategyArgsDict']]] = None,
694
+ run_parallel: Optional[pulumi.Input[bool]] = None,
695
+ should_fail: Optional[pulumi.Input[bool]] = None,
696
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
697
+ trigger_incident: Optional[pulumi.Input[Union['UrlMonitorTriggerIncidentArgs', 'UrlMonitorTriggerIncidentArgsDict']]] = None,
698
+ use_global_alert_settings: Optional[pulumi.Input[bool]] = None,
699
+ __props__=None):
700
+ """
701
+ Creates a URL Monitor to check HTTP endpoint availability and response times.
702
+
703
+ ## Example Usage
704
+
705
+ ```python
706
+ import pulumi
707
+ import pulumi_checkly as checkly
708
+
709
+ example_url_monitor = checkly.UrlMonitor("example-url-monitor",
710
+ name="Example URL monitor",
711
+ activated=True,
712
+ frequency=2,
713
+ use_global_alert_settings=True,
714
+ locations=["eu-west-1"],
715
+ request={
716
+ "url": "https://welcome.checklyhq.com",
717
+ "assertions": [{
718
+ "source": "STATUS_CODE",
719
+ "comparison": "EQUALS",
720
+ "target": "200",
721
+ }],
722
+ })
723
+ ```
724
+
725
+ :param str resource_name: The name of the resource.
726
+ :param pulumi.ResourceOptions opts: Options for the resource.
727
+ :param pulumi.Input[bool] activated: Determines whether the monitor will run periodically or not after being deployed.
728
+ :param pulumi.Input[Sequence[pulumi.Input[Union['UrlMonitorAlertChannelSubscriptionArgs', 'UrlMonitorAlertChannelSubscriptionArgsDict']]]] alert_channel_subscriptions: An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
729
+ :param pulumi.Input[Union['UrlMonitorAlertSettingsArgs', 'UrlMonitorAlertSettingsArgsDict']] alert_settings: Determines the alert escalation policy for the monitor.
730
+ :param pulumi.Input[int] degraded_response_time: The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
731
+ :param pulumi.Input[int] frequency: How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
732
+ :param pulumi.Input[int] frequency_offset: To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
733
+ :param pulumi.Input[int] group_id: The ID of the check group that this monitor is part of.
734
+ :param pulumi.Input[int] group_order: The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
735
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] locations: An array of one or more data center locations where to run the this monitor.
736
+ :param pulumi.Input[int] max_response_time: The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
737
+ :param pulumi.Input[bool] muted: Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
738
+ :param pulumi.Input[str] name: The name of the monitor.
739
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] private_locations: An array of one or more private locations slugs.
740
+ :param pulumi.Input[Union['UrlMonitorRequestArgs', 'UrlMonitorRequestArgsDict']] request: The parameters of the HTTP request.
741
+ :param pulumi.Input[Union['UrlMonitorRetryStrategyArgs', 'UrlMonitorRetryStrategyArgsDict']] retry_strategy: A strategy for retrying failed monitor runs.
742
+ :param pulumi.Input[bool] run_parallel: Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
743
+ :param pulumi.Input[bool] should_fail: Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
744
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags for organizing and filtering checks and monitors.
745
+ :param pulumi.Input[Union['UrlMonitorTriggerIncidentArgs', 'UrlMonitorTriggerIncidentArgsDict']] trigger_incident: Create and resolve an incident based on the alert configuration. Useful for status page automation.
746
+ :param pulumi.Input[bool] use_global_alert_settings: When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
747
+ """
748
+ ...
749
+ @overload
750
+ def __init__(__self__,
751
+ resource_name: str,
752
+ args: UrlMonitorArgs,
753
+ opts: Optional[pulumi.ResourceOptions] = None):
754
+ """
755
+ Creates a URL Monitor to check HTTP endpoint availability and response times.
756
+
757
+ ## Example Usage
758
+
759
+ ```python
760
+ import pulumi
761
+ import pulumi_checkly as checkly
762
+
763
+ example_url_monitor = checkly.UrlMonitor("example-url-monitor",
764
+ name="Example URL monitor",
765
+ activated=True,
766
+ frequency=2,
767
+ use_global_alert_settings=True,
768
+ locations=["eu-west-1"],
769
+ request={
770
+ "url": "https://welcome.checklyhq.com",
771
+ "assertions": [{
772
+ "source": "STATUS_CODE",
773
+ "comparison": "EQUALS",
774
+ "target": "200",
775
+ }],
776
+ })
777
+ ```
778
+
779
+ :param str resource_name: The name of the resource.
780
+ :param UrlMonitorArgs args: The arguments to use to populate this resource's properties.
781
+ :param pulumi.ResourceOptions opts: Options for the resource.
782
+ """
783
+ ...
784
+ def __init__(__self__, resource_name: str, *args, **kwargs):
785
+ resource_args, opts = _utilities.get_resource_args_opts(UrlMonitorArgs, pulumi.ResourceOptions, *args, **kwargs)
786
+ if resource_args is not None:
787
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
788
+ else:
789
+ __self__._internal_init(resource_name, *args, **kwargs)
790
+
791
+ def _internal_init(__self__,
792
+ resource_name: str,
793
+ opts: Optional[pulumi.ResourceOptions] = None,
794
+ activated: Optional[pulumi.Input[bool]] = None,
795
+ alert_channel_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UrlMonitorAlertChannelSubscriptionArgs', 'UrlMonitorAlertChannelSubscriptionArgsDict']]]]] = None,
796
+ alert_settings: Optional[pulumi.Input[Union['UrlMonitorAlertSettingsArgs', 'UrlMonitorAlertSettingsArgsDict']]] = None,
797
+ degraded_response_time: Optional[pulumi.Input[int]] = None,
798
+ frequency: Optional[pulumi.Input[int]] = None,
799
+ frequency_offset: Optional[pulumi.Input[int]] = None,
800
+ group_id: Optional[pulumi.Input[int]] = None,
801
+ group_order: Optional[pulumi.Input[int]] = None,
802
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
803
+ max_response_time: Optional[pulumi.Input[int]] = None,
804
+ muted: Optional[pulumi.Input[bool]] = None,
805
+ name: Optional[pulumi.Input[str]] = None,
806
+ private_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
807
+ request: Optional[pulumi.Input[Union['UrlMonitorRequestArgs', 'UrlMonitorRequestArgsDict']]] = None,
808
+ retry_strategy: Optional[pulumi.Input[Union['UrlMonitorRetryStrategyArgs', 'UrlMonitorRetryStrategyArgsDict']]] = None,
809
+ run_parallel: Optional[pulumi.Input[bool]] = None,
810
+ should_fail: Optional[pulumi.Input[bool]] = None,
811
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
812
+ trigger_incident: Optional[pulumi.Input[Union['UrlMonitorTriggerIncidentArgs', 'UrlMonitorTriggerIncidentArgsDict']]] = None,
813
+ use_global_alert_settings: Optional[pulumi.Input[bool]] = None,
814
+ __props__=None):
815
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
816
+ if not isinstance(opts, pulumi.ResourceOptions):
817
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
818
+ if opts.id is None:
819
+ if __props__ is not None:
820
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
821
+ __props__ = UrlMonitorArgs.__new__(UrlMonitorArgs)
822
+
823
+ if activated is None and not opts.urn:
824
+ raise TypeError("Missing required property 'activated'")
825
+ __props__.__dict__["activated"] = activated
826
+ __props__.__dict__["alert_channel_subscriptions"] = alert_channel_subscriptions
827
+ __props__.__dict__["alert_settings"] = alert_settings
828
+ __props__.__dict__["degraded_response_time"] = degraded_response_time
829
+ if frequency is None and not opts.urn:
830
+ raise TypeError("Missing required property 'frequency'")
831
+ __props__.__dict__["frequency"] = frequency
832
+ __props__.__dict__["frequency_offset"] = frequency_offset
833
+ __props__.__dict__["group_id"] = group_id
834
+ __props__.__dict__["group_order"] = group_order
835
+ __props__.__dict__["locations"] = locations
836
+ __props__.__dict__["max_response_time"] = max_response_time
837
+ __props__.__dict__["muted"] = muted
838
+ __props__.__dict__["name"] = name
839
+ __props__.__dict__["private_locations"] = private_locations
840
+ if request is None and not opts.urn:
841
+ raise TypeError("Missing required property 'request'")
842
+ __props__.__dict__["request"] = request
843
+ __props__.__dict__["retry_strategy"] = retry_strategy
844
+ __props__.__dict__["run_parallel"] = run_parallel
845
+ __props__.__dict__["should_fail"] = should_fail
846
+ __props__.__dict__["tags"] = tags
847
+ __props__.__dict__["trigger_incident"] = trigger_incident
848
+ __props__.__dict__["use_global_alert_settings"] = use_global_alert_settings
849
+ super(UrlMonitor, __self__).__init__(
850
+ 'checkly:index/urlMonitor:UrlMonitor',
851
+ resource_name,
852
+ __props__,
853
+ opts)
854
+
855
+ @staticmethod
856
+ def get(resource_name: str,
857
+ id: pulumi.Input[str],
858
+ opts: Optional[pulumi.ResourceOptions] = None,
859
+ activated: Optional[pulumi.Input[bool]] = None,
860
+ alert_channel_subscriptions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UrlMonitorAlertChannelSubscriptionArgs', 'UrlMonitorAlertChannelSubscriptionArgsDict']]]]] = None,
861
+ alert_settings: Optional[pulumi.Input[Union['UrlMonitorAlertSettingsArgs', 'UrlMonitorAlertSettingsArgsDict']]] = None,
862
+ degraded_response_time: Optional[pulumi.Input[int]] = None,
863
+ frequency: Optional[pulumi.Input[int]] = None,
864
+ frequency_offset: Optional[pulumi.Input[int]] = None,
865
+ group_id: Optional[pulumi.Input[int]] = None,
866
+ group_order: Optional[pulumi.Input[int]] = None,
867
+ locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
868
+ max_response_time: Optional[pulumi.Input[int]] = None,
869
+ muted: Optional[pulumi.Input[bool]] = None,
870
+ name: Optional[pulumi.Input[str]] = None,
871
+ private_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
872
+ request: Optional[pulumi.Input[Union['UrlMonitorRequestArgs', 'UrlMonitorRequestArgsDict']]] = None,
873
+ retry_strategy: Optional[pulumi.Input[Union['UrlMonitorRetryStrategyArgs', 'UrlMonitorRetryStrategyArgsDict']]] = None,
874
+ run_parallel: Optional[pulumi.Input[bool]] = None,
875
+ should_fail: Optional[pulumi.Input[bool]] = None,
876
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
877
+ trigger_incident: Optional[pulumi.Input[Union['UrlMonitorTriggerIncidentArgs', 'UrlMonitorTriggerIncidentArgsDict']]] = None,
878
+ use_global_alert_settings: Optional[pulumi.Input[bool]] = None) -> 'UrlMonitor':
879
+ """
880
+ Get an existing UrlMonitor resource's state with the given name, id, and optional extra
881
+ properties used to qualify the lookup.
882
+
883
+ :param str resource_name: The unique name of the resulting resource.
884
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
885
+ :param pulumi.ResourceOptions opts: Options for the resource.
886
+ :param pulumi.Input[bool] activated: Determines whether the monitor will run periodically or not after being deployed.
887
+ :param pulumi.Input[Sequence[pulumi.Input[Union['UrlMonitorAlertChannelSubscriptionArgs', 'UrlMonitorAlertChannelSubscriptionArgsDict']]]] alert_channel_subscriptions: An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
888
+ :param pulumi.Input[Union['UrlMonitorAlertSettingsArgs', 'UrlMonitorAlertSettingsArgsDict']] alert_settings: Determines the alert escalation policy for the monitor.
889
+ :param pulumi.Input[int] degraded_response_time: The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
890
+ :param pulumi.Input[int] frequency: How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
891
+ :param pulumi.Input[int] frequency_offset: To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
892
+ :param pulumi.Input[int] group_id: The ID of the check group that this monitor is part of.
893
+ :param pulumi.Input[int] group_order: The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
894
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] locations: An array of one or more data center locations where to run the this monitor.
895
+ :param pulumi.Input[int] max_response_time: The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
896
+ :param pulumi.Input[bool] muted: Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
897
+ :param pulumi.Input[str] name: The name of the monitor.
898
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] private_locations: An array of one or more private locations slugs.
899
+ :param pulumi.Input[Union['UrlMonitorRequestArgs', 'UrlMonitorRequestArgsDict']] request: The parameters of the HTTP request.
900
+ :param pulumi.Input[Union['UrlMonitorRetryStrategyArgs', 'UrlMonitorRetryStrategyArgsDict']] retry_strategy: A strategy for retrying failed monitor runs.
901
+ :param pulumi.Input[bool] run_parallel: Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
902
+ :param pulumi.Input[bool] should_fail: Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
903
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: A list of tags for organizing and filtering checks and monitors.
904
+ :param pulumi.Input[Union['UrlMonitorTriggerIncidentArgs', 'UrlMonitorTriggerIncidentArgsDict']] trigger_incident: Create and resolve an incident based on the alert configuration. Useful for status page automation.
905
+ :param pulumi.Input[bool] use_global_alert_settings: When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
906
+ """
907
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
908
+
909
+ __props__ = _UrlMonitorState.__new__(_UrlMonitorState)
910
+
911
+ __props__.__dict__["activated"] = activated
912
+ __props__.__dict__["alert_channel_subscriptions"] = alert_channel_subscriptions
913
+ __props__.__dict__["alert_settings"] = alert_settings
914
+ __props__.__dict__["degraded_response_time"] = degraded_response_time
915
+ __props__.__dict__["frequency"] = frequency
916
+ __props__.__dict__["frequency_offset"] = frequency_offset
917
+ __props__.__dict__["group_id"] = group_id
918
+ __props__.__dict__["group_order"] = group_order
919
+ __props__.__dict__["locations"] = locations
920
+ __props__.__dict__["max_response_time"] = max_response_time
921
+ __props__.__dict__["muted"] = muted
922
+ __props__.__dict__["name"] = name
923
+ __props__.__dict__["private_locations"] = private_locations
924
+ __props__.__dict__["request"] = request
925
+ __props__.__dict__["retry_strategy"] = retry_strategy
926
+ __props__.__dict__["run_parallel"] = run_parallel
927
+ __props__.__dict__["should_fail"] = should_fail
928
+ __props__.__dict__["tags"] = tags
929
+ __props__.__dict__["trigger_incident"] = trigger_incident
930
+ __props__.__dict__["use_global_alert_settings"] = use_global_alert_settings
931
+ return UrlMonitor(resource_name, opts=opts, __props__=__props__)
932
+
933
+ @property
934
+ @pulumi.getter
935
+ def activated(self) -> pulumi.Output[bool]:
936
+ """
937
+ Determines whether the monitor will run periodically or not after being deployed.
938
+ """
939
+ return pulumi.get(self, "activated")
940
+
941
+ @property
942
+ @pulumi.getter(name="alertChannelSubscriptions")
943
+ def alert_channel_subscriptions(self) -> pulumi.Output[Optional[Sequence['outputs.UrlMonitorAlertChannelSubscription']]]:
944
+ """
945
+ An array of channel IDs and whether they're activated or not. If you don't set at least one alert subscription for your monitor, we won't be able to alert you.
946
+ """
947
+ return pulumi.get(self, "alert_channel_subscriptions")
948
+
949
+ @property
950
+ @pulumi.getter(name="alertSettings")
951
+ def alert_settings(self) -> pulumi.Output['outputs.UrlMonitorAlertSettings']:
952
+ """
953
+ Determines the alert escalation policy for the monitor.
954
+ """
955
+ return pulumi.get(self, "alert_settings")
956
+
957
+ @property
958
+ @pulumi.getter(name="degradedResponseTime")
959
+ def degraded_response_time(self) -> pulumi.Output[Optional[int]]:
960
+ """
961
+ The response time in milliseconds where the monitor should be considered degraded. Possible values are between `0` and `30000`. (Default `3000`).
962
+ """
963
+ return pulumi.get(self, "degraded_response_time")
964
+
965
+ @property
966
+ @pulumi.getter
967
+ def frequency(self) -> pulumi.Output[int]:
968
+ """
969
+ How often the monitor should run in minutes. Possible values are `0`, `1`, `2`, `5`, `10`, `15`, `30`, `60`, `120`, `180`, `360`, `720`, and `1440`.
970
+ """
971
+ return pulumi.get(self, "frequency")
972
+
973
+ @property
974
+ @pulumi.getter(name="frequencyOffset")
975
+ def frequency_offset(self) -> pulumi.Output[Optional[int]]:
976
+ """
977
+ To create a high frequency monitor, set `frequency` to `0` and `frequency_offset` to `10`, `20`, or `30`.
978
+ """
979
+ return pulumi.get(self, "frequency_offset")
980
+
981
+ @property
982
+ @pulumi.getter(name="groupId")
983
+ def group_id(self) -> pulumi.Output[Optional[int]]:
984
+ """
985
+ The ID of the check group that this monitor is part of.
986
+ """
987
+ return pulumi.get(self, "group_id")
988
+
989
+ @property
990
+ @pulumi.getter(name="groupOrder")
991
+ def group_order(self) -> pulumi.Output[Optional[int]]:
992
+ """
993
+ The position of the monitor in the check group. It determines in what order checks and monitors are run when a group is triggered from the API or from CI/CD.
994
+ """
995
+ return pulumi.get(self, "group_order")
996
+
997
+ @property
998
+ @pulumi.getter
999
+ def locations(self) -> pulumi.Output[Optional[Sequence[str]]]:
1000
+ """
1001
+ An array of one or more data center locations where to run the this monitor.
1002
+ """
1003
+ return pulumi.get(self, "locations")
1004
+
1005
+ @property
1006
+ @pulumi.getter(name="maxResponseTime")
1007
+ def max_response_time(self) -> pulumi.Output[Optional[int]]:
1008
+ """
1009
+ The response time in milliseconds where the monitor should be considered failing. Possible values are between `0` and `30000`. (Default `5000`).
1010
+ """
1011
+ return pulumi.get(self, "max_response_time")
1012
+
1013
+ @property
1014
+ @pulumi.getter
1015
+ def muted(self) -> pulumi.Output[Optional[bool]]:
1016
+ """
1017
+ Determines if any notifications will be sent out when the monitor fails and/or recovers. (Default `false`).
1018
+ """
1019
+ return pulumi.get(self, "muted")
1020
+
1021
+ @property
1022
+ @pulumi.getter
1023
+ def name(self) -> pulumi.Output[str]:
1024
+ """
1025
+ The name of the monitor.
1026
+ """
1027
+ return pulumi.get(self, "name")
1028
+
1029
+ @property
1030
+ @pulumi.getter(name="privateLocations")
1031
+ def private_locations(self) -> pulumi.Output[Optional[Sequence[str]]]:
1032
+ """
1033
+ An array of one or more private locations slugs.
1034
+ """
1035
+ return pulumi.get(self, "private_locations")
1036
+
1037
+ @property
1038
+ @pulumi.getter
1039
+ def request(self) -> pulumi.Output['outputs.UrlMonitorRequest']:
1040
+ """
1041
+ The parameters of the HTTP request.
1042
+ """
1043
+ return pulumi.get(self, "request")
1044
+
1045
+ @property
1046
+ @pulumi.getter(name="retryStrategy")
1047
+ def retry_strategy(self) -> pulumi.Output['outputs.UrlMonitorRetryStrategy']:
1048
+ """
1049
+ A strategy for retrying failed monitor runs.
1050
+ """
1051
+ return pulumi.get(self, "retry_strategy")
1052
+
1053
+ @property
1054
+ @pulumi.getter(name="runParallel")
1055
+ def run_parallel(self) -> pulumi.Output[Optional[bool]]:
1056
+ """
1057
+ Determines whether the monitor should run on all selected locations in parallel or round-robin. (Default `false`).
1058
+ """
1059
+ return pulumi.get(self, "run_parallel")
1060
+
1061
+ @property
1062
+ @pulumi.getter(name="shouldFail")
1063
+ def should_fail(self) -> pulumi.Output[Optional[bool]]:
1064
+ """
1065
+ Allows to invert the behaviour of when the monitor is considered to fail. (Default `false`).
1066
+ """
1067
+ return pulumi.get(self, "should_fail")
1068
+
1069
+ @property
1070
+ @pulumi.getter
1071
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1072
+ """
1073
+ A list of tags for organizing and filtering checks and monitors.
1074
+ """
1075
+ return pulumi.get(self, "tags")
1076
+
1077
+ @property
1078
+ @pulumi.getter(name="triggerIncident")
1079
+ def trigger_incident(self) -> pulumi.Output[Optional['outputs.UrlMonitorTriggerIncident']]:
1080
+ """
1081
+ Create and resolve an incident based on the alert configuration. Useful for status page automation.
1082
+ """
1083
+ return pulumi.get(self, "trigger_incident")
1084
+
1085
+ @property
1086
+ @pulumi.getter(name="useGlobalAlertSettings")
1087
+ def use_global_alert_settings(self) -> pulumi.Output[Optional[bool]]:
1088
+ """
1089
+ When true, the account level alert settings will be used, not the alert setting defined on this monitor. (Default `true`).
1090
+ """
1091
+ return pulumi.get(self, "use_global_alert_settings")
1092
+