pulumi-dnsimple 5.1.0a1768541715__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,981 @@
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__ = ['ContactArgs', 'Contact']
18
+
19
+ @pulumi.input_type
20
+ class ContactArgs:
21
+ def __init__(__self__, *,
22
+ address1: pulumi.Input[_builtins.str],
23
+ city: pulumi.Input[_builtins.str],
24
+ country: pulumi.Input[_builtins.str],
25
+ email: pulumi.Input[_builtins.str],
26
+ first_name: pulumi.Input[_builtins.str],
27
+ last_name: pulumi.Input[_builtins.str],
28
+ phone: pulumi.Input[_builtins.str],
29
+ postal_code: pulumi.Input[_builtins.str],
30
+ state_province: pulumi.Input[_builtins.str],
31
+ address2: Optional[pulumi.Input[_builtins.str]] = None,
32
+ fax: Optional[pulumi.Input[_builtins.str]] = None,
33
+ job_title: Optional[pulumi.Input[_builtins.str]] = None,
34
+ label: Optional[pulumi.Input[_builtins.str]] = None,
35
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None):
36
+ """
37
+ The set of arguments for constructing a Contact resource.
38
+ :param pulumi.Input[_builtins.str] address1: The primary address line (street address, building number, etc.).
39
+ :param pulumi.Input[_builtins.str] city: The city where the contact is located.
40
+ :param pulumi.Input[_builtins.str] country: The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
41
+ :param pulumi.Input[_builtins.str] email: The contact's email address.
42
+ :param pulumi.Input[_builtins.str] first_name: The first name of the contact person.
43
+ :param pulumi.Input[_builtins.str] last_name: The last name of the contact person.
44
+ :param pulumi.Input[_builtins.str] phone: The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
45
+ :param pulumi.Input[_builtins.str] postal_code: The postal code, ZIP code, or equivalent for the contact's location.
46
+ :param pulumi.Input[_builtins.str] state_province: The state, province, or region where the contact is located.
47
+ :param pulumi.Input[_builtins.str] address2: The secondary address line (apartment, suite, floor, etc.).
48
+ :param pulumi.Input[_builtins.str] fax: The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
49
+ :param pulumi.Input[_builtins.str] job_title: The job title or position of the contact person within the organization.
50
+ :param pulumi.Input[_builtins.str] label: A descriptive label for the contact to help identify it.
51
+ :param pulumi.Input[_builtins.str] organization_name: The name of the organization or company associated with the contact.
52
+ """
53
+ pulumi.set(__self__, "address1", address1)
54
+ pulumi.set(__self__, "city", city)
55
+ pulumi.set(__self__, "country", country)
56
+ pulumi.set(__self__, "email", email)
57
+ pulumi.set(__self__, "first_name", first_name)
58
+ pulumi.set(__self__, "last_name", last_name)
59
+ pulumi.set(__self__, "phone", phone)
60
+ pulumi.set(__self__, "postal_code", postal_code)
61
+ pulumi.set(__self__, "state_province", state_province)
62
+ if address2 is not None:
63
+ pulumi.set(__self__, "address2", address2)
64
+ if fax is not None:
65
+ pulumi.set(__self__, "fax", fax)
66
+ if job_title is not None:
67
+ pulumi.set(__self__, "job_title", job_title)
68
+ if label is not None:
69
+ pulumi.set(__self__, "label", label)
70
+ if organization_name is not None:
71
+ pulumi.set(__self__, "organization_name", organization_name)
72
+
73
+ @_builtins.property
74
+ @pulumi.getter
75
+ def address1(self) -> pulumi.Input[_builtins.str]:
76
+ """
77
+ The primary address line (street address, building number, etc.).
78
+ """
79
+ return pulumi.get(self, "address1")
80
+
81
+ @address1.setter
82
+ def address1(self, value: pulumi.Input[_builtins.str]):
83
+ pulumi.set(self, "address1", value)
84
+
85
+ @_builtins.property
86
+ @pulumi.getter
87
+ def city(self) -> pulumi.Input[_builtins.str]:
88
+ """
89
+ The city where the contact is located.
90
+ """
91
+ return pulumi.get(self, "city")
92
+
93
+ @city.setter
94
+ def city(self, value: pulumi.Input[_builtins.str]):
95
+ pulumi.set(self, "city", value)
96
+
97
+ @_builtins.property
98
+ @pulumi.getter
99
+ def country(self) -> pulumi.Input[_builtins.str]:
100
+ """
101
+ The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
102
+ """
103
+ return pulumi.get(self, "country")
104
+
105
+ @country.setter
106
+ def country(self, value: pulumi.Input[_builtins.str]):
107
+ pulumi.set(self, "country", value)
108
+
109
+ @_builtins.property
110
+ @pulumi.getter
111
+ def email(self) -> pulumi.Input[_builtins.str]:
112
+ """
113
+ The contact's email address.
114
+ """
115
+ return pulumi.get(self, "email")
116
+
117
+ @email.setter
118
+ def email(self, value: pulumi.Input[_builtins.str]):
119
+ pulumi.set(self, "email", value)
120
+
121
+ @_builtins.property
122
+ @pulumi.getter(name="firstName")
123
+ def first_name(self) -> pulumi.Input[_builtins.str]:
124
+ """
125
+ The first name of the contact person.
126
+ """
127
+ return pulumi.get(self, "first_name")
128
+
129
+ @first_name.setter
130
+ def first_name(self, value: pulumi.Input[_builtins.str]):
131
+ pulumi.set(self, "first_name", value)
132
+
133
+ @_builtins.property
134
+ @pulumi.getter(name="lastName")
135
+ def last_name(self) -> pulumi.Input[_builtins.str]:
136
+ """
137
+ The last name of the contact person.
138
+ """
139
+ return pulumi.get(self, "last_name")
140
+
141
+ @last_name.setter
142
+ def last_name(self, value: pulumi.Input[_builtins.str]):
143
+ pulumi.set(self, "last_name", value)
144
+
145
+ @_builtins.property
146
+ @pulumi.getter
147
+ def phone(self) -> pulumi.Input[_builtins.str]:
148
+ """
149
+ The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
150
+ """
151
+ return pulumi.get(self, "phone")
152
+
153
+ @phone.setter
154
+ def phone(self, value: pulumi.Input[_builtins.str]):
155
+ pulumi.set(self, "phone", value)
156
+
157
+ @_builtins.property
158
+ @pulumi.getter(name="postalCode")
159
+ def postal_code(self) -> pulumi.Input[_builtins.str]:
160
+ """
161
+ The postal code, ZIP code, or equivalent for the contact's location.
162
+ """
163
+ return pulumi.get(self, "postal_code")
164
+
165
+ @postal_code.setter
166
+ def postal_code(self, value: pulumi.Input[_builtins.str]):
167
+ pulumi.set(self, "postal_code", value)
168
+
169
+ @_builtins.property
170
+ @pulumi.getter(name="stateProvince")
171
+ def state_province(self) -> pulumi.Input[_builtins.str]:
172
+ """
173
+ The state, province, or region where the contact is located.
174
+ """
175
+ return pulumi.get(self, "state_province")
176
+
177
+ @state_province.setter
178
+ def state_province(self, value: pulumi.Input[_builtins.str]):
179
+ pulumi.set(self, "state_province", value)
180
+
181
+ @_builtins.property
182
+ @pulumi.getter
183
+ def address2(self) -> Optional[pulumi.Input[_builtins.str]]:
184
+ """
185
+ The secondary address line (apartment, suite, floor, etc.).
186
+ """
187
+ return pulumi.get(self, "address2")
188
+
189
+ @address2.setter
190
+ def address2(self, value: Optional[pulumi.Input[_builtins.str]]):
191
+ pulumi.set(self, "address2", value)
192
+
193
+ @_builtins.property
194
+ @pulumi.getter
195
+ def fax(self) -> Optional[pulumi.Input[_builtins.str]]:
196
+ """
197
+ The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
198
+ """
199
+ return pulumi.get(self, "fax")
200
+
201
+ @fax.setter
202
+ def fax(self, value: Optional[pulumi.Input[_builtins.str]]):
203
+ pulumi.set(self, "fax", value)
204
+
205
+ @_builtins.property
206
+ @pulumi.getter(name="jobTitle")
207
+ def job_title(self) -> Optional[pulumi.Input[_builtins.str]]:
208
+ """
209
+ The job title or position of the contact person within the organization.
210
+ """
211
+ return pulumi.get(self, "job_title")
212
+
213
+ @job_title.setter
214
+ def job_title(self, value: Optional[pulumi.Input[_builtins.str]]):
215
+ pulumi.set(self, "job_title", value)
216
+
217
+ @_builtins.property
218
+ @pulumi.getter
219
+ def label(self) -> Optional[pulumi.Input[_builtins.str]]:
220
+ """
221
+ A descriptive label for the contact to help identify it.
222
+ """
223
+ return pulumi.get(self, "label")
224
+
225
+ @label.setter
226
+ def label(self, value: Optional[pulumi.Input[_builtins.str]]):
227
+ pulumi.set(self, "label", value)
228
+
229
+ @_builtins.property
230
+ @pulumi.getter(name="organizationName")
231
+ def organization_name(self) -> Optional[pulumi.Input[_builtins.str]]:
232
+ """
233
+ The name of the organization or company associated with the contact.
234
+ """
235
+ return pulumi.get(self, "organization_name")
236
+
237
+ @organization_name.setter
238
+ def organization_name(self, value: Optional[pulumi.Input[_builtins.str]]):
239
+ pulumi.set(self, "organization_name", value)
240
+
241
+
242
+ @pulumi.input_type
243
+ class _ContactState:
244
+ def __init__(__self__, *,
245
+ account_id: Optional[pulumi.Input[_builtins.int]] = None,
246
+ address1: Optional[pulumi.Input[_builtins.str]] = None,
247
+ address2: Optional[pulumi.Input[_builtins.str]] = None,
248
+ city: Optional[pulumi.Input[_builtins.str]] = None,
249
+ country: Optional[pulumi.Input[_builtins.str]] = None,
250
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
251
+ email: Optional[pulumi.Input[_builtins.str]] = None,
252
+ fax: Optional[pulumi.Input[_builtins.str]] = None,
253
+ fax_normalized: Optional[pulumi.Input[_builtins.str]] = None,
254
+ first_name: Optional[pulumi.Input[_builtins.str]] = None,
255
+ job_title: Optional[pulumi.Input[_builtins.str]] = None,
256
+ label: Optional[pulumi.Input[_builtins.str]] = None,
257
+ last_name: Optional[pulumi.Input[_builtins.str]] = None,
258
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
259
+ phone: Optional[pulumi.Input[_builtins.str]] = None,
260
+ phone_normalized: Optional[pulumi.Input[_builtins.str]] = None,
261
+ postal_code: Optional[pulumi.Input[_builtins.str]] = None,
262
+ state_province: Optional[pulumi.Input[_builtins.str]] = None,
263
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None):
264
+ """
265
+ Input properties used for looking up and filtering Contact resources.
266
+ :param pulumi.Input[_builtins.int] account_id: The account ID for the contact.
267
+ :param pulumi.Input[_builtins.str] address1: The primary address line (street address, building number, etc.).
268
+ :param pulumi.Input[_builtins.str] address2: The secondary address line (apartment, suite, floor, etc.).
269
+ :param pulumi.Input[_builtins.str] city: The city where the contact is located.
270
+ :param pulumi.Input[_builtins.str] country: The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
271
+ :param pulumi.Input[_builtins.str] created_at: Timestamp representing when this contact was created.
272
+ :param pulumi.Input[_builtins.str] email: The contact's email address.
273
+ :param pulumi.Input[_builtins.str] fax: The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
274
+ :param pulumi.Input[_builtins.str] fax_normalized: The fax number, normalized.
275
+ :param pulumi.Input[_builtins.str] first_name: The first name of the contact person.
276
+ :param pulumi.Input[_builtins.str] job_title: The job title or position of the contact person within the organization.
277
+ :param pulumi.Input[_builtins.str] label: A descriptive label for the contact to help identify it.
278
+ :param pulumi.Input[_builtins.str] last_name: The last name of the contact person.
279
+ :param pulumi.Input[_builtins.str] organization_name: The name of the organization or company associated with the contact.
280
+ :param pulumi.Input[_builtins.str] phone: The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
281
+ :param pulumi.Input[_builtins.str] phone_normalized: The phone number, normalized.
282
+ :param pulumi.Input[_builtins.str] postal_code: The postal code, ZIP code, or equivalent for the contact's location.
283
+ :param pulumi.Input[_builtins.str] state_province: The state, province, or region where the contact is located.
284
+ :param pulumi.Input[_builtins.str] updated_at: Timestamp representing when this contact was updated.
285
+ """
286
+ if account_id is not None:
287
+ pulumi.set(__self__, "account_id", account_id)
288
+ if address1 is not None:
289
+ pulumi.set(__self__, "address1", address1)
290
+ if address2 is not None:
291
+ pulumi.set(__self__, "address2", address2)
292
+ if city is not None:
293
+ pulumi.set(__self__, "city", city)
294
+ if country is not None:
295
+ pulumi.set(__self__, "country", country)
296
+ if created_at is not None:
297
+ pulumi.set(__self__, "created_at", created_at)
298
+ if email is not None:
299
+ pulumi.set(__self__, "email", email)
300
+ if fax is not None:
301
+ pulumi.set(__self__, "fax", fax)
302
+ if fax_normalized is not None:
303
+ pulumi.set(__self__, "fax_normalized", fax_normalized)
304
+ if first_name is not None:
305
+ pulumi.set(__self__, "first_name", first_name)
306
+ if job_title is not None:
307
+ pulumi.set(__self__, "job_title", job_title)
308
+ if label is not None:
309
+ pulumi.set(__self__, "label", label)
310
+ if last_name is not None:
311
+ pulumi.set(__self__, "last_name", last_name)
312
+ if organization_name is not None:
313
+ pulumi.set(__self__, "organization_name", organization_name)
314
+ if phone is not None:
315
+ pulumi.set(__self__, "phone", phone)
316
+ if phone_normalized is not None:
317
+ pulumi.set(__self__, "phone_normalized", phone_normalized)
318
+ if postal_code is not None:
319
+ pulumi.set(__self__, "postal_code", postal_code)
320
+ if state_province is not None:
321
+ pulumi.set(__self__, "state_province", state_province)
322
+ if updated_at is not None:
323
+ pulumi.set(__self__, "updated_at", updated_at)
324
+
325
+ @_builtins.property
326
+ @pulumi.getter(name="accountId")
327
+ def account_id(self) -> Optional[pulumi.Input[_builtins.int]]:
328
+ """
329
+ The account ID for the contact.
330
+ """
331
+ return pulumi.get(self, "account_id")
332
+
333
+ @account_id.setter
334
+ def account_id(self, value: Optional[pulumi.Input[_builtins.int]]):
335
+ pulumi.set(self, "account_id", value)
336
+
337
+ @_builtins.property
338
+ @pulumi.getter
339
+ def address1(self) -> Optional[pulumi.Input[_builtins.str]]:
340
+ """
341
+ The primary address line (street address, building number, etc.).
342
+ """
343
+ return pulumi.get(self, "address1")
344
+
345
+ @address1.setter
346
+ def address1(self, value: Optional[pulumi.Input[_builtins.str]]):
347
+ pulumi.set(self, "address1", value)
348
+
349
+ @_builtins.property
350
+ @pulumi.getter
351
+ def address2(self) -> Optional[pulumi.Input[_builtins.str]]:
352
+ """
353
+ The secondary address line (apartment, suite, floor, etc.).
354
+ """
355
+ return pulumi.get(self, "address2")
356
+
357
+ @address2.setter
358
+ def address2(self, value: Optional[pulumi.Input[_builtins.str]]):
359
+ pulumi.set(self, "address2", value)
360
+
361
+ @_builtins.property
362
+ @pulumi.getter
363
+ def city(self) -> Optional[pulumi.Input[_builtins.str]]:
364
+ """
365
+ The city where the contact is located.
366
+ """
367
+ return pulumi.get(self, "city")
368
+
369
+ @city.setter
370
+ def city(self, value: Optional[pulumi.Input[_builtins.str]]):
371
+ pulumi.set(self, "city", value)
372
+
373
+ @_builtins.property
374
+ @pulumi.getter
375
+ def country(self) -> Optional[pulumi.Input[_builtins.str]]:
376
+ """
377
+ The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
378
+ """
379
+ return pulumi.get(self, "country")
380
+
381
+ @country.setter
382
+ def country(self, value: Optional[pulumi.Input[_builtins.str]]):
383
+ pulumi.set(self, "country", value)
384
+
385
+ @_builtins.property
386
+ @pulumi.getter(name="createdAt")
387
+ def created_at(self) -> Optional[pulumi.Input[_builtins.str]]:
388
+ """
389
+ Timestamp representing when this contact was created.
390
+ """
391
+ return pulumi.get(self, "created_at")
392
+
393
+ @created_at.setter
394
+ def created_at(self, value: Optional[pulumi.Input[_builtins.str]]):
395
+ pulumi.set(self, "created_at", value)
396
+
397
+ @_builtins.property
398
+ @pulumi.getter
399
+ def email(self) -> Optional[pulumi.Input[_builtins.str]]:
400
+ """
401
+ The contact's email address.
402
+ """
403
+ return pulumi.get(self, "email")
404
+
405
+ @email.setter
406
+ def email(self, value: Optional[pulumi.Input[_builtins.str]]):
407
+ pulumi.set(self, "email", value)
408
+
409
+ @_builtins.property
410
+ @pulumi.getter
411
+ def fax(self) -> Optional[pulumi.Input[_builtins.str]]:
412
+ """
413
+ The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
414
+ """
415
+ return pulumi.get(self, "fax")
416
+
417
+ @fax.setter
418
+ def fax(self, value: Optional[pulumi.Input[_builtins.str]]):
419
+ pulumi.set(self, "fax", value)
420
+
421
+ @_builtins.property
422
+ @pulumi.getter(name="faxNormalized")
423
+ def fax_normalized(self) -> Optional[pulumi.Input[_builtins.str]]:
424
+ """
425
+ The fax number, normalized.
426
+ """
427
+ return pulumi.get(self, "fax_normalized")
428
+
429
+ @fax_normalized.setter
430
+ def fax_normalized(self, value: Optional[pulumi.Input[_builtins.str]]):
431
+ pulumi.set(self, "fax_normalized", value)
432
+
433
+ @_builtins.property
434
+ @pulumi.getter(name="firstName")
435
+ def first_name(self) -> Optional[pulumi.Input[_builtins.str]]:
436
+ """
437
+ The first name of the contact person.
438
+ """
439
+ return pulumi.get(self, "first_name")
440
+
441
+ @first_name.setter
442
+ def first_name(self, value: Optional[pulumi.Input[_builtins.str]]):
443
+ pulumi.set(self, "first_name", value)
444
+
445
+ @_builtins.property
446
+ @pulumi.getter(name="jobTitle")
447
+ def job_title(self) -> Optional[pulumi.Input[_builtins.str]]:
448
+ """
449
+ The job title or position of the contact person within the organization.
450
+ """
451
+ return pulumi.get(self, "job_title")
452
+
453
+ @job_title.setter
454
+ def job_title(self, value: Optional[pulumi.Input[_builtins.str]]):
455
+ pulumi.set(self, "job_title", value)
456
+
457
+ @_builtins.property
458
+ @pulumi.getter
459
+ def label(self) -> Optional[pulumi.Input[_builtins.str]]:
460
+ """
461
+ A descriptive label for the contact to help identify it.
462
+ """
463
+ return pulumi.get(self, "label")
464
+
465
+ @label.setter
466
+ def label(self, value: Optional[pulumi.Input[_builtins.str]]):
467
+ pulumi.set(self, "label", value)
468
+
469
+ @_builtins.property
470
+ @pulumi.getter(name="lastName")
471
+ def last_name(self) -> Optional[pulumi.Input[_builtins.str]]:
472
+ """
473
+ The last name of the contact person.
474
+ """
475
+ return pulumi.get(self, "last_name")
476
+
477
+ @last_name.setter
478
+ def last_name(self, value: Optional[pulumi.Input[_builtins.str]]):
479
+ pulumi.set(self, "last_name", value)
480
+
481
+ @_builtins.property
482
+ @pulumi.getter(name="organizationName")
483
+ def organization_name(self) -> Optional[pulumi.Input[_builtins.str]]:
484
+ """
485
+ The name of the organization or company associated with the contact.
486
+ """
487
+ return pulumi.get(self, "organization_name")
488
+
489
+ @organization_name.setter
490
+ def organization_name(self, value: Optional[pulumi.Input[_builtins.str]]):
491
+ pulumi.set(self, "organization_name", value)
492
+
493
+ @_builtins.property
494
+ @pulumi.getter
495
+ def phone(self) -> Optional[pulumi.Input[_builtins.str]]:
496
+ """
497
+ The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
498
+ """
499
+ return pulumi.get(self, "phone")
500
+
501
+ @phone.setter
502
+ def phone(self, value: Optional[pulumi.Input[_builtins.str]]):
503
+ pulumi.set(self, "phone", value)
504
+
505
+ @_builtins.property
506
+ @pulumi.getter(name="phoneNormalized")
507
+ def phone_normalized(self) -> Optional[pulumi.Input[_builtins.str]]:
508
+ """
509
+ The phone number, normalized.
510
+ """
511
+ return pulumi.get(self, "phone_normalized")
512
+
513
+ @phone_normalized.setter
514
+ def phone_normalized(self, value: Optional[pulumi.Input[_builtins.str]]):
515
+ pulumi.set(self, "phone_normalized", value)
516
+
517
+ @_builtins.property
518
+ @pulumi.getter(name="postalCode")
519
+ def postal_code(self) -> Optional[pulumi.Input[_builtins.str]]:
520
+ """
521
+ The postal code, ZIP code, or equivalent for the contact's location.
522
+ """
523
+ return pulumi.get(self, "postal_code")
524
+
525
+ @postal_code.setter
526
+ def postal_code(self, value: Optional[pulumi.Input[_builtins.str]]):
527
+ pulumi.set(self, "postal_code", value)
528
+
529
+ @_builtins.property
530
+ @pulumi.getter(name="stateProvince")
531
+ def state_province(self) -> Optional[pulumi.Input[_builtins.str]]:
532
+ """
533
+ The state, province, or region where the contact is located.
534
+ """
535
+ return pulumi.get(self, "state_province")
536
+
537
+ @state_province.setter
538
+ def state_province(self, value: Optional[pulumi.Input[_builtins.str]]):
539
+ pulumi.set(self, "state_province", value)
540
+
541
+ @_builtins.property
542
+ @pulumi.getter(name="updatedAt")
543
+ def updated_at(self) -> Optional[pulumi.Input[_builtins.str]]:
544
+ """
545
+ Timestamp representing when this contact was updated.
546
+ """
547
+ return pulumi.get(self, "updated_at")
548
+
549
+ @updated_at.setter
550
+ def updated_at(self, value: Optional[pulumi.Input[_builtins.str]]):
551
+ pulumi.set(self, "updated_at", value)
552
+
553
+
554
+ @pulumi.type_token("dnsimple:index/contact:Contact")
555
+ class Contact(pulumi.CustomResource):
556
+ @overload
557
+ def __init__(__self__,
558
+ resource_name: str,
559
+ opts: Optional[pulumi.ResourceOptions] = None,
560
+ address1: Optional[pulumi.Input[_builtins.str]] = None,
561
+ address2: Optional[pulumi.Input[_builtins.str]] = None,
562
+ city: Optional[pulumi.Input[_builtins.str]] = None,
563
+ country: Optional[pulumi.Input[_builtins.str]] = None,
564
+ email: Optional[pulumi.Input[_builtins.str]] = None,
565
+ fax: Optional[pulumi.Input[_builtins.str]] = None,
566
+ first_name: Optional[pulumi.Input[_builtins.str]] = None,
567
+ job_title: Optional[pulumi.Input[_builtins.str]] = None,
568
+ label: Optional[pulumi.Input[_builtins.str]] = None,
569
+ last_name: Optional[pulumi.Input[_builtins.str]] = None,
570
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
571
+ phone: Optional[pulumi.Input[_builtins.str]] = None,
572
+ postal_code: Optional[pulumi.Input[_builtins.str]] = None,
573
+ state_province: Optional[pulumi.Input[_builtins.str]] = None,
574
+ __props__=None):
575
+ """
576
+ Provides a DNSimple contact resource.
577
+
578
+ ## Example Usage
579
+
580
+ ```python
581
+ import pulumi
582
+ import pulumi_dnsimple as dnsimple
583
+
584
+ example = dnsimple.Contact("example",
585
+ label="Main Contact",
586
+ first_name="John",
587
+ last_name="Doe",
588
+ organization_name="Example Inc",
589
+ job_title="Manager",
590
+ address1="123 Main Street",
591
+ address2="Suite 100",
592
+ city="San Francisco",
593
+ state_province="California",
594
+ postal_code="94105",
595
+ country="US",
596
+ phone="+1.4155551234",
597
+ fax="+1.4155555678",
598
+ email="john@example.com")
599
+ ```
600
+
601
+ ## Import
602
+
603
+ DNSimple contacts can be imported using their numeric ID.
604
+
605
+ bash
606
+
607
+ ```sh
608
+ $ pulumi import dnsimple:index/contact:Contact example 5678
609
+ ```
610
+
611
+ The contact ID can be found within the [DNSimple Contacts API](https://developer.dnsimple.com/v2/contacts/#listContacts). Check out [Authentication](https://developer.dnsimple.com/v2/#authentication) in API Overview for available options.
612
+
613
+ :param str resource_name: The name of the resource.
614
+ :param pulumi.ResourceOptions opts: Options for the resource.
615
+ :param pulumi.Input[_builtins.str] address1: The primary address line (street address, building number, etc.).
616
+ :param pulumi.Input[_builtins.str] address2: The secondary address line (apartment, suite, floor, etc.).
617
+ :param pulumi.Input[_builtins.str] city: The city where the contact is located.
618
+ :param pulumi.Input[_builtins.str] country: The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
619
+ :param pulumi.Input[_builtins.str] email: The contact's email address.
620
+ :param pulumi.Input[_builtins.str] fax: The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
621
+ :param pulumi.Input[_builtins.str] first_name: The first name of the contact person.
622
+ :param pulumi.Input[_builtins.str] job_title: The job title or position of the contact person within the organization.
623
+ :param pulumi.Input[_builtins.str] label: A descriptive label for the contact to help identify it.
624
+ :param pulumi.Input[_builtins.str] last_name: The last name of the contact person.
625
+ :param pulumi.Input[_builtins.str] organization_name: The name of the organization or company associated with the contact.
626
+ :param pulumi.Input[_builtins.str] phone: The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
627
+ :param pulumi.Input[_builtins.str] postal_code: The postal code, ZIP code, or equivalent for the contact's location.
628
+ :param pulumi.Input[_builtins.str] state_province: The state, province, or region where the contact is located.
629
+ """
630
+ ...
631
+ @overload
632
+ def __init__(__self__,
633
+ resource_name: str,
634
+ args: ContactArgs,
635
+ opts: Optional[pulumi.ResourceOptions] = None):
636
+ """
637
+ Provides a DNSimple contact resource.
638
+
639
+ ## Example Usage
640
+
641
+ ```python
642
+ import pulumi
643
+ import pulumi_dnsimple as dnsimple
644
+
645
+ example = dnsimple.Contact("example",
646
+ label="Main Contact",
647
+ first_name="John",
648
+ last_name="Doe",
649
+ organization_name="Example Inc",
650
+ job_title="Manager",
651
+ address1="123 Main Street",
652
+ address2="Suite 100",
653
+ city="San Francisco",
654
+ state_province="California",
655
+ postal_code="94105",
656
+ country="US",
657
+ phone="+1.4155551234",
658
+ fax="+1.4155555678",
659
+ email="john@example.com")
660
+ ```
661
+
662
+ ## Import
663
+
664
+ DNSimple contacts can be imported using their numeric ID.
665
+
666
+ bash
667
+
668
+ ```sh
669
+ $ pulumi import dnsimple:index/contact:Contact example 5678
670
+ ```
671
+
672
+ The contact ID can be found within the [DNSimple Contacts API](https://developer.dnsimple.com/v2/contacts/#listContacts). Check out [Authentication](https://developer.dnsimple.com/v2/#authentication) in API Overview for available options.
673
+
674
+ :param str resource_name: The name of the resource.
675
+ :param ContactArgs args: The arguments to use to populate this resource's properties.
676
+ :param pulumi.ResourceOptions opts: Options for the resource.
677
+ """
678
+ ...
679
+ def __init__(__self__, resource_name: str, *args, **kwargs):
680
+ resource_args, opts = _utilities.get_resource_args_opts(ContactArgs, pulumi.ResourceOptions, *args, **kwargs)
681
+ if resource_args is not None:
682
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
683
+ else:
684
+ __self__._internal_init(resource_name, *args, **kwargs)
685
+
686
+ def _internal_init(__self__,
687
+ resource_name: str,
688
+ opts: Optional[pulumi.ResourceOptions] = None,
689
+ address1: Optional[pulumi.Input[_builtins.str]] = None,
690
+ address2: Optional[pulumi.Input[_builtins.str]] = None,
691
+ city: Optional[pulumi.Input[_builtins.str]] = None,
692
+ country: Optional[pulumi.Input[_builtins.str]] = None,
693
+ email: Optional[pulumi.Input[_builtins.str]] = None,
694
+ fax: Optional[pulumi.Input[_builtins.str]] = None,
695
+ first_name: Optional[pulumi.Input[_builtins.str]] = None,
696
+ job_title: Optional[pulumi.Input[_builtins.str]] = None,
697
+ label: Optional[pulumi.Input[_builtins.str]] = None,
698
+ last_name: Optional[pulumi.Input[_builtins.str]] = None,
699
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
700
+ phone: Optional[pulumi.Input[_builtins.str]] = None,
701
+ postal_code: Optional[pulumi.Input[_builtins.str]] = None,
702
+ state_province: Optional[pulumi.Input[_builtins.str]] = None,
703
+ __props__=None):
704
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
705
+ if not isinstance(opts, pulumi.ResourceOptions):
706
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
707
+ if opts.id is None:
708
+ if __props__ is not None:
709
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
710
+ __props__ = ContactArgs.__new__(ContactArgs)
711
+
712
+ if address1 is None and not opts.urn:
713
+ raise TypeError("Missing required property 'address1'")
714
+ __props__.__dict__["address1"] = address1
715
+ __props__.__dict__["address2"] = address2
716
+ if city is None and not opts.urn:
717
+ raise TypeError("Missing required property 'city'")
718
+ __props__.__dict__["city"] = city
719
+ if country is None and not opts.urn:
720
+ raise TypeError("Missing required property 'country'")
721
+ __props__.__dict__["country"] = country
722
+ if email is None and not opts.urn:
723
+ raise TypeError("Missing required property 'email'")
724
+ __props__.__dict__["email"] = email
725
+ __props__.__dict__["fax"] = fax
726
+ if first_name is None and not opts.urn:
727
+ raise TypeError("Missing required property 'first_name'")
728
+ __props__.__dict__["first_name"] = first_name
729
+ __props__.__dict__["job_title"] = job_title
730
+ __props__.__dict__["label"] = label
731
+ if last_name is None and not opts.urn:
732
+ raise TypeError("Missing required property 'last_name'")
733
+ __props__.__dict__["last_name"] = last_name
734
+ __props__.__dict__["organization_name"] = organization_name
735
+ if phone is None and not opts.urn:
736
+ raise TypeError("Missing required property 'phone'")
737
+ __props__.__dict__["phone"] = phone
738
+ if postal_code is None and not opts.urn:
739
+ raise TypeError("Missing required property 'postal_code'")
740
+ __props__.__dict__["postal_code"] = postal_code
741
+ if state_province is None and not opts.urn:
742
+ raise TypeError("Missing required property 'state_province'")
743
+ __props__.__dict__["state_province"] = state_province
744
+ __props__.__dict__["account_id"] = None
745
+ __props__.__dict__["created_at"] = None
746
+ __props__.__dict__["fax_normalized"] = None
747
+ __props__.__dict__["phone_normalized"] = None
748
+ __props__.__dict__["updated_at"] = None
749
+ super(Contact, __self__).__init__(
750
+ 'dnsimple:index/contact:Contact',
751
+ resource_name,
752
+ __props__,
753
+ opts)
754
+
755
+ @staticmethod
756
+ def get(resource_name: str,
757
+ id: pulumi.Input[str],
758
+ opts: Optional[pulumi.ResourceOptions] = None,
759
+ account_id: Optional[pulumi.Input[_builtins.int]] = None,
760
+ address1: Optional[pulumi.Input[_builtins.str]] = None,
761
+ address2: Optional[pulumi.Input[_builtins.str]] = None,
762
+ city: Optional[pulumi.Input[_builtins.str]] = None,
763
+ country: Optional[pulumi.Input[_builtins.str]] = None,
764
+ created_at: Optional[pulumi.Input[_builtins.str]] = None,
765
+ email: Optional[pulumi.Input[_builtins.str]] = None,
766
+ fax: Optional[pulumi.Input[_builtins.str]] = None,
767
+ fax_normalized: Optional[pulumi.Input[_builtins.str]] = None,
768
+ first_name: Optional[pulumi.Input[_builtins.str]] = None,
769
+ job_title: Optional[pulumi.Input[_builtins.str]] = None,
770
+ label: Optional[pulumi.Input[_builtins.str]] = None,
771
+ last_name: Optional[pulumi.Input[_builtins.str]] = None,
772
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
773
+ phone: Optional[pulumi.Input[_builtins.str]] = None,
774
+ phone_normalized: Optional[pulumi.Input[_builtins.str]] = None,
775
+ postal_code: Optional[pulumi.Input[_builtins.str]] = None,
776
+ state_province: Optional[pulumi.Input[_builtins.str]] = None,
777
+ updated_at: Optional[pulumi.Input[_builtins.str]] = None) -> 'Contact':
778
+ """
779
+ Get an existing Contact resource's state with the given name, id, and optional extra
780
+ properties used to qualify the lookup.
781
+
782
+ :param str resource_name: The unique name of the resulting resource.
783
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
784
+ :param pulumi.ResourceOptions opts: Options for the resource.
785
+ :param pulumi.Input[_builtins.int] account_id: The account ID for the contact.
786
+ :param pulumi.Input[_builtins.str] address1: The primary address line (street address, building number, etc.).
787
+ :param pulumi.Input[_builtins.str] address2: The secondary address line (apartment, suite, floor, etc.).
788
+ :param pulumi.Input[_builtins.str] city: The city where the contact is located.
789
+ :param pulumi.Input[_builtins.str] country: The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
790
+ :param pulumi.Input[_builtins.str] created_at: Timestamp representing when this contact was created.
791
+ :param pulumi.Input[_builtins.str] email: The contact's email address.
792
+ :param pulumi.Input[_builtins.str] fax: The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
793
+ :param pulumi.Input[_builtins.str] fax_normalized: The fax number, normalized.
794
+ :param pulumi.Input[_builtins.str] first_name: The first name of the contact person.
795
+ :param pulumi.Input[_builtins.str] job_title: The job title or position of the contact person within the organization.
796
+ :param pulumi.Input[_builtins.str] label: A descriptive label for the contact to help identify it.
797
+ :param pulumi.Input[_builtins.str] last_name: The last name of the contact person.
798
+ :param pulumi.Input[_builtins.str] organization_name: The name of the organization or company associated with the contact.
799
+ :param pulumi.Input[_builtins.str] phone: The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
800
+ :param pulumi.Input[_builtins.str] phone_normalized: The phone number, normalized.
801
+ :param pulumi.Input[_builtins.str] postal_code: The postal code, ZIP code, or equivalent for the contact's location.
802
+ :param pulumi.Input[_builtins.str] state_province: The state, province, or region where the contact is located.
803
+ :param pulumi.Input[_builtins.str] updated_at: Timestamp representing when this contact was updated.
804
+ """
805
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
806
+
807
+ __props__ = _ContactState.__new__(_ContactState)
808
+
809
+ __props__.__dict__["account_id"] = account_id
810
+ __props__.__dict__["address1"] = address1
811
+ __props__.__dict__["address2"] = address2
812
+ __props__.__dict__["city"] = city
813
+ __props__.__dict__["country"] = country
814
+ __props__.__dict__["created_at"] = created_at
815
+ __props__.__dict__["email"] = email
816
+ __props__.__dict__["fax"] = fax
817
+ __props__.__dict__["fax_normalized"] = fax_normalized
818
+ __props__.__dict__["first_name"] = first_name
819
+ __props__.__dict__["job_title"] = job_title
820
+ __props__.__dict__["label"] = label
821
+ __props__.__dict__["last_name"] = last_name
822
+ __props__.__dict__["organization_name"] = organization_name
823
+ __props__.__dict__["phone"] = phone
824
+ __props__.__dict__["phone_normalized"] = phone_normalized
825
+ __props__.__dict__["postal_code"] = postal_code
826
+ __props__.__dict__["state_province"] = state_province
827
+ __props__.__dict__["updated_at"] = updated_at
828
+ return Contact(resource_name, opts=opts, __props__=__props__)
829
+
830
+ @_builtins.property
831
+ @pulumi.getter(name="accountId")
832
+ def account_id(self) -> pulumi.Output[_builtins.int]:
833
+ """
834
+ The account ID for the contact.
835
+ """
836
+ return pulumi.get(self, "account_id")
837
+
838
+ @_builtins.property
839
+ @pulumi.getter
840
+ def address1(self) -> pulumi.Output[_builtins.str]:
841
+ """
842
+ The primary address line (street address, building number, etc.).
843
+ """
844
+ return pulumi.get(self, "address1")
845
+
846
+ @_builtins.property
847
+ @pulumi.getter
848
+ def address2(self) -> pulumi.Output[_builtins.str]:
849
+ """
850
+ The secondary address line (apartment, suite, floor, etc.).
851
+ """
852
+ return pulumi.get(self, "address2")
853
+
854
+ @_builtins.property
855
+ @pulumi.getter
856
+ def city(self) -> pulumi.Output[_builtins.str]:
857
+ """
858
+ The city where the contact is located.
859
+ """
860
+ return pulumi.get(self, "city")
861
+
862
+ @_builtins.property
863
+ @pulumi.getter
864
+ def country(self) -> pulumi.Output[_builtins.str]:
865
+ """
866
+ The two-letter ISO country code (e.g., "US", "CA", "IT") for the contact's location.
867
+ """
868
+ return pulumi.get(self, "country")
869
+
870
+ @_builtins.property
871
+ @pulumi.getter(name="createdAt")
872
+ def created_at(self) -> pulumi.Output[_builtins.str]:
873
+ """
874
+ Timestamp representing when this contact was created.
875
+ """
876
+ return pulumi.get(self, "created_at")
877
+
878
+ @_builtins.property
879
+ @pulumi.getter
880
+ def email(self) -> pulumi.Output[_builtins.str]:
881
+ """
882
+ The contact's email address.
883
+ """
884
+ return pulumi.get(self, "email")
885
+
886
+ @_builtins.property
887
+ @pulumi.getter
888
+ def fax(self) -> pulumi.Output[_builtins.str]:
889
+ """
890
+ The contact's fax number. Use international format with country code (e.g., "+1.8491234567" for US numbers).
891
+ """
892
+ return pulumi.get(self, "fax")
893
+
894
+ @_builtins.property
895
+ @pulumi.getter(name="faxNormalized")
896
+ def fax_normalized(self) -> pulumi.Output[_builtins.str]:
897
+ """
898
+ The fax number, normalized.
899
+ """
900
+ return pulumi.get(self, "fax_normalized")
901
+
902
+ @_builtins.property
903
+ @pulumi.getter(name="firstName")
904
+ def first_name(self) -> pulumi.Output[_builtins.str]:
905
+ """
906
+ The first name of the contact person.
907
+ """
908
+ return pulumi.get(self, "first_name")
909
+
910
+ @_builtins.property
911
+ @pulumi.getter(name="jobTitle")
912
+ def job_title(self) -> pulumi.Output[_builtins.str]:
913
+ """
914
+ The job title or position of the contact person within the organization.
915
+ """
916
+ return pulumi.get(self, "job_title")
917
+
918
+ @_builtins.property
919
+ @pulumi.getter
920
+ def label(self) -> pulumi.Output[_builtins.str]:
921
+ """
922
+ A descriptive label for the contact to help identify it.
923
+ """
924
+ return pulumi.get(self, "label")
925
+
926
+ @_builtins.property
927
+ @pulumi.getter(name="lastName")
928
+ def last_name(self) -> pulumi.Output[_builtins.str]:
929
+ """
930
+ The last name of the contact person.
931
+ """
932
+ return pulumi.get(self, "last_name")
933
+
934
+ @_builtins.property
935
+ @pulumi.getter(name="organizationName")
936
+ def organization_name(self) -> pulumi.Output[_builtins.str]:
937
+ """
938
+ The name of the organization or company associated with the contact.
939
+ """
940
+ return pulumi.get(self, "organization_name")
941
+
942
+ @_builtins.property
943
+ @pulumi.getter
944
+ def phone(self) -> pulumi.Output[_builtins.str]:
945
+ """
946
+ The contact's phone number. Use international format with country code (e.g., "+1.4012345678" for US numbers).
947
+ """
948
+ return pulumi.get(self, "phone")
949
+
950
+ @_builtins.property
951
+ @pulumi.getter(name="phoneNormalized")
952
+ def phone_normalized(self) -> pulumi.Output[_builtins.str]:
953
+ """
954
+ The phone number, normalized.
955
+ """
956
+ return pulumi.get(self, "phone_normalized")
957
+
958
+ @_builtins.property
959
+ @pulumi.getter(name="postalCode")
960
+ def postal_code(self) -> pulumi.Output[_builtins.str]:
961
+ """
962
+ The postal code, ZIP code, or equivalent for the contact's location.
963
+ """
964
+ return pulumi.get(self, "postal_code")
965
+
966
+ @_builtins.property
967
+ @pulumi.getter(name="stateProvince")
968
+ def state_province(self) -> pulumi.Output[_builtins.str]:
969
+ """
970
+ The state, province, or region where the contact is located.
971
+ """
972
+ return pulumi.get(self, "state_province")
973
+
974
+ @_builtins.property
975
+ @pulumi.getter(name="updatedAt")
976
+ def updated_at(self) -> pulumi.Output[_builtins.str]:
977
+ """
978
+ Timestamp representing when this contact was updated.
979
+ """
980
+ return pulumi.get(self, "updated_at")
981
+