pulumi-newrelic 5.16.0a1698964311__py3-none-any.whl → 5.58.0a1763707205__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.

Potentially problematic release.


This version of pulumi-newrelic might be problematic. Click here for more details.

Files changed (92) hide show
  1. pulumi_newrelic/__init__.py +58 -1
  2. pulumi_newrelic/_inputs.py +10772 -2775
  3. pulumi_newrelic/_utilities.py +92 -11
  4. pulumi_newrelic/account_management.py +56 -42
  5. pulumi_newrelic/alert_channel.py +177 -151
  6. pulumi_newrelic/alert_condition.py +313 -301
  7. pulumi_newrelic/alert_muting_rule.py +195 -138
  8. pulumi_newrelic/alert_policy.py +157 -109
  9. pulumi_newrelic/alert_policy_channel.py +95 -81
  10. pulumi_newrelic/api_access_key.py +191 -209
  11. pulumi_newrelic/browser_application.py +161 -153
  12. pulumi_newrelic/cloud/__init__.py +3 -1
  13. pulumi_newrelic/cloud/_inputs.py +4267 -2710
  14. pulumi_newrelic/cloud/aws_govcloud_integrations.py +238 -200
  15. pulumi_newrelic/cloud/aws_govcloud_link_account.py +159 -212
  16. pulumi_newrelic/cloud/aws_integrations.py +518 -1490
  17. pulumi_newrelic/cloud/aws_link_account.py +88 -76
  18. pulumi_newrelic/cloud/azure_integrations.py +681 -587
  19. pulumi_newrelic/cloud/azure_link_account.py +129 -117
  20. pulumi_newrelic/cloud/gcp_integrations.py +436 -408
  21. pulumi_newrelic/cloud/gcp_link_account.py +71 -59
  22. pulumi_newrelic/cloud/oci_link_account.py +926 -0
  23. pulumi_newrelic/cloud/outputs.py +1678 -2317
  24. pulumi_newrelic/config/__init__.py +2 -1
  25. pulumi_newrelic/config/__init__.pyi +45 -0
  26. pulumi_newrelic/config/vars.py +22 -17
  27. pulumi_newrelic/data_partition_rule.py +129 -117
  28. pulumi_newrelic/entity_tags.py +153 -31
  29. pulumi_newrelic/events_to_metrics_rule.py +114 -102
  30. pulumi_newrelic/get_account.py +41 -29
  31. pulumi_newrelic/get_alert_channel.py +73 -28
  32. pulumi_newrelic/get_alert_policy.py +83 -34
  33. pulumi_newrelic/get_application.py +51 -39
  34. pulumi_newrelic/get_authentication_domain.py +111 -0
  35. pulumi_newrelic/get_cloud_account.py +43 -31
  36. pulumi_newrelic/get_entity.py +126 -121
  37. pulumi_newrelic/get_group.py +190 -0
  38. pulumi_newrelic/get_key_transaction.py +117 -38
  39. pulumi_newrelic/get_notification_destination.py +86 -36
  40. pulumi_newrelic/get_obfuscation_expression.py +47 -35
  41. pulumi_newrelic/get_service_level_alert_helper.py +237 -137
  42. pulumi_newrelic/get_test_grok_pattern.py +47 -32
  43. pulumi_newrelic/get_user.py +165 -0
  44. pulumi_newrelic/group.py +286 -0
  45. pulumi_newrelic/infra_alert_condition.py +400 -382
  46. pulumi_newrelic/insights/__init__.py +2 -1
  47. pulumi_newrelic/insights/_inputs.py +94 -23
  48. pulumi_newrelic/insights/event.py +56 -48
  49. pulumi_newrelic/insights/outputs.py +51 -18
  50. pulumi_newrelic/key_transaction.py +465 -0
  51. pulumi_newrelic/log_parsing_rule.py +169 -153
  52. pulumi_newrelic/monitor_downtime.py +914 -0
  53. pulumi_newrelic/notification_channel.py +560 -418
  54. pulumi_newrelic/notification_destination.py +379 -124
  55. pulumi_newrelic/nrql_alert_condition.py +945 -513
  56. pulumi_newrelic/nrql_drop_rule.py +121 -129
  57. pulumi_newrelic/obfuscation_expression.py +88 -76
  58. pulumi_newrelic/obfuscation_rule.py +123 -109
  59. pulumi_newrelic/one_dashboard.py +118 -108
  60. pulumi_newrelic/one_dashboard_json.py +77 -67
  61. pulumi_newrelic/one_dashboard_raw.py +214 -202
  62. pulumi_newrelic/outputs.py +5491 -2141
  63. pulumi_newrelic/pipeline_cloud_rule.py +335 -0
  64. pulumi_newrelic/plugins/__init__.py +2 -1
  65. pulumi_newrelic/plugins/_inputs.py +520 -90
  66. pulumi_newrelic/plugins/application_settings.py +463 -167
  67. pulumi_newrelic/plugins/outputs.py +337 -75
  68. pulumi_newrelic/plugins/workload.py +387 -151
  69. pulumi_newrelic/provider.py +156 -142
  70. pulumi_newrelic/pulumi-plugin.json +2 -1
  71. pulumi_newrelic/service_level.py +277 -255
  72. pulumi_newrelic/synthetics/__init__.py +2 -1
  73. pulumi_newrelic/synthetics/_inputs.py +275 -106
  74. pulumi_newrelic/synthetics/alert_condition.py +174 -160
  75. pulumi_newrelic/synthetics/broken_links_monitor.py +367 -207
  76. pulumi_newrelic/synthetics/cert_check_monitor.py +380 -218
  77. pulumi_newrelic/synthetics/get_private_location.py +51 -39
  78. pulumi_newrelic/synthetics/get_secure_credential.py +39 -27
  79. pulumi_newrelic/synthetics/monitor.py +668 -462
  80. pulumi_newrelic/synthetics/multi_location_alert_condition.py +219 -201
  81. pulumi_newrelic/synthetics/outputs.py +102 -85
  82. pulumi_newrelic/synthetics/private_location.py +120 -110
  83. pulumi_newrelic/synthetics/script_monitor.py +623 -375
  84. pulumi_newrelic/synthetics/secure_credential.py +99 -93
  85. pulumi_newrelic/synthetics/step_monitor.py +545 -201
  86. pulumi_newrelic/user.py +366 -0
  87. pulumi_newrelic/workflow.py +348 -312
  88. {pulumi_newrelic-5.16.0a1698964311.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/METADATA +8 -7
  89. pulumi_newrelic-5.58.0a1763707205.dist-info/RECORD +92 -0
  90. {pulumi_newrelic-5.16.0a1698964311.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/WHEEL +1 -1
  91. pulumi_newrelic-5.16.0a1698964311.dist-info/RECORD +0 -82
  92. {pulumi_newrelic-5.16.0a1698964311.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
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
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -17,22 +22,25 @@ __all__ = ['NotificationDestinationArgs', 'NotificationDestination']
17
22
  class NotificationDestinationArgs:
18
23
  def __init__(__self__, *,
19
24
  properties: pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]],
20
- type: pulumi.Input[str],
21
- account_id: Optional[pulumi.Input[int]] = None,
22
- active: Optional[pulumi.Input[bool]] = None,
25
+ type: pulumi.Input[_builtins.str],
26
+ account_id: Optional[pulumi.Input[_builtins.str]] = None,
27
+ active: Optional[pulumi.Input[_builtins.bool]] = None,
23
28
  auth_basic: Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']] = None,
29
+ auth_custom_headers: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]] = None,
24
30
  auth_token: Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']] = None,
25
- name: Optional[pulumi.Input[str]] = None):
31
+ name: Optional[pulumi.Input[_builtins.str]] = None,
32
+ secure_url: Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']] = None):
26
33
  """
27
34
  The set of arguments for constructing a NotificationDestination resource.
28
35
  :param pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
29
- :param pulumi.Input[str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
30
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
31
- :param pulumi.Input[int] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
32
- :param pulumi.Input[bool] active: Indicates whether the destination is active.
36
+ :param pulumi.Input[_builtins.str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
37
+ :param pulumi.Input[_builtins.str] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
38
+ :param pulumi.Input[_builtins.bool] active: Indicates whether the destination is active.
33
39
  :param pulumi.Input['NotificationDestinationAuthBasicArgs'] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
40
+ :param pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]] auth_custom_headers: A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
34
41
  :param pulumi.Input['NotificationDestinationAuthTokenArgs'] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
35
- :param pulumi.Input[str] name: The name of the destination.
42
+ :param pulumi.Input[_builtins.str] name: The name of the destination.
43
+ :param pulumi.Input['NotificationDestinationSecureUrlArgs'] secure_url: A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
36
44
  """
37
45
  pulumi.set(__self__, "properties", properties)
38
46
  pulumi.set(__self__, "type", type)
@@ -42,12 +50,16 @@ class NotificationDestinationArgs:
42
50
  pulumi.set(__self__, "active", active)
43
51
  if auth_basic is not None:
44
52
  pulumi.set(__self__, "auth_basic", auth_basic)
53
+ if auth_custom_headers is not None:
54
+ pulumi.set(__self__, "auth_custom_headers", auth_custom_headers)
45
55
  if auth_token is not None:
46
56
  pulumi.set(__self__, "auth_token", auth_token)
47
57
  if name is not None:
48
58
  pulumi.set(__self__, "name", name)
59
+ if secure_url is not None:
60
+ pulumi.set(__self__, "secure_url", secure_url)
49
61
 
50
- @property
62
+ @_builtins.property
51
63
  @pulumi.getter
52
64
  def properties(self) -> pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]]:
53
65
  """
@@ -59,44 +71,43 @@ class NotificationDestinationArgs:
59
71
  def properties(self, value: pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]]):
60
72
  pulumi.set(self, "properties", value)
61
73
 
62
- @property
74
+ @_builtins.property
63
75
  @pulumi.getter
64
- def type(self) -> pulumi.Input[str]:
76
+ def type(self) -> pulumi.Input[_builtins.str]:
65
77
  """
66
- (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
67
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
78
+ (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
68
79
  """
69
80
  return pulumi.get(self, "type")
70
81
 
71
82
  @type.setter
72
- def type(self, value: pulumi.Input[str]):
83
+ def type(self, value: pulumi.Input[_builtins.str]):
73
84
  pulumi.set(self, "type", value)
74
85
 
75
- @property
86
+ @_builtins.property
76
87
  @pulumi.getter(name="accountId")
77
- def account_id(self) -> Optional[pulumi.Input[int]]:
88
+ def account_id(self) -> Optional[pulumi.Input[_builtins.str]]:
78
89
  """
79
90
  Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
80
91
  """
81
92
  return pulumi.get(self, "account_id")
82
93
 
83
94
  @account_id.setter
84
- def account_id(self, value: Optional[pulumi.Input[int]]):
95
+ def account_id(self, value: Optional[pulumi.Input[_builtins.str]]):
85
96
  pulumi.set(self, "account_id", value)
86
97
 
87
- @property
98
+ @_builtins.property
88
99
  @pulumi.getter
89
- def active(self) -> Optional[pulumi.Input[bool]]:
100
+ def active(self) -> Optional[pulumi.Input[_builtins.bool]]:
90
101
  """
91
102
  Indicates whether the destination is active.
92
103
  """
93
104
  return pulumi.get(self, "active")
94
105
 
95
106
  @active.setter
96
- def active(self, value: Optional[pulumi.Input[bool]]):
107
+ def active(self, value: Optional[pulumi.Input[_builtins.bool]]):
97
108
  pulumi.set(self, "active", value)
98
109
 
99
- @property
110
+ @_builtins.property
100
111
  @pulumi.getter(name="authBasic")
101
112
  def auth_basic(self) -> Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']]:
102
113
  """
@@ -108,7 +119,19 @@ class NotificationDestinationArgs:
108
119
  def auth_basic(self, value: Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']]):
109
120
  pulumi.set(self, "auth_basic", value)
110
121
 
111
- @property
122
+ @_builtins.property
123
+ @pulumi.getter(name="authCustomHeaders")
124
+ def auth_custom_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]]:
125
+ """
126
+ A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
127
+ """
128
+ return pulumi.get(self, "auth_custom_headers")
129
+
130
+ @auth_custom_headers.setter
131
+ def auth_custom_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]]):
132
+ pulumi.set(self, "auth_custom_headers", value)
133
+
134
+ @_builtins.property
112
135
  @pulumi.getter(name="authToken")
113
136
  def auth_token(self) -> Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']]:
114
137
  """
@@ -120,43 +143,60 @@ class NotificationDestinationArgs:
120
143
  def auth_token(self, value: Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']]):
121
144
  pulumi.set(self, "auth_token", value)
122
145
 
123
- @property
146
+ @_builtins.property
124
147
  @pulumi.getter
125
- def name(self) -> Optional[pulumi.Input[str]]:
148
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
126
149
  """
127
150
  The name of the destination.
128
151
  """
129
152
  return pulumi.get(self, "name")
130
153
 
131
154
  @name.setter
132
- def name(self, value: Optional[pulumi.Input[str]]):
155
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
133
156
  pulumi.set(self, "name", value)
134
157
 
158
+ @_builtins.property
159
+ @pulumi.getter(name="secureUrl")
160
+ def secure_url(self) -> Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']]:
161
+ """
162
+ A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
163
+ """
164
+ return pulumi.get(self, "secure_url")
165
+
166
+ @secure_url.setter
167
+ def secure_url(self, value: Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']]):
168
+ pulumi.set(self, "secure_url", value)
169
+
135
170
 
136
171
  @pulumi.input_type
137
172
  class _NotificationDestinationState:
138
173
  def __init__(__self__, *,
139
- account_id: Optional[pulumi.Input[int]] = None,
140
- active: Optional[pulumi.Input[bool]] = None,
174
+ account_id: Optional[pulumi.Input[_builtins.str]] = None,
175
+ active: Optional[pulumi.Input[_builtins.bool]] = None,
141
176
  auth_basic: Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']] = None,
177
+ auth_custom_headers: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]] = None,
142
178
  auth_token: Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']] = None,
143
- last_sent: Optional[pulumi.Input[str]] = None,
144
- name: Optional[pulumi.Input[str]] = None,
179
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
180
+ last_sent: Optional[pulumi.Input[_builtins.str]] = None,
181
+ name: Optional[pulumi.Input[_builtins.str]] = None,
145
182
  properties: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]]] = None,
146
- status: Optional[pulumi.Input[str]] = None,
147
- type: Optional[pulumi.Input[str]] = None):
183
+ secure_url: Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']] = None,
184
+ status: Optional[pulumi.Input[_builtins.str]] = None,
185
+ type: Optional[pulumi.Input[_builtins.str]] = None):
148
186
  """
149
187
  Input properties used for looking up and filtering NotificationDestination resources.
150
- :param pulumi.Input[int] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
151
- :param pulumi.Input[bool] active: Indicates whether the destination is active.
188
+ :param pulumi.Input[_builtins.str] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
189
+ :param pulumi.Input[_builtins.bool] active: Indicates whether the destination is active.
152
190
  :param pulumi.Input['NotificationDestinationAuthBasicArgs'] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
191
+ :param pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]] auth_custom_headers: A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
153
192
  :param pulumi.Input['NotificationDestinationAuthTokenArgs'] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
154
- :param pulumi.Input[str] last_sent: The last time a notification was sent.
155
- :param pulumi.Input[str] name: The name of the destination.
193
+ :param pulumi.Input[_builtins.str] guid: The unique entity identifier of the destination in New Relic.
194
+ :param pulumi.Input[_builtins.str] last_sent: The last time a notification was sent.
195
+ :param pulumi.Input[_builtins.str] name: The name of the destination.
156
196
  :param pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
157
- :param pulumi.Input[str] status: The status of the destination.
158
- :param pulumi.Input[str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
159
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
197
+ :param pulumi.Input['NotificationDestinationSecureUrlArgs'] secure_url: A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
198
+ :param pulumi.Input[_builtins.str] status: The status of the destination.
199
+ :param pulumi.Input[_builtins.str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
160
200
  """
161
201
  if account_id is not None:
162
202
  pulumi.set(__self__, "account_id", account_id)
@@ -164,44 +204,50 @@ class _NotificationDestinationState:
164
204
  pulumi.set(__self__, "active", active)
165
205
  if auth_basic is not None:
166
206
  pulumi.set(__self__, "auth_basic", auth_basic)
207
+ if auth_custom_headers is not None:
208
+ pulumi.set(__self__, "auth_custom_headers", auth_custom_headers)
167
209
  if auth_token is not None:
168
210
  pulumi.set(__self__, "auth_token", auth_token)
211
+ if guid is not None:
212
+ pulumi.set(__self__, "guid", guid)
169
213
  if last_sent is not None:
170
214
  pulumi.set(__self__, "last_sent", last_sent)
171
215
  if name is not None:
172
216
  pulumi.set(__self__, "name", name)
173
217
  if properties is not None:
174
218
  pulumi.set(__self__, "properties", properties)
219
+ if secure_url is not None:
220
+ pulumi.set(__self__, "secure_url", secure_url)
175
221
  if status is not None:
176
222
  pulumi.set(__self__, "status", status)
177
223
  if type is not None:
178
224
  pulumi.set(__self__, "type", type)
179
225
 
180
- @property
226
+ @_builtins.property
181
227
  @pulumi.getter(name="accountId")
182
- def account_id(self) -> Optional[pulumi.Input[int]]:
228
+ def account_id(self) -> Optional[pulumi.Input[_builtins.str]]:
183
229
  """
184
230
  Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
185
231
  """
186
232
  return pulumi.get(self, "account_id")
187
233
 
188
234
  @account_id.setter
189
- def account_id(self, value: Optional[pulumi.Input[int]]):
235
+ def account_id(self, value: Optional[pulumi.Input[_builtins.str]]):
190
236
  pulumi.set(self, "account_id", value)
191
237
 
192
- @property
238
+ @_builtins.property
193
239
  @pulumi.getter
194
- def active(self) -> Optional[pulumi.Input[bool]]:
240
+ def active(self) -> Optional[pulumi.Input[_builtins.bool]]:
195
241
  """
196
242
  Indicates whether the destination is active.
197
243
  """
198
244
  return pulumi.get(self, "active")
199
245
 
200
246
  @active.setter
201
- def active(self, value: Optional[pulumi.Input[bool]]):
247
+ def active(self, value: Optional[pulumi.Input[_builtins.bool]]):
202
248
  pulumi.set(self, "active", value)
203
249
 
204
- @property
250
+ @_builtins.property
205
251
  @pulumi.getter(name="authBasic")
206
252
  def auth_basic(self) -> Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']]:
207
253
  """
@@ -213,7 +259,19 @@ class _NotificationDestinationState:
213
259
  def auth_basic(self, value: Optional[pulumi.Input['NotificationDestinationAuthBasicArgs']]):
214
260
  pulumi.set(self, "auth_basic", value)
215
261
 
216
- @property
262
+ @_builtins.property
263
+ @pulumi.getter(name="authCustomHeaders")
264
+ def auth_custom_headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]]:
265
+ """
266
+ A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
267
+ """
268
+ return pulumi.get(self, "auth_custom_headers")
269
+
270
+ @auth_custom_headers.setter
271
+ def auth_custom_headers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationAuthCustomHeaderArgs']]]]):
272
+ pulumi.set(self, "auth_custom_headers", value)
273
+
274
+ @_builtins.property
217
275
  @pulumi.getter(name="authToken")
218
276
  def auth_token(self) -> Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']]:
219
277
  """
@@ -225,31 +283,43 @@ class _NotificationDestinationState:
225
283
  def auth_token(self, value: Optional[pulumi.Input['NotificationDestinationAuthTokenArgs']]):
226
284
  pulumi.set(self, "auth_token", value)
227
285
 
228
- @property
286
+ @_builtins.property
287
+ @pulumi.getter
288
+ def guid(self) -> Optional[pulumi.Input[_builtins.str]]:
289
+ """
290
+ The unique entity identifier of the destination in New Relic.
291
+ """
292
+ return pulumi.get(self, "guid")
293
+
294
+ @guid.setter
295
+ def guid(self, value: Optional[pulumi.Input[_builtins.str]]):
296
+ pulumi.set(self, "guid", value)
297
+
298
+ @_builtins.property
229
299
  @pulumi.getter(name="lastSent")
230
- def last_sent(self) -> Optional[pulumi.Input[str]]:
300
+ def last_sent(self) -> Optional[pulumi.Input[_builtins.str]]:
231
301
  """
232
302
  The last time a notification was sent.
233
303
  """
234
304
  return pulumi.get(self, "last_sent")
235
305
 
236
306
  @last_sent.setter
237
- def last_sent(self, value: Optional[pulumi.Input[str]]):
307
+ def last_sent(self, value: Optional[pulumi.Input[_builtins.str]]):
238
308
  pulumi.set(self, "last_sent", value)
239
309
 
240
- @property
310
+ @_builtins.property
241
311
  @pulumi.getter
242
- def name(self) -> Optional[pulumi.Input[str]]:
312
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
243
313
  """
244
314
  The name of the destination.
245
315
  """
246
316
  return pulumi.get(self, "name")
247
317
 
248
318
  @name.setter
249
- def name(self, value: Optional[pulumi.Input[str]]):
319
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
250
320
  pulumi.set(self, "name", value)
251
321
 
252
- @property
322
+ @_builtins.property
253
323
  @pulumi.getter
254
324
  def properties(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]]]:
255
325
  """
@@ -261,57 +331,139 @@ class _NotificationDestinationState:
261
331
  def properties(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NotificationDestinationPropertyArgs']]]]):
262
332
  pulumi.set(self, "properties", value)
263
333
 
264
- @property
334
+ @_builtins.property
335
+ @pulumi.getter(name="secureUrl")
336
+ def secure_url(self) -> Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']]:
337
+ """
338
+ A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
339
+ """
340
+ return pulumi.get(self, "secure_url")
341
+
342
+ @secure_url.setter
343
+ def secure_url(self, value: Optional[pulumi.Input['NotificationDestinationSecureUrlArgs']]):
344
+ pulumi.set(self, "secure_url", value)
345
+
346
+ @_builtins.property
265
347
  @pulumi.getter
266
- def status(self) -> Optional[pulumi.Input[str]]:
348
+ def status(self) -> Optional[pulumi.Input[_builtins.str]]:
267
349
  """
268
350
  The status of the destination.
269
351
  """
270
352
  return pulumi.get(self, "status")
271
353
 
272
354
  @status.setter
273
- def status(self, value: Optional[pulumi.Input[str]]):
355
+ def status(self, value: Optional[pulumi.Input[_builtins.str]]):
274
356
  pulumi.set(self, "status", value)
275
357
 
276
- @property
358
+ @_builtins.property
277
359
  @pulumi.getter
278
- def type(self) -> Optional[pulumi.Input[str]]:
360
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
279
361
  """
280
- (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
281
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
362
+ (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
282
363
  """
283
364
  return pulumi.get(self, "type")
284
365
 
285
366
  @type.setter
286
- def type(self, value: Optional[pulumi.Input[str]]):
367
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
287
368
  pulumi.set(self, "type", value)
288
369
 
289
370
 
371
+ @pulumi.type_token("newrelic:index/notificationDestination:NotificationDestination")
290
372
  class NotificationDestination(pulumi.CustomResource):
291
373
  @overload
292
374
  def __init__(__self__,
293
375
  resource_name: str,
294
376
  opts: Optional[pulumi.ResourceOptions] = None,
295
- account_id: Optional[pulumi.Input[int]] = None,
296
- active: Optional[pulumi.Input[bool]] = None,
297
- auth_basic: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthBasicArgs']]] = None,
298
- auth_token: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthTokenArgs']]] = None,
299
- name: Optional[pulumi.Input[str]] = None,
300
- properties: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NotificationDestinationPropertyArgs']]]]] = None,
301
- type: Optional[pulumi.Input[str]] = None,
377
+ account_id: Optional[pulumi.Input[_builtins.str]] = None,
378
+ active: Optional[pulumi.Input[_builtins.bool]] = None,
379
+ auth_basic: Optional[pulumi.Input[Union['NotificationDestinationAuthBasicArgs', 'NotificationDestinationAuthBasicArgsDict']]] = None,
380
+ auth_custom_headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationAuthCustomHeaderArgs', 'NotificationDestinationAuthCustomHeaderArgsDict']]]]] = None,
381
+ auth_token: Optional[pulumi.Input[Union['NotificationDestinationAuthTokenArgs', 'NotificationDestinationAuthTokenArgsDict']]] = None,
382
+ name: Optional[pulumi.Input[_builtins.str]] = None,
383
+ properties: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationPropertyArgs', 'NotificationDestinationPropertyArgsDict']]]]] = None,
384
+ secure_url: Optional[pulumi.Input[Union['NotificationDestinationSecureUrlArgs', 'NotificationDestinationSecureUrlArgsDict']]] = None,
385
+ type: Optional[pulumi.Input[_builtins.str]] = None,
302
386
  __props__=None):
303
387
  """
304
- Create a NotificationDestination resource with the given unique name, props, and options.
388
+ ## Import
389
+
390
+ ~> **WARNING:** Slack-based destinations can only be imported and destroyed; this resource **does not** support creating and updating Slack-based destinations, owing to the reasons stated above, under the **Slack** section.
391
+
392
+ Destination id can be found in the Destinations page -> three dots at the right of the chosen destination -> copy destination id to clipboard.
393
+
394
+ This example is especially useful for slack destinations which *must* be imported.
395
+
396
+ 1. Add an empty resource to your terraform file:
397
+
398
+ terraform
399
+
400
+ resource "newrelic_notification_destination" "foo" {
401
+
402
+ }
403
+
404
+ ```sh
405
+ $ pulumi import newrelic:index/notificationDestination:NotificationDestination Run import command: `newrelic_notification_destination.foo <destination_id>`
406
+ ```
407
+
408
+ 3. Run the following command after the import successfully done and copy the information to your resource:
409
+
410
+ `terraform state show newrelic_notification_destination.foo`
411
+
412
+ 4. Add `ignore_changes` attribute on `all` in your imported resource:
413
+
414
+ terraform
415
+
416
+ lifecycle {
417
+
418
+ ignore_changes = all
419
+
420
+ }
421
+
422
+ Your imported destination should look like that:
423
+
424
+ terraform
425
+
426
+ resource "newrelic_notification_destination" "foo" {
427
+
428
+ lifecycle {
429
+
430
+ ignore_changes = all
431
+
432
+ }
433
+
434
+ name = "*********"
435
+
436
+ type = "SLACK"
437
+
438
+ auth_token {
439
+
440
+ prefix = "Bearer"
441
+
442
+ }
443
+
444
+ property {
445
+
446
+ key = "teamName"
447
+
448
+ label = "Team Name"
449
+
450
+ value = "******"
451
+
452
+ }
453
+
454
+ }
455
+
305
456
  :param str resource_name: The name of the resource.
306
457
  :param pulumi.ResourceOptions opts: Options for the resource.
307
- :param pulumi.Input[int] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
308
- :param pulumi.Input[bool] active: Indicates whether the destination is active.
309
- :param pulumi.Input[pulumi.InputType['NotificationDestinationAuthBasicArgs']] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
310
- :param pulumi.Input[pulumi.InputType['NotificationDestinationAuthTokenArgs']] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
311
- :param pulumi.Input[str] name: The name of the destination.
312
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NotificationDestinationPropertyArgs']]]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
313
- :param pulumi.Input[str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
314
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
458
+ :param pulumi.Input[_builtins.str] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
459
+ :param pulumi.Input[_builtins.bool] active: Indicates whether the destination is active.
460
+ :param pulumi.Input[Union['NotificationDestinationAuthBasicArgs', 'NotificationDestinationAuthBasicArgsDict']] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
461
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationAuthCustomHeaderArgs', 'NotificationDestinationAuthCustomHeaderArgsDict']]]] auth_custom_headers: A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
462
+ :param pulumi.Input[Union['NotificationDestinationAuthTokenArgs', 'NotificationDestinationAuthTokenArgsDict']] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
463
+ :param pulumi.Input[_builtins.str] name: The name of the destination.
464
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationPropertyArgs', 'NotificationDestinationPropertyArgsDict']]]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
465
+ :param pulumi.Input[Union['NotificationDestinationSecureUrlArgs', 'NotificationDestinationSecureUrlArgsDict']] secure_url: A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
466
+ :param pulumi.Input[_builtins.str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
315
467
  """
316
468
  ...
317
469
  @overload
@@ -320,7 +472,74 @@ class NotificationDestination(pulumi.CustomResource):
320
472
  args: NotificationDestinationArgs,
321
473
  opts: Optional[pulumi.ResourceOptions] = None):
322
474
  """
323
- Create a NotificationDestination resource with the given unique name, props, and options.
475
+ ## Import
476
+
477
+ ~> **WARNING:** Slack-based destinations can only be imported and destroyed; this resource **does not** support creating and updating Slack-based destinations, owing to the reasons stated above, under the **Slack** section.
478
+
479
+ Destination id can be found in the Destinations page -> three dots at the right of the chosen destination -> copy destination id to clipboard.
480
+
481
+ This example is especially useful for slack destinations which *must* be imported.
482
+
483
+ 1. Add an empty resource to your terraform file:
484
+
485
+ terraform
486
+
487
+ resource "newrelic_notification_destination" "foo" {
488
+
489
+ }
490
+
491
+ ```sh
492
+ $ pulumi import newrelic:index/notificationDestination:NotificationDestination Run import command: `newrelic_notification_destination.foo <destination_id>`
493
+ ```
494
+
495
+ 3. Run the following command after the import successfully done and copy the information to your resource:
496
+
497
+ `terraform state show newrelic_notification_destination.foo`
498
+
499
+ 4. Add `ignore_changes` attribute on `all` in your imported resource:
500
+
501
+ terraform
502
+
503
+ lifecycle {
504
+
505
+ ignore_changes = all
506
+
507
+ }
508
+
509
+ Your imported destination should look like that:
510
+
511
+ terraform
512
+
513
+ resource "newrelic_notification_destination" "foo" {
514
+
515
+ lifecycle {
516
+
517
+ ignore_changes = all
518
+
519
+ }
520
+
521
+ name = "*********"
522
+
523
+ type = "SLACK"
524
+
525
+ auth_token {
526
+
527
+ prefix = "Bearer"
528
+
529
+ }
530
+
531
+ property {
532
+
533
+ key = "teamName"
534
+
535
+ label = "Team Name"
536
+
537
+ value = "******"
538
+
539
+ }
540
+
541
+ }
542
+
324
543
  :param str resource_name: The name of the resource.
325
544
  :param NotificationDestinationArgs args: The arguments to use to populate this resource's properties.
326
545
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -336,13 +555,15 @@ class NotificationDestination(pulumi.CustomResource):
336
555
  def _internal_init(__self__,
337
556
  resource_name: str,
338
557
  opts: Optional[pulumi.ResourceOptions] = None,
339
- account_id: Optional[pulumi.Input[int]] = None,
340
- active: Optional[pulumi.Input[bool]] = None,
341
- auth_basic: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthBasicArgs']]] = None,
342
- auth_token: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthTokenArgs']]] = None,
343
- name: Optional[pulumi.Input[str]] = None,
344
- properties: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NotificationDestinationPropertyArgs']]]]] = None,
345
- type: Optional[pulumi.Input[str]] = None,
558
+ account_id: Optional[pulumi.Input[_builtins.str]] = None,
559
+ active: Optional[pulumi.Input[_builtins.bool]] = None,
560
+ auth_basic: Optional[pulumi.Input[Union['NotificationDestinationAuthBasicArgs', 'NotificationDestinationAuthBasicArgsDict']]] = None,
561
+ auth_custom_headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationAuthCustomHeaderArgs', 'NotificationDestinationAuthCustomHeaderArgsDict']]]]] = None,
562
+ auth_token: Optional[pulumi.Input[Union['NotificationDestinationAuthTokenArgs', 'NotificationDestinationAuthTokenArgsDict']]] = None,
563
+ name: Optional[pulumi.Input[_builtins.str]] = None,
564
+ properties: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationPropertyArgs', 'NotificationDestinationPropertyArgsDict']]]]] = None,
565
+ secure_url: Optional[pulumi.Input[Union['NotificationDestinationSecureUrlArgs', 'NotificationDestinationSecureUrlArgsDict']]] = None,
566
+ type: Optional[pulumi.Input[_builtins.str]] = None,
346
567
  __props__=None):
347
568
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
348
569
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -355,14 +576,17 @@ class NotificationDestination(pulumi.CustomResource):
355
576
  __props__.__dict__["account_id"] = account_id
356
577
  __props__.__dict__["active"] = active
357
578
  __props__.__dict__["auth_basic"] = auth_basic
579
+ __props__.__dict__["auth_custom_headers"] = auth_custom_headers
358
580
  __props__.__dict__["auth_token"] = auth_token
359
581
  __props__.__dict__["name"] = name
360
582
  if properties is None and not opts.urn:
361
583
  raise TypeError("Missing required property 'properties'")
362
584
  __props__.__dict__["properties"] = properties
585
+ __props__.__dict__["secure_url"] = secure_url
363
586
  if type is None and not opts.urn:
364
587
  raise TypeError("Missing required property 'type'")
365
588
  __props__.__dict__["type"] = type
589
+ __props__.__dict__["guid"] = None
366
590
  __props__.__dict__["last_sent"] = None
367
591
  __props__.__dict__["status"] = None
368
592
  super(NotificationDestination, __self__).__init__(
@@ -375,15 +599,18 @@ class NotificationDestination(pulumi.CustomResource):
375
599
  def get(resource_name: str,
376
600
  id: pulumi.Input[str],
377
601
  opts: Optional[pulumi.ResourceOptions] = None,
378
- account_id: Optional[pulumi.Input[int]] = None,
379
- active: Optional[pulumi.Input[bool]] = None,
380
- auth_basic: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthBasicArgs']]] = None,
381
- auth_token: Optional[pulumi.Input[pulumi.InputType['NotificationDestinationAuthTokenArgs']]] = None,
382
- last_sent: Optional[pulumi.Input[str]] = None,
383
- name: Optional[pulumi.Input[str]] = None,
384
- properties: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NotificationDestinationPropertyArgs']]]]] = None,
385
- status: Optional[pulumi.Input[str]] = None,
386
- type: Optional[pulumi.Input[str]] = None) -> 'NotificationDestination':
602
+ account_id: Optional[pulumi.Input[_builtins.str]] = None,
603
+ active: Optional[pulumi.Input[_builtins.bool]] = None,
604
+ auth_basic: Optional[pulumi.Input[Union['NotificationDestinationAuthBasicArgs', 'NotificationDestinationAuthBasicArgsDict']]] = None,
605
+ auth_custom_headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationAuthCustomHeaderArgs', 'NotificationDestinationAuthCustomHeaderArgsDict']]]]] = None,
606
+ auth_token: Optional[pulumi.Input[Union['NotificationDestinationAuthTokenArgs', 'NotificationDestinationAuthTokenArgsDict']]] = None,
607
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
608
+ last_sent: Optional[pulumi.Input[_builtins.str]] = None,
609
+ name: Optional[pulumi.Input[_builtins.str]] = None,
610
+ properties: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationPropertyArgs', 'NotificationDestinationPropertyArgsDict']]]]] = None,
611
+ secure_url: Optional[pulumi.Input[Union['NotificationDestinationSecureUrlArgs', 'NotificationDestinationSecureUrlArgsDict']]] = None,
612
+ status: Optional[pulumi.Input[_builtins.str]] = None,
613
+ type: Optional[pulumi.Input[_builtins.str]] = None) -> 'NotificationDestination':
387
614
  """
388
615
  Get an existing NotificationDestination resource's state with the given name, id, and optional extra
389
616
  properties used to qualify the lookup.
@@ -391,16 +618,18 @@ class NotificationDestination(pulumi.CustomResource):
391
618
  :param str resource_name: The unique name of the resulting resource.
392
619
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
393
620
  :param pulumi.ResourceOptions opts: Options for the resource.
394
- :param pulumi.Input[int] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
395
- :param pulumi.Input[bool] active: Indicates whether the destination is active.
396
- :param pulumi.Input[pulumi.InputType['NotificationDestinationAuthBasicArgs']] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
397
- :param pulumi.Input[pulumi.InputType['NotificationDestinationAuthTokenArgs']] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
398
- :param pulumi.Input[str] last_sent: The last time a notification was sent.
399
- :param pulumi.Input[str] name: The name of the destination.
400
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NotificationDestinationPropertyArgs']]]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
401
- :param pulumi.Input[str] status: The status of the destination.
402
- :param pulumi.Input[str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
403
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
621
+ :param pulumi.Input[_builtins.str] account_id: Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
622
+ :param pulumi.Input[_builtins.bool] active: Indicates whether the destination is active.
623
+ :param pulumi.Input[Union['NotificationDestinationAuthBasicArgs', 'NotificationDestinationAuthBasicArgsDict']] auth_basic: A nested block that describes a basic username and password authentication credentials. Only one auth_basic block is permitted per notification destination definition. See Nested auth_basic blocks below for details.
624
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationAuthCustomHeaderArgs', 'NotificationDestinationAuthCustomHeaderArgsDict']]]] auth_custom_headers: A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
625
+ :param pulumi.Input[Union['NotificationDestinationAuthTokenArgs', 'NotificationDestinationAuthTokenArgsDict']] auth_token: A nested block that describes a token authentication credentials. Only one auth_token block is permitted per notification destination definition. See Nested auth_token blocks below for details.
626
+ :param pulumi.Input[_builtins.str] guid: The unique entity identifier of the destination in New Relic.
627
+ :param pulumi.Input[_builtins.str] last_sent: The last time a notification was sent.
628
+ :param pulumi.Input[_builtins.str] name: The name of the destination.
629
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NotificationDestinationPropertyArgs', 'NotificationDestinationPropertyArgsDict']]]] properties: A nested block that describes a notification destination property. See Nested property blocks below for details.
630
+ :param pulumi.Input[Union['NotificationDestinationSecureUrlArgs', 'NotificationDestinationSecureUrlArgsDict']] secure_url: A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
631
+ :param pulumi.Input[_builtins.str] status: The status of the destination.
632
+ :param pulumi.Input[_builtins.str] type: (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
404
633
  """
405
634
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
406
635
 
@@ -409,31 +638,34 @@ class NotificationDestination(pulumi.CustomResource):
409
638
  __props__.__dict__["account_id"] = account_id
410
639
  __props__.__dict__["active"] = active
411
640
  __props__.__dict__["auth_basic"] = auth_basic
641
+ __props__.__dict__["auth_custom_headers"] = auth_custom_headers
412
642
  __props__.__dict__["auth_token"] = auth_token
643
+ __props__.__dict__["guid"] = guid
413
644
  __props__.__dict__["last_sent"] = last_sent
414
645
  __props__.__dict__["name"] = name
415
646
  __props__.__dict__["properties"] = properties
647
+ __props__.__dict__["secure_url"] = secure_url
416
648
  __props__.__dict__["status"] = status
417
649
  __props__.__dict__["type"] = type
418
650
  return NotificationDestination(resource_name, opts=opts, __props__=__props__)
419
651
 
420
- @property
652
+ @_builtins.property
421
653
  @pulumi.getter(name="accountId")
422
- def account_id(self) -> pulumi.Output[int]:
654
+ def account_id(self) -> pulumi.Output[_builtins.str]:
423
655
  """
424
656
  Determines the New Relic account where the notification destination will be created. Defaults to the account associated with the API key used.
425
657
  """
426
658
  return pulumi.get(self, "account_id")
427
659
 
428
- @property
660
+ @_builtins.property
429
661
  @pulumi.getter
430
- def active(self) -> pulumi.Output[Optional[bool]]:
662
+ def active(self) -> pulumi.Output[Optional[_builtins.bool]]:
431
663
  """
432
664
  Indicates whether the destination is active.
433
665
  """
434
666
  return pulumi.get(self, "active")
435
667
 
436
- @property
668
+ @_builtins.property
437
669
  @pulumi.getter(name="authBasic")
438
670
  def auth_basic(self) -> pulumi.Output[Optional['outputs.NotificationDestinationAuthBasic']]:
439
671
  """
@@ -441,7 +673,15 @@ class NotificationDestination(pulumi.CustomResource):
441
673
  """
442
674
  return pulumi.get(self, "auth_basic")
443
675
 
444
- @property
676
+ @_builtins.property
677
+ @pulumi.getter(name="authCustomHeaders")
678
+ def auth_custom_headers(self) -> pulumi.Output[Optional[Sequence['outputs.NotificationDestinationAuthCustomHeader']]]:
679
+ """
680
+ A nested block that describes a custom header authentication credentials. This field is required when the destination type is WORKFLOW_AUTOMATION and optional for other destination types. Multiple blocks are permitted per notification destination definition. Nested auth_custom_header blocks below for details.
681
+ """
682
+ return pulumi.get(self, "auth_custom_headers")
683
+
684
+ @_builtins.property
445
685
  @pulumi.getter(name="authToken")
446
686
  def auth_token(self) -> pulumi.Output[Optional['outputs.NotificationDestinationAuthToken']]:
447
687
  """
@@ -449,23 +689,31 @@ class NotificationDestination(pulumi.CustomResource):
449
689
  """
450
690
  return pulumi.get(self, "auth_token")
451
691
 
452
- @property
692
+ @_builtins.property
693
+ @pulumi.getter
694
+ def guid(self) -> pulumi.Output[_builtins.str]:
695
+ """
696
+ The unique entity identifier of the destination in New Relic.
697
+ """
698
+ return pulumi.get(self, "guid")
699
+
700
+ @_builtins.property
453
701
  @pulumi.getter(name="lastSent")
454
- def last_sent(self) -> pulumi.Output[str]:
702
+ def last_sent(self) -> pulumi.Output[_builtins.str]:
455
703
  """
456
704
  The last time a notification was sent.
457
705
  """
458
706
  return pulumi.get(self, "last_sent")
459
707
 
460
- @property
708
+ @_builtins.property
461
709
  @pulumi.getter
462
- def name(self) -> pulumi.Output[str]:
710
+ def name(self) -> pulumi.Output[_builtins.str]:
463
711
  """
464
712
  The name of the destination.
465
713
  """
466
714
  return pulumi.get(self, "name")
467
715
 
468
- @property
716
+ @_builtins.property
469
717
  @pulumi.getter
470
718
  def properties(self) -> pulumi.Output[Sequence['outputs.NotificationDestinationProperty']]:
471
719
  """
@@ -473,20 +721,27 @@ class NotificationDestination(pulumi.CustomResource):
473
721
  """
474
722
  return pulumi.get(self, "properties")
475
723
 
476
- @property
724
+ @_builtins.property
725
+ @pulumi.getter(name="secureUrl")
726
+ def secure_url(self) -> pulumi.Output[Optional['outputs.NotificationDestinationSecureUrl']]:
727
+ """
728
+ A nested block that describes a URL that contains sensitive data at the path or parameters. Only one secure_url block is permitted per notification destination definition. See Nested secure_url blocks below for details.
729
+ """
730
+ return pulumi.get(self, "secure_url")
731
+
732
+ @_builtins.property
477
733
  @pulumi.getter
478
- def status(self) -> pulumi.Output[str]:
734
+ def status(self) -> pulumi.Output[_builtins.str]:
479
735
  """
480
736
  The status of the destination.
481
737
  """
482
738
  return pulumi.get(self, "status")
483
739
 
484
- @property
740
+ @_builtins.property
485
741
  @pulumi.getter
486
- def type(self) -> pulumi.Output[str]:
742
+ def type(self) -> pulumi.Output[_builtins.str]:
487
743
  """
488
- (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, PAGERDUTY_ACCOUNT_INTEGRATION,
489
- PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE).
744
+ (Required) The type of the destination. One of: (WEBHOOK, EMAIL, SERVICE_NOW, SERVICE_NOW_APP, PAGERDUTY_ACCOUNT_INTEGRATION, PAGERDUTY_SERVICE_INTEGRATION, JIRA, SLACK, SLACK_COLLABORATION, SLACK_LEGACY, MOBILE_PUSH, EVENT_BRIDGE, MICROSOFT_TEAMS, WORKFLOW_AUTOMATION).
490
745
  """
491
746
  return pulumi.get(self, "type")
492
747