pulumi-cloudflare 6.10.1__py3-none-any.whl → 6.11.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.
Files changed (96) hide show
  1. pulumi_cloudflare/__init__.py +31 -0
  2. pulumi_cloudflare/_inputs.py +2127 -309
  3. pulumi_cloudflare/access_application.py +7 -7
  4. pulumi_cloudflare/access_identity_provider.py +60 -0
  5. pulumi_cloudflare/access_mutual_tls_hostname_settings.py +26 -0
  6. pulumi_cloudflare/access_organization.py +56 -0
  7. pulumi_cloudflare/access_policy.py +96 -0
  8. pulumi_cloudflare/account.py +47 -0
  9. pulumi_cloudflare/account_dns_settings.py +62 -0
  10. pulumi_cloudflare/account_subscription.py +36 -0
  11. pulumi_cloudflare/account_token.py +90 -0
  12. pulumi_cloudflare/api_shield.py +0 -68
  13. pulumi_cloudflare/api_token.py +88 -0
  14. pulumi_cloudflare/authenticated_origin_pulls.py +26 -0
  15. pulumi_cloudflare/content_scanning.py +253 -0
  16. pulumi_cloudflare/custom_hostname.py +144 -0
  17. pulumi_cloudflare/custom_pages.py +7 -7
  18. pulumi_cloudflare/device_managed_networks.py +28 -0
  19. pulumi_cloudflare/device_posture_integration.py +34 -0
  20. pulumi_cloudflare/device_posture_rule.py +46 -0
  21. pulumi_cloudflare/dlp_custom_profile.py +57 -7
  22. pulumi_cloudflare/dns_firewall.py +50 -0
  23. pulumi_cloudflare/dns_record.py +38 -0
  24. pulumi_cloudflare/get_account.py +15 -1
  25. pulumi_cloudflare/get_api_shield.py +5 -27
  26. pulumi_cloudflare/get_content_scanning.py +136 -0
  27. pulumi_cloudflare/get_custom_pages.py +3 -3
  28. pulumi_cloudflare/get_list.py +2 -2
  29. pulumi_cloudflare/get_magic_transit_connector.py +12 -1
  30. pulumi_cloudflare/get_notification_policy.py +3 -3
  31. pulumi_cloudflare/get_notification_policy_webhooks.py +2 -2
  32. pulumi_cloudflare/get_organization.py +171 -0
  33. pulumi_cloudflare/get_organization_profile.py +154 -0
  34. pulumi_cloudflare/get_organizations.py +248 -0
  35. pulumi_cloudflare/get_pages_project.py +77 -7
  36. pulumi_cloudflare/get_worker.py +15 -1
  37. pulumi_cloudflare/get_zero_trust_access_application.py +1 -1
  38. pulumi_cloudflare/get_zero_trust_dex_test.py +7 -0
  39. pulumi_cloudflare/get_zero_trust_gateway_policy.py +1 -1
  40. pulumi_cloudflare/get_zero_trust_tunnel_cloudflared_config.py +18 -4
  41. pulumi_cloudflare/healthcheck.py +84 -0
  42. pulumi_cloudflare/hyperdrive_config.py +52 -0
  43. pulumi_cloudflare/keyless_certificate.py +34 -0
  44. pulumi_cloudflare/list_item.py +16 -0
  45. pulumi_cloudflare/load_balancer.py +282 -0
  46. pulumi_cloudflare/logpush_job.py +80 -0
  47. pulumi_cloudflare/magic_transit_site_acl.py +56 -0
  48. pulumi_cloudflare/magic_transit_site_lan.py +82 -0
  49. pulumi_cloudflare/magic_transit_site_wan.py +36 -0
  50. pulumi_cloudflare/magic_wan_static_route.py +34 -0
  51. pulumi_cloudflare/notification_policy.py +145 -7
  52. pulumi_cloudflare/organization.py +297 -0
  53. pulumi_cloudflare/organization_profile.py +340 -0
  54. pulumi_cloudflare/outputs.py +3322 -642
  55. pulumi_cloudflare/page_rule.py +34 -0
  56. pulumi_cloudflare/pages_project.py +571 -30
  57. pulumi_cloudflare/pulumi-plugin.json +1 -1
  58. pulumi_cloudflare/queue_consumer.py +38 -0
  59. pulumi_cloudflare/r2_bucket_cors.py +38 -0
  60. pulumi_cloudflare/r2_bucket_event_notification.py +19 -18
  61. pulumi_cloudflare/r2_bucket_lifecycle.py +70 -0
  62. pulumi_cloudflare/record.py +38 -0
  63. pulumi_cloudflare/snippet.py +42 -0
  64. pulumi_cloudflare/snippet_rules.py +28 -0
  65. pulumi_cloudflare/static_route.py +34 -0
  66. pulumi_cloudflare/teams_account.py +148 -0
  67. pulumi_cloudflare/teams_rule.py +259 -7
  68. pulumi_cloudflare/tunnel_config.py +50 -3
  69. pulumi_cloudflare/worker.py +88 -0
  70. pulumi_cloudflare/worker_script.py +158 -2
  71. pulumi_cloudflare/worker_version.py +112 -0
  72. pulumi_cloudflare/workers_deployment.py +34 -0
  73. pulumi_cloudflare/workers_script.py +158 -2
  74. pulumi_cloudflare/zero_trust_access_application.py +7 -7
  75. pulumi_cloudflare/zero_trust_access_identity_provider.py +60 -0
  76. pulumi_cloudflare/zero_trust_access_mtls_hostname_settings.py +26 -0
  77. pulumi_cloudflare/zero_trust_access_policy.py +96 -0
  78. pulumi_cloudflare/zero_trust_device_managed_networks.py +28 -0
  79. pulumi_cloudflare/zero_trust_device_posture_integration.py +34 -0
  80. pulumi_cloudflare/zero_trust_device_posture_rule.py +46 -0
  81. pulumi_cloudflare/zero_trust_dex_test.py +63 -3
  82. pulumi_cloudflare/zero_trust_dlp_custom_entry.py +6 -7
  83. pulumi_cloudflare/zero_trust_dlp_custom_profile.py +57 -7
  84. pulumi_cloudflare/zero_trust_dlp_entry.py +6 -7
  85. pulumi_cloudflare/zero_trust_dlp_predefined_entry.py +1 -1
  86. pulumi_cloudflare/zero_trust_gateway_policy.py +259 -7
  87. pulumi_cloudflare/zero_trust_gateway_settings.py +148 -0
  88. pulumi_cloudflare/zero_trust_organization.py +56 -0
  89. pulumi_cloudflare/zero_trust_tunnel_cloudflared_config.py +50 -3
  90. pulumi_cloudflare/zone_cache_variants.py +108 -0
  91. pulumi_cloudflare/zone_dns_settings.py +60 -0
  92. pulumi_cloudflare/zone_subscription.py +36 -0
  93. {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/METADATA +1 -1
  94. {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/RECORD +96 -89
  95. {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/WHEEL +0 -0
  96. {pulumi_cloudflare-6.10.1.dist-info → pulumi_cloudflare-6.11.0.dist-info}/top_level.txt +0 -0
@@ -332,6 +332,51 @@ class AccountToken(pulumi.CustomResource):
332
332
  """
333
333
  ## Example Usage
334
334
 
335
+ ```python
336
+ import pulumi
337
+ import pulumi_cloudflare as cloudflare
338
+
339
+ example_account_token = cloudflare.AccountToken("example_account_token",
340
+ account_id="023e105f4ecef8ad9ca31a8372d0c353",
341
+ name="readonly token",
342
+ policies=[{
343
+ "effect": "allow",
344
+ "permission_groups": [
345
+ {
346
+ "id": "c8fed203ed3043cba015a93ad1616f1f",
347
+ "meta": {
348
+ "key": "key",
349
+ "value": "value",
350
+ },
351
+ },
352
+ {
353
+ "id": "82e64a83756745bbbb1c9c2701bf816b",
354
+ "meta": {
355
+ "key": "key",
356
+ "value": "value",
357
+ },
358
+ },
359
+ ],
360
+ "resources": {
361
+ "foo": "string",
362
+ },
363
+ }],
364
+ condition={
365
+ "request_ip": {
366
+ "ins": [
367
+ "123.123.123.0/24",
368
+ "2606:4700::/32",
369
+ ],
370
+ "not_ins": [
371
+ "123.123.123.100/24",
372
+ "2606:4700:4700::/48",
373
+ ],
374
+ },
375
+ },
376
+ expires_on="2020-01-01T00:00:00Z",
377
+ not_before="2018-07-01T05:20:00Z")
378
+ ```
379
+
335
380
  ## Import
336
381
 
337
382
  ```sh
@@ -357,6 +402,51 @@ class AccountToken(pulumi.CustomResource):
357
402
  """
358
403
  ## Example Usage
359
404
 
405
+ ```python
406
+ import pulumi
407
+ import pulumi_cloudflare as cloudflare
408
+
409
+ example_account_token = cloudflare.AccountToken("example_account_token",
410
+ account_id="023e105f4ecef8ad9ca31a8372d0c353",
411
+ name="readonly token",
412
+ policies=[{
413
+ "effect": "allow",
414
+ "permission_groups": [
415
+ {
416
+ "id": "c8fed203ed3043cba015a93ad1616f1f",
417
+ "meta": {
418
+ "key": "key",
419
+ "value": "value",
420
+ },
421
+ },
422
+ {
423
+ "id": "82e64a83756745bbbb1c9c2701bf816b",
424
+ "meta": {
425
+ "key": "key",
426
+ "value": "value",
427
+ },
428
+ },
429
+ ],
430
+ "resources": {
431
+ "foo": "string",
432
+ },
433
+ }],
434
+ condition={
435
+ "request_ip": {
436
+ "ins": [
437
+ "123.123.123.0/24",
438
+ "2606:4700::/32",
439
+ ],
440
+ "not_ins": [
441
+ "123.123.123.100/24",
442
+ "2606:4700:4700::/48",
443
+ ],
444
+ },
445
+ },
446
+ expires_on="2020-01-01T00:00:00Z",
447
+ not_before="2018-07-01T05:20:00Z")
448
+ ```
449
+
360
450
  ## Import
361
451
 
362
452
  ```sh
@@ -56,23 +56,13 @@ class ApiShieldArgs:
56
56
  class _ApiShieldState:
57
57
  def __init__(__self__, *,
58
58
  auth_id_characteristics: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldAuthIdCharacteristicArgs']]]] = None,
59
- errors: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldErrorArgs']]]] = None,
60
- messages: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldMessageArgs']]]] = None,
61
- success: Optional[pulumi.Input[_builtins.bool]] = None,
62
59
  zone_id: Optional[pulumi.Input[_builtins.str]] = None):
63
60
  """
64
61
  Input properties used for looking up and filtering ApiShield resources.
65
- :param pulumi.Input[_builtins.bool] success: Whether the API call was successful.
66
62
  :param pulumi.Input[_builtins.str] zone_id: Identifier.
67
63
  """
68
64
  if auth_id_characteristics is not None:
69
65
  pulumi.set(__self__, "auth_id_characteristics", auth_id_characteristics)
70
- if errors is not None:
71
- pulumi.set(__self__, "errors", errors)
72
- if messages is not None:
73
- pulumi.set(__self__, "messages", messages)
74
- if success is not None:
75
- pulumi.set(__self__, "success", success)
76
66
  if zone_id is not None:
77
67
  pulumi.set(__self__, "zone_id", zone_id)
78
68
 
@@ -85,36 +75,6 @@ class _ApiShieldState:
85
75
  def auth_id_characteristics(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldAuthIdCharacteristicArgs']]]]):
86
76
  pulumi.set(self, "auth_id_characteristics", value)
87
77
 
88
- @_builtins.property
89
- @pulumi.getter
90
- def errors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldErrorArgs']]]]:
91
- return pulumi.get(self, "errors")
92
-
93
- @errors.setter
94
- def errors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldErrorArgs']]]]):
95
- pulumi.set(self, "errors", value)
96
-
97
- @_builtins.property
98
- @pulumi.getter
99
- def messages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldMessageArgs']]]]:
100
- return pulumi.get(self, "messages")
101
-
102
- @messages.setter
103
- def messages(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ApiShieldMessageArgs']]]]):
104
- pulumi.set(self, "messages", value)
105
-
106
- @_builtins.property
107
- @pulumi.getter
108
- def success(self) -> Optional[pulumi.Input[_builtins.bool]]:
109
- """
110
- Whether the API call was successful.
111
- """
112
- return pulumi.get(self, "success")
113
-
114
- @success.setter
115
- def success(self, value: Optional[pulumi.Input[_builtins.bool]]):
116
- pulumi.set(self, "success", value)
117
-
118
78
  @_builtins.property
119
79
  @pulumi.getter(name="zoneId")
120
80
  def zone_id(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -221,9 +181,6 @@ class ApiShield(pulumi.CustomResource):
221
181
  if zone_id is None and not opts.urn:
222
182
  raise TypeError("Missing required property 'zone_id'")
223
183
  __props__.__dict__["zone_id"] = zone_id
224
- __props__.__dict__["errors"] = None
225
- __props__.__dict__["messages"] = None
226
- __props__.__dict__["success"] = None
227
184
  super(ApiShield, __self__).__init__(
228
185
  'cloudflare:index/apiShield:ApiShield',
229
186
  resource_name,
@@ -235,9 +192,6 @@ class ApiShield(pulumi.CustomResource):
235
192
  id: pulumi.Input[str],
236
193
  opts: Optional[pulumi.ResourceOptions] = None,
237
194
  auth_id_characteristics: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApiShieldAuthIdCharacteristicArgs', 'ApiShieldAuthIdCharacteristicArgsDict']]]]] = None,
238
- errors: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApiShieldErrorArgs', 'ApiShieldErrorArgsDict']]]]] = None,
239
- messages: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ApiShieldMessageArgs', 'ApiShieldMessageArgsDict']]]]] = None,
240
- success: Optional[pulumi.Input[_builtins.bool]] = None,
241
195
  zone_id: Optional[pulumi.Input[_builtins.str]] = None) -> 'ApiShield':
242
196
  """
243
197
  Get an existing ApiShield resource's state with the given name, id, and optional extra
@@ -246,7 +200,6 @@ class ApiShield(pulumi.CustomResource):
246
200
  :param str resource_name: The unique name of the resulting resource.
247
201
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
248
202
  :param pulumi.ResourceOptions opts: Options for the resource.
249
- :param pulumi.Input[_builtins.bool] success: Whether the API call was successful.
250
203
  :param pulumi.Input[_builtins.str] zone_id: Identifier.
251
204
  """
252
205
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -254,9 +207,6 @@ class ApiShield(pulumi.CustomResource):
254
207
  __props__ = _ApiShieldState.__new__(_ApiShieldState)
255
208
 
256
209
  __props__.__dict__["auth_id_characteristics"] = auth_id_characteristics
257
- __props__.__dict__["errors"] = errors
258
- __props__.__dict__["messages"] = messages
259
- __props__.__dict__["success"] = success
260
210
  __props__.__dict__["zone_id"] = zone_id
261
211
  return ApiShield(resource_name, opts=opts, __props__=__props__)
262
212
 
@@ -265,24 +215,6 @@ class ApiShield(pulumi.CustomResource):
265
215
  def auth_id_characteristics(self) -> pulumi.Output[Sequence['outputs.ApiShieldAuthIdCharacteristic']]:
266
216
  return pulumi.get(self, "auth_id_characteristics")
267
217
 
268
- @_builtins.property
269
- @pulumi.getter
270
- def errors(self) -> pulumi.Output[Sequence['outputs.ApiShieldError']]:
271
- return pulumi.get(self, "errors")
272
-
273
- @_builtins.property
274
- @pulumi.getter
275
- def messages(self) -> pulumi.Output[Sequence['outputs.ApiShieldMessage']]:
276
- return pulumi.get(self, "messages")
277
-
278
- @_builtins.property
279
- @pulumi.getter
280
- def success(self) -> pulumi.Output[_builtins.bool]:
281
- """
282
- Whether the API call was successful.
283
- """
284
- return pulumi.get(self, "success")
285
-
286
218
  @_builtins.property
287
219
  @pulumi.getter(name="zoneId")
288
220
  def zone_id(self) -> pulumi.Output[_builtins.str]:
@@ -300,6 +300,50 @@ class ApiToken(pulumi.CustomResource):
300
300
  """
301
301
  ## Example Usage
302
302
 
303
+ ```python
304
+ import pulumi
305
+ import pulumi_cloudflare as cloudflare
306
+
307
+ example_api_token = cloudflare.ApiToken("example_api_token",
308
+ name="readonly token",
309
+ policies=[{
310
+ "effect": "allow",
311
+ "permission_groups": [
312
+ {
313
+ "id": "c8fed203ed3043cba015a93ad1616f1f",
314
+ "meta": {
315
+ "key": "key",
316
+ "value": "value",
317
+ },
318
+ },
319
+ {
320
+ "id": "82e64a83756745bbbb1c9c2701bf816b",
321
+ "meta": {
322
+ "key": "key",
323
+ "value": "value",
324
+ },
325
+ },
326
+ ],
327
+ "resources": {
328
+ "foo": "string",
329
+ },
330
+ }],
331
+ condition={
332
+ "request_ip": {
333
+ "ins": [
334
+ "123.123.123.0/24",
335
+ "2606:4700::/32",
336
+ ],
337
+ "not_ins": [
338
+ "123.123.123.100/24",
339
+ "2606:4700:4700::/48",
340
+ ],
341
+ },
342
+ },
343
+ expires_on="2020-01-01T00:00:00Z",
344
+ not_before="2018-07-01T05:20:00Z")
345
+ ```
346
+
303
347
  ## Import
304
348
 
305
349
  ```sh
@@ -324,6 +368,50 @@ class ApiToken(pulumi.CustomResource):
324
368
  """
325
369
  ## Example Usage
326
370
 
371
+ ```python
372
+ import pulumi
373
+ import pulumi_cloudflare as cloudflare
374
+
375
+ example_api_token = cloudflare.ApiToken("example_api_token",
376
+ name="readonly token",
377
+ policies=[{
378
+ "effect": "allow",
379
+ "permission_groups": [
380
+ {
381
+ "id": "c8fed203ed3043cba015a93ad1616f1f",
382
+ "meta": {
383
+ "key": "key",
384
+ "value": "value",
385
+ },
386
+ },
387
+ {
388
+ "id": "82e64a83756745bbbb1c9c2701bf816b",
389
+ "meta": {
390
+ "key": "key",
391
+ "value": "value",
392
+ },
393
+ },
394
+ ],
395
+ "resources": {
396
+ "foo": "string",
397
+ },
398
+ }],
399
+ condition={
400
+ "request_ip": {
401
+ "ins": [
402
+ "123.123.123.0/24",
403
+ "2606:4700::/32",
404
+ ],
405
+ "not_ins": [
406
+ "123.123.123.100/24",
407
+ "2606:4700:4700::/48",
408
+ ],
409
+ },
410
+ },
411
+ expires_on="2020-01-01T00:00:00Z",
412
+ not_before="2018-07-01T05:20:00Z")
413
+ ```
414
+
327
415
  ## Import
328
416
 
329
417
  ```sh
@@ -361,6 +361,19 @@ class AuthenticatedOriginPulls(pulumi.CustomResource):
361
361
  """
362
362
  ## Example Usage
363
363
 
364
+ ```python
365
+ import pulumi
366
+ import pulumi_cloudflare as cloudflare
367
+
368
+ example_authenticated_origin_pulls = cloudflare.AuthenticatedOriginPulls("example_authenticated_origin_pulls",
369
+ zone_id="023e105f4ecef8ad9ca31a8372d0c353",
370
+ configs=[{
371
+ "cert_id": "2458ce5a-0c35-4c7f-82c7-8e9487d3ff60",
372
+ "enabled": True,
373
+ "hostname": "app.example.com",
374
+ }])
375
+ ```
376
+
364
377
  :param str resource_name: The name of the resource.
365
378
  :param pulumi.ResourceOptions opts: Options for the resource.
366
379
  :param pulumi.Input[_builtins.str] hostname: The hostname on the origin for which the client certificate uploaded will be used.
@@ -375,6 +388,19 @@ class AuthenticatedOriginPulls(pulumi.CustomResource):
375
388
  """
376
389
  ## Example Usage
377
390
 
391
+ ```python
392
+ import pulumi
393
+ import pulumi_cloudflare as cloudflare
394
+
395
+ example_authenticated_origin_pulls = cloudflare.AuthenticatedOriginPulls("example_authenticated_origin_pulls",
396
+ zone_id="023e105f4ecef8ad9ca31a8372d0c353",
397
+ configs=[{
398
+ "cert_id": "2458ce5a-0c35-4c7f-82c7-8e9487d3ff60",
399
+ "enabled": True,
400
+ "hostname": "app.example.com",
401
+ }])
402
+ ```
403
+
378
404
  :param str resource_name: The name of the resource.
379
405
  :param AuthenticatedOriginPullsArgs args: The arguments to use to populate this resource's properties.
380
406
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -0,0 +1,253 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
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
+
17
+ __all__ = ['ContentScanningArgs', 'ContentScanning']
18
+
19
+ @pulumi.input_type
20
+ class ContentScanningArgs:
21
+ def __init__(__self__, *,
22
+ value: pulumi.Input[_builtins.str],
23
+ zone_id: pulumi.Input[_builtins.str]):
24
+ """
25
+ The set of arguments for constructing a ContentScanning resource.
26
+ :param pulumi.Input[_builtins.str] value: The status value for Content Scanning.
27
+ Available values: "enabled", "disabled".
28
+ :param pulumi.Input[_builtins.str] zone_id: Defines an identifier.
29
+ """
30
+ pulumi.set(__self__, "value", value)
31
+ pulumi.set(__self__, "zone_id", zone_id)
32
+
33
+ @_builtins.property
34
+ @pulumi.getter
35
+ def value(self) -> pulumi.Input[_builtins.str]:
36
+ """
37
+ The status value for Content Scanning.
38
+ Available values: "enabled", "disabled".
39
+ """
40
+ return pulumi.get(self, "value")
41
+
42
+ @value.setter
43
+ def value(self, value: pulumi.Input[_builtins.str]):
44
+ pulumi.set(self, "value", value)
45
+
46
+ @_builtins.property
47
+ @pulumi.getter(name="zoneId")
48
+ def zone_id(self) -> pulumi.Input[_builtins.str]:
49
+ """
50
+ Defines an identifier.
51
+ """
52
+ return pulumi.get(self, "zone_id")
53
+
54
+ @zone_id.setter
55
+ def zone_id(self, value: pulumi.Input[_builtins.str]):
56
+ pulumi.set(self, "zone_id", value)
57
+
58
+
59
+ @pulumi.input_type
60
+ class _ContentScanningState:
61
+ def __init__(__self__, *,
62
+ modified: Optional[pulumi.Input[_builtins.str]] = None,
63
+ value: Optional[pulumi.Input[_builtins.str]] = None,
64
+ zone_id: Optional[pulumi.Input[_builtins.str]] = None):
65
+ """
66
+ Input properties used for looking up and filtering ContentScanning resources.
67
+ :param pulumi.Input[_builtins.str] modified: Defines the last modification date (ISO 8601) of the Content Scanning status.
68
+ :param pulumi.Input[_builtins.str] value: The status value for Content Scanning.
69
+ Available values: "enabled", "disabled".
70
+ :param pulumi.Input[_builtins.str] zone_id: Defines an identifier.
71
+ """
72
+ if modified is not None:
73
+ pulumi.set(__self__, "modified", modified)
74
+ if value is not None:
75
+ pulumi.set(__self__, "value", value)
76
+ if zone_id is not None:
77
+ pulumi.set(__self__, "zone_id", zone_id)
78
+
79
+ @_builtins.property
80
+ @pulumi.getter
81
+ def modified(self) -> Optional[pulumi.Input[_builtins.str]]:
82
+ """
83
+ Defines the last modification date (ISO 8601) of the Content Scanning status.
84
+ """
85
+ return pulumi.get(self, "modified")
86
+
87
+ @modified.setter
88
+ def modified(self, value: Optional[pulumi.Input[_builtins.str]]):
89
+ pulumi.set(self, "modified", value)
90
+
91
+ @_builtins.property
92
+ @pulumi.getter
93
+ def value(self) -> Optional[pulumi.Input[_builtins.str]]:
94
+ """
95
+ The status value for Content Scanning.
96
+ Available values: "enabled", "disabled".
97
+ """
98
+ return pulumi.get(self, "value")
99
+
100
+ @value.setter
101
+ def value(self, value: Optional[pulumi.Input[_builtins.str]]):
102
+ pulumi.set(self, "value", value)
103
+
104
+ @_builtins.property
105
+ @pulumi.getter(name="zoneId")
106
+ def zone_id(self) -> Optional[pulumi.Input[_builtins.str]]:
107
+ """
108
+ Defines an identifier.
109
+ """
110
+ return pulumi.get(self, "zone_id")
111
+
112
+ @zone_id.setter
113
+ def zone_id(self, value: Optional[pulumi.Input[_builtins.str]]):
114
+ pulumi.set(self, "zone_id", value)
115
+
116
+
117
+ @pulumi.type_token("cloudflare:index/contentScanning:ContentScanning")
118
+ class ContentScanning(pulumi.CustomResource):
119
+ @overload
120
+ def __init__(__self__,
121
+ resource_name: str,
122
+ opts: Optional[pulumi.ResourceOptions] = None,
123
+ value: Optional[pulumi.Input[_builtins.str]] = None,
124
+ zone_id: Optional[pulumi.Input[_builtins.str]] = None,
125
+ __props__=None):
126
+ """
127
+ ## Example Usage
128
+
129
+ ```python
130
+ import pulumi
131
+ import pulumi_cloudflare as cloudflare
132
+
133
+ example_content_scanning = cloudflare.ContentScanning("example_content_scanning",
134
+ zone_id="023e105f4ecef8ad9ca31a8372d0c353",
135
+ value="enabled")
136
+ ```
137
+
138
+ :param str resource_name: The name of the resource.
139
+ :param pulumi.ResourceOptions opts: Options for the resource.
140
+ :param pulumi.Input[_builtins.str] value: The status value for Content Scanning.
141
+ Available values: "enabled", "disabled".
142
+ :param pulumi.Input[_builtins.str] zone_id: Defines an identifier.
143
+ """
144
+ ...
145
+ @overload
146
+ def __init__(__self__,
147
+ resource_name: str,
148
+ args: ContentScanningArgs,
149
+ opts: Optional[pulumi.ResourceOptions] = None):
150
+ """
151
+ ## Example Usage
152
+
153
+ ```python
154
+ import pulumi
155
+ import pulumi_cloudflare as cloudflare
156
+
157
+ example_content_scanning = cloudflare.ContentScanning("example_content_scanning",
158
+ zone_id="023e105f4ecef8ad9ca31a8372d0c353",
159
+ value="enabled")
160
+ ```
161
+
162
+ :param str resource_name: The name of the resource.
163
+ :param ContentScanningArgs args: The arguments to use to populate this resource's properties.
164
+ :param pulumi.ResourceOptions opts: Options for the resource.
165
+ """
166
+ ...
167
+ def __init__(__self__, resource_name: str, *args, **kwargs):
168
+ resource_args, opts = _utilities.get_resource_args_opts(ContentScanningArgs, pulumi.ResourceOptions, *args, **kwargs)
169
+ if resource_args is not None:
170
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
171
+ else:
172
+ __self__._internal_init(resource_name, *args, **kwargs)
173
+
174
+ def _internal_init(__self__,
175
+ resource_name: str,
176
+ opts: Optional[pulumi.ResourceOptions] = None,
177
+ value: Optional[pulumi.Input[_builtins.str]] = None,
178
+ zone_id: Optional[pulumi.Input[_builtins.str]] = None,
179
+ __props__=None):
180
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
181
+ if not isinstance(opts, pulumi.ResourceOptions):
182
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
183
+ if opts.id is None:
184
+ if __props__ is not None:
185
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
186
+ __props__ = ContentScanningArgs.__new__(ContentScanningArgs)
187
+
188
+ if value is None and not opts.urn:
189
+ raise TypeError("Missing required property 'value'")
190
+ __props__.__dict__["value"] = value
191
+ if zone_id is None and not opts.urn:
192
+ raise TypeError("Missing required property 'zone_id'")
193
+ __props__.__dict__["zone_id"] = zone_id
194
+ __props__.__dict__["modified"] = None
195
+ super(ContentScanning, __self__).__init__(
196
+ 'cloudflare:index/contentScanning:ContentScanning',
197
+ resource_name,
198
+ __props__,
199
+ opts)
200
+
201
+ @staticmethod
202
+ def get(resource_name: str,
203
+ id: pulumi.Input[str],
204
+ opts: Optional[pulumi.ResourceOptions] = None,
205
+ modified: Optional[pulumi.Input[_builtins.str]] = None,
206
+ value: Optional[pulumi.Input[_builtins.str]] = None,
207
+ zone_id: Optional[pulumi.Input[_builtins.str]] = None) -> 'ContentScanning':
208
+ """
209
+ Get an existing ContentScanning resource's state with the given name, id, and optional extra
210
+ properties used to qualify the lookup.
211
+
212
+ :param str resource_name: The unique name of the resulting resource.
213
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
214
+ :param pulumi.ResourceOptions opts: Options for the resource.
215
+ :param pulumi.Input[_builtins.str] modified: Defines the last modification date (ISO 8601) of the Content Scanning status.
216
+ :param pulumi.Input[_builtins.str] value: The status value for Content Scanning.
217
+ Available values: "enabled", "disabled".
218
+ :param pulumi.Input[_builtins.str] zone_id: Defines an identifier.
219
+ """
220
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
221
+
222
+ __props__ = _ContentScanningState.__new__(_ContentScanningState)
223
+
224
+ __props__.__dict__["modified"] = modified
225
+ __props__.__dict__["value"] = value
226
+ __props__.__dict__["zone_id"] = zone_id
227
+ return ContentScanning(resource_name, opts=opts, __props__=__props__)
228
+
229
+ @_builtins.property
230
+ @pulumi.getter
231
+ def modified(self) -> pulumi.Output[_builtins.str]:
232
+ """
233
+ Defines the last modification date (ISO 8601) of the Content Scanning status.
234
+ """
235
+ return pulumi.get(self, "modified")
236
+
237
+ @_builtins.property
238
+ @pulumi.getter
239
+ def value(self) -> pulumi.Output[_builtins.str]:
240
+ """
241
+ The status value for Content Scanning.
242
+ Available values: "enabled", "disabled".
243
+ """
244
+ return pulumi.get(self, "value")
245
+
246
+ @_builtins.property
247
+ @pulumi.getter(name="zoneId")
248
+ def zone_id(self) -> pulumi.Output[_builtins.str]:
249
+ """
250
+ Defines an identifier.
251
+ """
252
+ return pulumi.get(self, "zone_id")
253
+