@pulumi/mongodbatlas 3.17.0-alpha.1720851067 → 3.17.0-alpha.1721236709

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pulumi/mongodbatlas",
3
- "version": "3.17.0-alpha.1720851067",
3
+ "version": "3.17.0-alpha.1721236709",
4
4
  "description": "A Pulumi package for creating and managing mongodbatlas cloud resources.",
5
5
  "keywords": [
6
6
  "pulumi",
@@ -23,6 +23,6 @@
23
23
  "pulumi": {
24
24
  "resource": true,
25
25
  "name": "mongodbatlas",
26
- "version": "3.17.0-alpha.1720851067"
26
+ "version": "3.17.0-alpha.1721236709"
27
27
  }
28
28
  }
package/types/input.d.ts CHANGED
@@ -1,16 +1,54 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "../types/input";
3
3
  export interface AdvancedClusterAdvancedConfiguration {
4
+ /**
5
+ * [Default level of acknowledgment requested from MongoDB for read operations](https://docs.mongodb.com/manual/reference/read-concern/) set for this cluster. MongoDB 4.4 clusters default to [available](https://docs.mongodb.com/manual/reference/read-concern-available/).
6
+ */
4
7
  defaultReadConcern?: pulumi.Input<string>;
8
+ /**
9
+ * [Default level of acknowledgment requested from MongoDB for write operations](https://docs.mongodb.com/manual/reference/write-concern/) set for this cluster. MongoDB 4.4 clusters default to [1](https://docs.mongodb.com/manual/reference/write-concern/).
10
+ */
5
11
  defaultWriteConcern?: pulumi.Input<string>;
12
+ /**
13
+ * When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
14
+ */
6
15
  failIndexKeyTooLong?: pulumi.Input<boolean>;
16
+ /**
17
+ * When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
18
+ */
7
19
  javascriptEnabled?: pulumi.Input<boolean>;
20
+ /**
21
+ * Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:
22
+ *
23
+ * - TLS1_0
24
+ * - TLS1_1
25
+ * - TLS1_2
26
+ */
8
27
  minimumEnabledTlsProtocol?: pulumi.Input<string>;
28
+ /**
29
+ * When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
30
+ */
9
31
  noTableScan?: pulumi.Input<boolean>;
32
+ /**
33
+ * Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
34
+ * * **Note** A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see [`oplogMinRetentionHours`](https://www.mongodb.com/docs/manual/core/replica-set-oplog/#std-label-replica-set-minimum-oplog-size)
35
+ */
10
36
  oplogMinRetentionHours?: pulumi.Input<number>;
37
+ /**
38
+ * The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
39
+ */
11
40
  oplogSizeMb?: pulumi.Input<number>;
41
+ /**
42
+ * Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
43
+ */
12
44
  sampleRefreshIntervalBiConnector?: pulumi.Input<number>;
45
+ /**
46
+ * Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
47
+ */
13
48
  sampleSizeBiConnector?: pulumi.Input<number>;
49
+ /**
50
+ * Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
51
+ */
14
52
  transactionLifetimeLimitSeconds?: pulumi.Input<number>;
15
53
  }
16
54
  export interface AdvancedClusterBiConnectorConfig {
@@ -71,6 +109,15 @@ export interface AdvancedClusterConnectionStringPrivateEndpoint {
71
109
  }
72
110
  export interface AdvancedClusterConnectionStringPrivateEndpointEndpoint {
73
111
  endpointId?: pulumi.Input<string>;
112
+ /**
113
+ * Cloud service provider on which the servers are provisioned.
114
+ * The possible values are:
115
+ *
116
+ * - `AWS` - Amazon AWS
117
+ * - `GCP` - Google Cloud Platform
118
+ * - `AZURE` - Microsoft Azure
119
+ * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.
120
+ */
74
121
  providerName?: pulumi.Input<string>;
75
122
  region?: pulumi.Input<string>;
76
123
  }
@@ -259,42 +306,171 @@ export interface AdvancedClusterTag {
259
306
  value: pulumi.Input<string>;
260
307
  }
261
308
  export interface AlertConfigurationMatcher {
309
+ /**
310
+ * Name of the field in the target object to match on.
311
+ *
312
+ * | Host alerts | Replica set alerts | Sharded cluster alerts |
313
+ * |:---------- |:------------- |:------ |
314
+ * | `TYPE_NAME` | `REPLICA_SET_NAME` | `CLUSTER_NAME` |
315
+ * | `HOSTNAME` | `SHARD_NAME` | `SHARD_NAME` |
316
+ * | `PORT` | `CLUSTER_NAME` | |
317
+ * | `HOSTNAME_AND_PORT` | | |
318
+ * | `REPLICA_SET_NAME` | | |
319
+ *
320
+ *
321
+ *
322
+ * All other types of alerts do not support matchers.
323
+ */
262
324
  fieldName: pulumi.Input<string>;
263
325
  operator: pulumi.Input<string>;
326
+ /**
327
+ * Value to test with the specified operator. If `fieldName` is set to TYPE_NAME, you can match on the following values:
328
+ * - `PRIMARY`
329
+ * - `SECONDARY`
330
+ * - `STANDALONE`
331
+ * - `CONFIG`
332
+ * - `MONGOS`
333
+ */
264
334
  value: pulumi.Input<string>;
265
335
  }
266
336
  export interface AlertConfigurationMetricThresholdConfig {
337
+ /**
338
+ * Name of the metric to check. The full list being quite large, please refer to atlas docs [here for general metrics](https://docs.atlas.mongodb.com/reference/alert-host-metrics/#measurement-types) and [here for serverless metrics](https://www.mongodb.com/docs/atlas/reference/api/alert-configurations-create-config/#serverless-measurements)
339
+ */
267
340
  metricName: pulumi.Input<string>;
341
+ /**
342
+ * This must be set to AVERAGE. Atlas computes the current metric value as an average.
343
+ */
268
344
  mode?: pulumi.Input<string>;
269
345
  operator?: pulumi.Input<string>;
270
346
  threshold?: pulumi.Input<number>;
271
347
  units?: pulumi.Input<string>;
272
348
  }
273
349
  export interface AlertConfigurationNotification {
350
+ /**
351
+ * Slack API token. Required for the SLACK notifications type. If the token later becomes invalid, Atlas sends an email to the project owner and eventually removes the token.
352
+ */
274
353
  apiToken?: pulumi.Input<string>;
354
+ /**
355
+ * Slack channel name. Required for the SLACK notifications type.
356
+ */
275
357
  channelName?: pulumi.Input<string>;
358
+ /**
359
+ * Datadog API Key. Found in the Datadog dashboard. Required for the DATADOG notifications type.
360
+ */
276
361
  datadogApiKey?: pulumi.Input<string>;
362
+ /**
363
+ * Region that indicates which API URL to use. See the `datadogRegion` field in the `notifications` request parameter of [MongoDB API Alert Configuration documentation](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/createAlertConfiguration) for more details. The default Datadog region is US.
364
+ */
277
365
  datadogRegion?: pulumi.Input<string>;
366
+ /**
367
+ * Number of minutes to wait after an alert condition is detected before sending out the first notification.
368
+ */
278
369
  delayMin?: pulumi.Input<number>;
370
+ /**
371
+ * Email address to which alert notifications are sent. Required for the EMAIL notifications type.
372
+ */
279
373
  emailAddress?: pulumi.Input<string>;
374
+ /**
375
+ * Flag indicating email notifications should be sent. This flag is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
376
+ */
280
377
  emailEnabled?: pulumi.Input<boolean>;
378
+ /**
379
+ * The ID of the associated integration, the credentials of which to use for requests.
380
+ */
281
381
  integrationId?: pulumi.Input<string>;
382
+ /**
383
+ * Number of minutes to wait between successive notifications for unacknowledged alerts that are not resolved. The minimum value is 5. **NOTE** `PAGER_DUTY`, `VICTOR_OPS`, and `OPS_GENIE` notifications do not return this value. The notification interval must be configured and managed within each external service.
384
+ */
282
385
  intervalMin?: pulumi.Input<number>;
386
+ /**
387
+ * Microsoft Teams Webhook Uniform Resource Locator (URL) that MongoDB Cloud needs to send this notification via Microsoft Teams. Required if `typeName` is `MICROSOFT_TEAMS`. If the URL later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
388
+ */
283
389
  microsoftTeamsWebhookUrl?: pulumi.Input<string>;
390
+ /**
391
+ * Mobile number to which alert notifications are sent. Required for the SMS notifications type.
392
+ */
284
393
  mobileNumber?: pulumi.Input<string>;
394
+ /**
395
+ * The notifier ID is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.
396
+ */
285
397
  notifierId?: pulumi.Input<string>;
398
+ /**
399
+ * Opsgenie API Key. Required for the `OPS_GENIE` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the token.
400
+ */
286
401
  opsGenieApiKey?: pulumi.Input<string>;
402
+ /**
403
+ * Region that indicates which API URL to use. Accepted regions are: `US` ,`EU`. The default Opsgenie region is US.
404
+ */
287
405
  opsGenieRegion?: pulumi.Input<string>;
406
+ /**
407
+ * Optional. One or more roles that receive the configured alert. If you include this field, Atlas sends alerts only to users assigned the roles you specify in the array. If you omit this field, Atlas sends alerts to users assigned any role. This parameter is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
408
+ * Accepted values are:
409
+ *
410
+ * | Project roles | Organization roles |
411
+ * |:---------- |:----------- |
412
+ * | `GROUP_CHARTS_ADMIN` | `ORG_OWNER` |
413
+ * | `GROUP_CLUSTER_MANAGER` | `ORG_MEMBER` |
414
+ * | `GROUP_DATA_ACCESS_ADMIN` | `ORG_GROUP_CREATOR` |
415
+ * | `GROUP_DATA_ACCESS_READ_ONLY` | `ORG_BILLING_ADMIN` |
416
+ * | `GROUP_DATA_ACCESS_READ_WRITE` | `ORG_READ_ONLY` |
417
+ * | `GROUP_OWNER` | |
418
+ * | `GROUP_READ_ONLY` | |
419
+ */
288
420
  roles?: pulumi.Input<pulumi.Input<string>[]>;
421
+ /**
422
+ * PagerDuty service key. Required for the PAGER_DUTY notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
423
+ */
289
424
  serviceKey?: pulumi.Input<string>;
425
+ /**
426
+ * Flag indicating if text message notifications should be sent to this user's mobile phone. This flag is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
427
+ */
290
428
  smsEnabled?: pulumi.Input<boolean>;
429
+ /**
430
+ * Unique identifier of a team.
431
+ */
291
432
  teamId?: pulumi.Input<string>;
433
+ /**
434
+ * Label for the team that receives this notification.
435
+ */
292
436
  teamName?: pulumi.Input<string>;
437
+ /**
438
+ * Type of alert notification.
439
+ * Accepted values are:
440
+ * - `DATADOG`
441
+ * - `EMAIL`
442
+ * - `GROUP` (Project)
443
+ * - `OPS_GENIE`
444
+ * - `ORG`
445
+ * - `PAGER_DUTY`
446
+ * - `SLACK`
447
+ * - `SMS`
448
+ * - `TEAM`
449
+ * - `USER`
450
+ * - `VICTOR_OPS`
451
+ * - `WEBHOOK`
452
+ * - `MICROSOFT_TEAMS`
453
+ */
293
454
  typeName: pulumi.Input<string>;
455
+ /**
456
+ * Name of the Atlas user to which to send notifications. Only a user in the project that owns the alert configuration is allowed here. Required for the `USER` notifications type.
457
+ */
294
458
  username?: pulumi.Input<string>;
459
+ /**
460
+ * VictorOps API key. Required for the `VICTOR_OPS` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
461
+ */
295
462
  victorOpsApiKey?: pulumi.Input<string>;
463
+ /**
464
+ * VictorOps routing key. Optional for the `VICTOR_OPS` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
465
+ */
296
466
  victorOpsRoutingKey?: pulumi.Input<string>;
467
+ /**
468
+ * Optional authentication secret for the `WEBHOOK` notifications type.
469
+ */
297
470
  webhookSecret?: pulumi.Input<string>;
471
+ /**
472
+ * Target URL for the `WEBHOOK` notifications type.
473
+ */
298
474
  webhookUrl?: pulumi.Input<string>;
299
475
  }
300
476
  export interface AlertConfigurationThresholdConfig {
@@ -435,10 +611,25 @@ export interface BackupCompliancePolicyPolicyItemYearly {
435
611
  retentionValue: pulumi.Input<number>;
436
612
  }
437
613
  export interface CloudBackupScheduleCopySetting {
614
+ /**
615
+ * Human-readable label that identifies the cloud provider that stores the snapshot copy. i.e. "AWS" "AZURE" "GCP"
616
+ */
438
617
  cloudProvider?: pulumi.Input<string>;
618
+ /**
619
+ * List that describes which types of snapshots to copy. i.e. "HOURLY" "DAILY" "WEEKLY" "MONTHLY" "ON_DEMAND"
620
+ */
439
621
  frequencies?: pulumi.Input<pulumi.Input<string>[]>;
622
+ /**
623
+ * Target region to copy snapshots belonging to replicationSpecId to. Please supply the 'Atlas Region' which can be found under https://www.mongodb.com/docs/atlas/reference/cloud-providers/ 'regions' link
624
+ */
440
625
  regionName?: pulumi.Input<string>;
626
+ /**
627
+ * Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Replication Spec Id, consult the replicationSpecs array returned from [Return One Multi-Cloud Cluster in One Project](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getCluster).
628
+ */
441
629
  replicationSpecId?: pulumi.Input<string>;
630
+ /**
631
+ * Flag that indicates whether to copy the oplogs to the target region. You can use the oplogs to perform point-in-time restores.
632
+ */
442
633
  shouldCopyOplogs?: pulumi.Input<boolean>;
443
634
  }
444
635
  export interface CloudBackupScheduleExport {
@@ -635,20 +826,73 @@ export interface CloudProviderAccessSetupAzureConfig {
635
826
  tenantId: pulumi.Input<string>;
636
827
  }
637
828
  export interface ClusterAdvancedConfiguration {
829
+ /**
830
+ * [Default level of acknowledgment requested from MongoDB for read operations](https://docs.mongodb.com/manual/reference/read-concern/) set for this cluster. MongoDB 4.4 clusters default to [available](https://docs.mongodb.com/manual/reference/read-concern-available/).
831
+ */
638
832
  defaultReadConcern?: pulumi.Input<string>;
833
+ /**
834
+ * [Default level of acknowledgment requested from MongoDB for write operations](https://docs.mongodb.com/manual/reference/write-concern/) set for this cluster. MongoDB 4.4 clusters default to [1](https://docs.mongodb.com/manual/reference/write-concern/).
835
+ */
639
836
  defaultWriteConcern?: pulumi.Input<string>;
837
+ /**
838
+ * When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
839
+ */
640
840
  failIndexKeyTooLong?: pulumi.Input<boolean>;
841
+ /**
842
+ * When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
843
+ */
641
844
  javascriptEnabled?: pulumi.Input<boolean>;
845
+ /**
846
+ * Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:
847
+ *
848
+ * - TLS1_0
849
+ * - TLS1_1
850
+ * - TLS1_2
851
+ */
642
852
  minimumEnabledTlsProtocol?: pulumi.Input<string>;
853
+ /**
854
+ * When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
855
+ */
643
856
  noTableScan?: pulumi.Input<boolean>;
857
+ /**
858
+ * Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
859
+ * * **Note** A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see [`oplogMinRetentionHours`](https://www.mongodb.com/docs/manual/core/replica-set-oplog/#std-label-replica-set-minimum-oplog-size)
860
+ */
644
861
  oplogMinRetentionHours?: pulumi.Input<number>;
862
+ /**
863
+ * The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
864
+ */
645
865
  oplogSizeMb?: pulumi.Input<number>;
866
+ /**
867
+ * Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
868
+ */
646
869
  sampleRefreshIntervalBiConnector?: pulumi.Input<number>;
870
+ /**
871
+ * Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
872
+ */
647
873
  sampleSizeBiConnector?: pulumi.Input<number>;
874
+ /**
875
+ * Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
876
+ */
648
877
  transactionLifetimeLimitSeconds?: pulumi.Input<number>;
649
878
  }
650
879
  export interface ClusterBiConnectorConfig {
880
+ /**
881
+ * Specifies whether or not BI Connector for Atlas is enabled on the cluster.l
882
+ * *
883
+ * - Set to `true` to enable BI Connector for Atlas.
884
+ * - Set to `false` to disable BI Connector for Atlas.
885
+ */
651
886
  enabled?: pulumi.Input<boolean>;
887
+ /**
888
+ * Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of [readPreference](https://docs.mongodb.com/manual/core/read-preference/) and [readPreferenceTags](https://docs.mongodb.com/manual/core/read-preference/#tag-sets) options. For details on BI Connector for Atlas read preferences, refer to the [BI Connector Read Preferences Table](https://docs.atlas.mongodb.com/tutorial/create-global-writes-cluster/#bic-read-preferences).
889
+ *
890
+ * - Set to "primary" to have BI Connector for Atlas read from the primary.
891
+ *
892
+ * - Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.
893
+ *
894
+ * - Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.
895
+ */
652
896
  readPreference?: pulumi.Input<string>;
653
897
  }
654
898
  export interface ClusterConnectionString {
@@ -734,19 +978,52 @@ export interface ClusterOutageSimulationOutageFilter {
734
978
  type?: pulumi.Input<string>;
735
979
  }
736
980
  export interface ClusterReplicationSpec {
981
+ /**
982
+ * Unique identifer of the replication document for a zone in a Global Cluster.
983
+ */
737
984
  id?: pulumi.Input<string>;
738
985
  /**
739
986
  * Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
740
987
  */
741
988
  numShards: pulumi.Input<number>;
989
+ /**
990
+ * Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
991
+ */
742
992
  regionsConfigs?: pulumi.Input<pulumi.Input<inputs.ClusterReplicationSpecRegionsConfig>[]>;
993
+ /**
994
+ * Name for the zone in a Global Cluster.
995
+ *
996
+ *
997
+ * **Region Config**
998
+ */
743
999
  zoneName?: pulumi.Input<string>;
744
1000
  }
745
1001
  export interface ClusterReplicationSpecRegionsConfig {
1002
+ /**
1003
+ * The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
1004
+ */
746
1005
  analyticsNodes?: pulumi.Input<number>;
1006
+ /**
1007
+ * Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.
1008
+ * * The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
1009
+ * * Specify 0 if you do not want any electable nodes in the region.
1010
+ * * You cannot create electable nodes in a region if `priority` is 0.
1011
+ */
747
1012
  electableNodes?: pulumi.Input<number>;
1013
+ /**
1014
+ * Election priority of the region. For regions with only read-only nodes, set this value to 0.
1015
+ * * For regions where `electableNodes` is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
1016
+ * * The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
1017
+ * * Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
1018
+ */
748
1019
  priority?: pulumi.Input<number>;
1020
+ /**
1021
+ * Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
1022
+ */
749
1023
  readOnlyNodes?: pulumi.Input<number>;
1024
+ /**
1025
+ * Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the **Atlas region name**, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
1026
+ */
750
1027
  regionName: pulumi.Input<string>;
751
1028
  }
752
1029
  export interface ClusterSnapshotBackupPolicy {
@@ -763,12 +1040,18 @@ export interface ClusterSnapshotBackupPolicy {
763
1040
  updateSnapshots?: pulumi.Input<boolean>;
764
1041
  }
765
1042
  export interface ClusterSnapshotBackupPolicyPolicy {
1043
+ /**
1044
+ * Unique identifer of the replication document for a zone in a Global Cluster.
1045
+ */
766
1046
  id?: pulumi.Input<string>;
767
1047
  policyItems?: pulumi.Input<pulumi.Input<inputs.ClusterSnapshotBackupPolicyPolicyPolicyItem>[]>;
768
1048
  }
769
1049
  export interface ClusterSnapshotBackupPolicyPolicyPolicyItem {
770
1050
  frequencyInterval?: pulumi.Input<number>;
771
1051
  frequencyType?: pulumi.Input<string>;
1052
+ /**
1053
+ * Unique identifer of the replication document for a zone in a Global Cluster.
1054
+ */
772
1055
  id?: pulumi.Input<string>;
773
1056
  retentionUnit?: pulumi.Input<string>;
774
1057
  retentionValue?: pulumi.Input<number>;
@@ -811,6 +1094,11 @@ export interface CustomDbRoleAction {
811
1094
  export interface CustomDbRoleActionResource {
812
1095
  cluster?: pulumi.Input<boolean>;
813
1096
  collectionName?: pulumi.Input<string>;
1097
+ /**
1098
+ * Database on which the inherited role is granted.
1099
+ *
1100
+ * > **NOTE** This value should be admin for all roles except read and readWrite.
1101
+ */
814
1102
  databaseName?: pulumi.Input<string>;
815
1103
  }
816
1104
  export interface CustomDbRoleInheritedRole {
@@ -1359,14 +1647,35 @@ export interface GetServerlessInstanceLinkArgs {
1359
1647
  rel?: pulumi.Input<string>;
1360
1648
  }
1361
1649
  export interface GlobalClusterConfigCustomZoneMapping {
1650
+ /**
1651
+ * The ISO location code to which you want to map a zone in your Global Cluster. You can find a list of all supported location codes [here](https://cloud.mongodb.com/static/atlas/country_iso_codes.txt).
1652
+ */
1362
1653
  location?: pulumi.Input<string>;
1654
+ /**
1655
+ * The name of the zone in your Global Cluster that you want to map to location.
1656
+ */
1363
1657
  zone?: pulumi.Input<string>;
1364
1658
  }
1365
1659
  export interface GlobalClusterConfigManagedNamespace {
1660
+ /**
1661
+ * The name of the collection associated with the managed namespace.
1662
+ */
1366
1663
  collection: pulumi.Input<string>;
1664
+ /**
1665
+ * The custom shard key for the collection. Global Clusters require a compound shard key consisting of a location field and a user-selected second key, the custom shard key.
1666
+ */
1367
1667
  customShardKey: pulumi.Input<string>;
1668
+ /**
1669
+ * The name of the database containing the collection.
1670
+ */
1368
1671
  db: pulumi.Input<string>;
1672
+ /**
1673
+ * Specifies whether the custom shard key for the collection is [hashed](https://docs.mongodb.com/manual/reference/method/sh.shardCollection/#hashed-shard-keys). If omitted, defaults to `false`. If `false`, Atlas uses [ranged sharding](https://docs.mongodb.com/manual/core/ranged-sharding/). This is only available for Atlas clusters with MongoDB v4.4 and later.
1674
+ */
1369
1675
  isCustomShardKeyHashed?: pulumi.Input<boolean>;
1676
+ /**
1677
+ * Specifies whether the underlying index enforces a unique constraint. If omitted, defaults to false. You cannot specify true when using [hashed shard keys](https://docs.mongodb.com/manual/core/hashed-sharding/#std-label-sharding-hashed).
1678
+ */
1370
1679
  isShardKeyUnique?: pulumi.Input<boolean>;
1371
1680
  }
1372
1681
  export interface LdapConfigurationUserToDnMapping {
@@ -1430,8 +1739,17 @@ export interface OnlineArchiveDataProcessRegion {
1430
1739
  region?: pulumi.Input<string>;
1431
1740
  }
1432
1741
  export interface OnlineArchivePartitionField {
1742
+ /**
1743
+ * Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
1744
+ */
1433
1745
  fieldName: pulumi.Input<string>;
1746
+ /**
1747
+ * Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: `date`, `int`, `long`, `objectId`, `string`, `uuid`.
1748
+ */
1434
1749
  fieldType?: pulumi.Input<string>;
1750
+ /**
1751
+ * Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the `criteria.dateField` parameter defaults as the first item in the partition sequence.
1752
+ */
1435
1753
  order: pulumi.Input<number>;
1436
1754
  }
1437
1755
  export interface OnlineArchiveSchedule {
@@ -1663,6 +1981,9 @@ export interface StreamConnectionAuthentication {
1663
1981
  username?: pulumi.Input<string>;
1664
1982
  }
1665
1983
  export interface StreamConnectionDbRoleToExecute {
1984
+ /**
1985
+ * The name of the role to use. Can be a built in role or a custom role.
1986
+ */
1666
1987
  role: pulumi.Input<string>;
1667
1988
  /**
1668
1989
  * Type of connection. Can be either `Cluster`, `Kafka` or `Sample`.
package/types/output.d.ts CHANGED
@@ -1,15 +1,53 @@
1
1
  import * as outputs from "../types/output";
2
2
  export interface AdvancedClusterAdvancedConfiguration {
3
+ /**
4
+ * [Default level of acknowledgment requested from MongoDB for read operations](https://docs.mongodb.com/manual/reference/read-concern/) set for this cluster. MongoDB 4.4 clusters default to [available](https://docs.mongodb.com/manual/reference/read-concern-available/).
5
+ */
3
6
  defaultReadConcern: string;
7
+ /**
8
+ * [Default level of acknowledgment requested from MongoDB for write operations](https://docs.mongodb.com/manual/reference/write-concern/) set for this cluster. MongoDB 4.4 clusters default to [1](https://docs.mongodb.com/manual/reference/write-concern/).
9
+ */
4
10
  defaultWriteConcern: string;
11
+ /**
12
+ * When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
13
+ */
5
14
  failIndexKeyTooLong: boolean;
15
+ /**
16
+ * When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
17
+ */
6
18
  javascriptEnabled: boolean;
19
+ /**
20
+ * Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:
21
+ *
22
+ * - TLS1_0
23
+ * - TLS1_1
24
+ * - TLS1_2
25
+ */
7
26
  minimumEnabledTlsProtocol: string;
27
+ /**
28
+ * When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
29
+ */
8
30
  noTableScan: boolean;
31
+ /**
32
+ * Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
33
+ * * **Note** A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see [`oplogMinRetentionHours`](https://www.mongodb.com/docs/manual/core/replica-set-oplog/#std-label-replica-set-minimum-oplog-size)
34
+ */
9
35
  oplogMinRetentionHours?: number;
36
+ /**
37
+ * The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
38
+ */
10
39
  oplogSizeMb: number;
40
+ /**
41
+ * Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
42
+ */
11
43
  sampleRefreshIntervalBiConnector: number;
44
+ /**
45
+ * Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
46
+ */
12
47
  sampleSizeBiConnector: number;
48
+ /**
49
+ * Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
50
+ */
13
51
  transactionLifetimeLimitSeconds: number;
14
52
  }
15
53
  export interface AdvancedClusterBiConnectorConfig {
@@ -70,6 +108,15 @@ export interface AdvancedClusterConnectionStringPrivateEndpoint {
70
108
  }
71
109
  export interface AdvancedClusterConnectionStringPrivateEndpointEndpoint {
72
110
  endpointId: string;
111
+ /**
112
+ * Cloud service provider on which the servers are provisioned.
113
+ * The possible values are:
114
+ *
115
+ * - `AWS` - Amazon AWS
116
+ * - `GCP` - Google Cloud Platform
117
+ * - `AZURE` - Microsoft Azure
118
+ * - `TENANT` - M2 or M5 multi-tenant cluster. Use `replication_specs.#.region_configs.#.backing_provider_name` to set the cloud service provider.
119
+ */
73
120
  providerName: string;
74
121
  region: string;
75
122
  }
@@ -258,42 +305,171 @@ export interface AdvancedClusterTag {
258
305
  value: string;
259
306
  }
260
307
  export interface AlertConfigurationMatcher {
308
+ /**
309
+ * Name of the field in the target object to match on.
310
+ *
311
+ * | Host alerts | Replica set alerts | Sharded cluster alerts |
312
+ * |:---------- |:------------- |:------ |
313
+ * | `TYPE_NAME` | `REPLICA_SET_NAME` | `CLUSTER_NAME` |
314
+ * | `HOSTNAME` | `SHARD_NAME` | `SHARD_NAME` |
315
+ * | `PORT` | `CLUSTER_NAME` | |
316
+ * | `HOSTNAME_AND_PORT` | | |
317
+ * | `REPLICA_SET_NAME` | | |
318
+ *
319
+ *
320
+ *
321
+ * All other types of alerts do not support matchers.
322
+ */
261
323
  fieldName: string;
262
324
  operator: string;
325
+ /**
326
+ * Value to test with the specified operator. If `fieldName` is set to TYPE_NAME, you can match on the following values:
327
+ * - `PRIMARY`
328
+ * - `SECONDARY`
329
+ * - `STANDALONE`
330
+ * - `CONFIG`
331
+ * - `MONGOS`
332
+ */
263
333
  value: string;
264
334
  }
265
335
  export interface AlertConfigurationMetricThresholdConfig {
336
+ /**
337
+ * Name of the metric to check. The full list being quite large, please refer to atlas docs [here for general metrics](https://docs.atlas.mongodb.com/reference/alert-host-metrics/#measurement-types) and [here for serverless metrics](https://www.mongodb.com/docs/atlas/reference/api/alert-configurations-create-config/#serverless-measurements)
338
+ */
266
339
  metricName: string;
340
+ /**
341
+ * This must be set to AVERAGE. Atlas computes the current metric value as an average.
342
+ */
267
343
  mode?: string;
268
344
  operator?: string;
269
345
  threshold: number;
270
346
  units?: string;
271
347
  }
272
348
  export interface AlertConfigurationNotification {
349
+ /**
350
+ * Slack API token. Required for the SLACK notifications type. If the token later becomes invalid, Atlas sends an email to the project owner and eventually removes the token.
351
+ */
273
352
  apiToken?: string;
353
+ /**
354
+ * Slack channel name. Required for the SLACK notifications type.
355
+ */
274
356
  channelName?: string;
357
+ /**
358
+ * Datadog API Key. Found in the Datadog dashboard. Required for the DATADOG notifications type.
359
+ */
275
360
  datadogApiKey?: string;
361
+ /**
362
+ * Region that indicates which API URL to use. See the `datadogRegion` field in the `notifications` request parameter of [MongoDB API Alert Configuration documentation](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/createAlertConfiguration) for more details. The default Datadog region is US.
363
+ */
276
364
  datadogRegion?: string;
365
+ /**
366
+ * Number of minutes to wait after an alert condition is detected before sending out the first notification.
367
+ */
277
368
  delayMin: number;
369
+ /**
370
+ * Email address to which alert notifications are sent. Required for the EMAIL notifications type.
371
+ */
278
372
  emailAddress?: string;
373
+ /**
374
+ * Flag indicating email notifications should be sent. This flag is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
375
+ */
279
376
  emailEnabled: boolean;
377
+ /**
378
+ * The ID of the associated integration, the credentials of which to use for requests.
379
+ */
280
380
  integrationId?: string;
381
+ /**
382
+ * Number of minutes to wait between successive notifications for unacknowledged alerts that are not resolved. The minimum value is 5. **NOTE** `PAGER_DUTY`, `VICTOR_OPS`, and `OPS_GENIE` notifications do not return this value. The notification interval must be configured and managed within each external service.
383
+ */
281
384
  intervalMin: number;
385
+ /**
386
+ * Microsoft Teams Webhook Uniform Resource Locator (URL) that MongoDB Cloud needs to send this notification via Microsoft Teams. Required if `typeName` is `MICROSOFT_TEAMS`. If the URL later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
387
+ */
282
388
  microsoftTeamsWebhookUrl?: string;
389
+ /**
390
+ * Mobile number to which alert notifications are sent. Required for the SMS notifications type.
391
+ */
283
392
  mobileNumber?: string;
393
+ /**
394
+ * The notifier ID is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.
395
+ */
284
396
  notifierId: string;
397
+ /**
398
+ * Opsgenie API Key. Required for the `OPS_GENIE` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the token.
399
+ */
285
400
  opsGenieApiKey?: string;
401
+ /**
402
+ * Region that indicates which API URL to use. Accepted regions are: `US` ,`EU`. The default Opsgenie region is US.
403
+ */
286
404
  opsGenieRegion?: string;
405
+ /**
406
+ * Optional. One or more roles that receive the configured alert. If you include this field, Atlas sends alerts only to users assigned the roles you specify in the array. If you omit this field, Atlas sends alerts to users assigned any role. This parameter is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
407
+ * Accepted values are:
408
+ *
409
+ * | Project roles | Organization roles |
410
+ * |:---------- |:----------- |
411
+ * | `GROUP_CHARTS_ADMIN` | `ORG_OWNER` |
412
+ * | `GROUP_CLUSTER_MANAGER` | `ORG_MEMBER` |
413
+ * | `GROUP_DATA_ACCESS_ADMIN` | `ORG_GROUP_CREATOR` |
414
+ * | `GROUP_DATA_ACCESS_READ_ONLY` | `ORG_BILLING_ADMIN` |
415
+ * | `GROUP_DATA_ACCESS_READ_WRITE` | `ORG_READ_ONLY` |
416
+ * | `GROUP_OWNER` | |
417
+ * | `GROUP_READ_ONLY` | |
418
+ */
287
419
  roles?: string[];
420
+ /**
421
+ * PagerDuty service key. Required for the PAGER_DUTY notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
422
+ */
288
423
  serviceKey?: string;
424
+ /**
425
+ * Flag indicating if text message notifications should be sent to this user's mobile phone. This flag is only valid if `typeName` is set to `ORG`, `GROUP`, or `USER`.
426
+ */
289
427
  smsEnabled: boolean;
428
+ /**
429
+ * Unique identifier of a team.
430
+ */
290
431
  teamId?: string;
432
+ /**
433
+ * Label for the team that receives this notification.
434
+ */
291
435
  teamName: string;
436
+ /**
437
+ * Type of alert notification.
438
+ * Accepted values are:
439
+ * - `DATADOG`
440
+ * - `EMAIL`
441
+ * - `GROUP` (Project)
442
+ * - `OPS_GENIE`
443
+ * - `ORG`
444
+ * - `PAGER_DUTY`
445
+ * - `SLACK`
446
+ * - `SMS`
447
+ * - `TEAM`
448
+ * - `USER`
449
+ * - `VICTOR_OPS`
450
+ * - `WEBHOOK`
451
+ * - `MICROSOFT_TEAMS`
452
+ */
292
453
  typeName: string;
454
+ /**
455
+ * Name of the Atlas user to which to send notifications. Only a user in the project that owns the alert configuration is allowed here. Required for the `USER` notifications type.
456
+ */
293
457
  username?: string;
458
+ /**
459
+ * VictorOps API key. Required for the `VICTOR_OPS` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
460
+ */
294
461
  victorOpsApiKey?: string;
462
+ /**
463
+ * VictorOps routing key. Optional for the `VICTOR_OPS` notifications type. If the key later becomes invalid, Atlas sends an email to the project owner and eventually removes the key.
464
+ */
295
465
  victorOpsRoutingKey?: string;
466
+ /**
467
+ * Optional authentication secret for the `WEBHOOK` notifications type.
468
+ */
296
469
  webhookSecret?: string;
470
+ /**
471
+ * Target URL for the `WEBHOOK` notifications type.
472
+ */
297
473
  webhookUrl?: string;
298
474
  }
299
475
  export interface AlertConfigurationThresholdConfig {
@@ -434,10 +610,25 @@ export interface BackupCompliancePolicyPolicyItemYearly {
434
610
  retentionValue: number;
435
611
  }
436
612
  export interface CloudBackupScheduleCopySetting {
613
+ /**
614
+ * Human-readable label that identifies the cloud provider that stores the snapshot copy. i.e. "AWS" "AZURE" "GCP"
615
+ */
437
616
  cloudProvider: string;
617
+ /**
618
+ * List that describes which types of snapshots to copy. i.e. "HOURLY" "DAILY" "WEEKLY" "MONTHLY" "ON_DEMAND"
619
+ */
438
620
  frequencies: string[];
621
+ /**
622
+ * Target region to copy snapshots belonging to replicationSpecId to. Please supply the 'Atlas Region' which can be found under https://www.mongodb.com/docs/atlas/reference/cloud-providers/ 'regions' link
623
+ */
439
624
  regionName: string;
625
+ /**
626
+ * Unique 24-hexadecimal digit string that identifies the replication object for a zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Replication Spec Id, consult the replicationSpecs array returned from [Return One Multi-Cloud Cluster in One Project](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getCluster).
627
+ */
440
628
  replicationSpecId: string;
629
+ /**
630
+ * Flag that indicates whether to copy the oplogs to the target region. You can use the oplogs to perform point-in-time restores.
631
+ */
441
632
  shouldCopyOplogs: boolean;
442
633
  }
443
634
  export interface CloudBackupScheduleExport {
@@ -634,20 +825,73 @@ export interface CloudProviderAccessSetupAzureConfig {
634
825
  tenantId: string;
635
826
  }
636
827
  export interface ClusterAdvancedConfiguration {
828
+ /**
829
+ * [Default level of acknowledgment requested from MongoDB for read operations](https://docs.mongodb.com/manual/reference/read-concern/) set for this cluster. MongoDB 4.4 clusters default to [available](https://docs.mongodb.com/manual/reference/read-concern-available/).
830
+ */
637
831
  defaultReadConcern: string;
832
+ /**
833
+ * [Default level of acknowledgment requested from MongoDB for write operations](https://docs.mongodb.com/manual/reference/write-concern/) set for this cluster. MongoDB 4.4 clusters default to [1](https://docs.mongodb.com/manual/reference/write-concern/).
834
+ */
638
835
  defaultWriteConcern: string;
836
+ /**
837
+ * When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
838
+ */
639
839
  failIndexKeyTooLong: boolean;
840
+ /**
841
+ * When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
842
+ */
640
843
  javascriptEnabled: boolean;
844
+ /**
845
+ * Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:
846
+ *
847
+ * - TLS1_0
848
+ * - TLS1_1
849
+ * - TLS1_2
850
+ */
641
851
  minimumEnabledTlsProtocol: string;
852
+ /**
853
+ * When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
854
+ */
642
855
  noTableScan: boolean;
856
+ /**
857
+ * Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
858
+ * * **Note** A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see [`oplogMinRetentionHours`](https://www.mongodb.com/docs/manual/core/replica-set-oplog/#std-label-replica-set-minimum-oplog-size)
859
+ */
643
860
  oplogMinRetentionHours?: number;
861
+ /**
862
+ * The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
863
+ */
644
864
  oplogSizeMb: number;
865
+ /**
866
+ * Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
867
+ */
645
868
  sampleRefreshIntervalBiConnector: number;
869
+ /**
870
+ * Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
871
+ */
646
872
  sampleSizeBiConnector: number;
873
+ /**
874
+ * Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
875
+ */
647
876
  transactionLifetimeLimitSeconds: number;
648
877
  }
649
878
  export interface ClusterBiConnectorConfig {
879
+ /**
880
+ * Specifies whether or not BI Connector for Atlas is enabled on the cluster.l
881
+ * *
882
+ * - Set to `true` to enable BI Connector for Atlas.
883
+ * - Set to `false` to disable BI Connector for Atlas.
884
+ */
650
885
  enabled: boolean;
886
+ /**
887
+ * Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of [readPreference](https://docs.mongodb.com/manual/core/read-preference/) and [readPreferenceTags](https://docs.mongodb.com/manual/core/read-preference/#tag-sets) options. For details on BI Connector for Atlas read preferences, refer to the [BI Connector Read Preferences Table](https://docs.atlas.mongodb.com/tutorial/create-global-writes-cluster/#bic-read-preferences).
888
+ *
889
+ * - Set to "primary" to have BI Connector for Atlas read from the primary.
890
+ *
891
+ * - Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.
892
+ *
893
+ * - Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.
894
+ */
651
895
  readPreference: string;
652
896
  }
653
897
  export interface ClusterConnectionString {
@@ -733,19 +977,52 @@ export interface ClusterOutageSimulationOutageFilter {
733
977
  type: string;
734
978
  }
735
979
  export interface ClusterReplicationSpec {
980
+ /**
981
+ * Unique identifer of the replication document for a zone in a Global Cluster.
982
+ */
736
983
  id: string;
737
984
  /**
738
985
  * Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
739
986
  */
740
987
  numShards: number;
988
+ /**
989
+ * Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
990
+ */
741
991
  regionsConfigs: outputs.ClusterReplicationSpecRegionsConfig[];
992
+ /**
993
+ * Name for the zone in a Global Cluster.
994
+ *
995
+ *
996
+ * **Region Config**
997
+ */
742
998
  zoneName?: string;
743
999
  }
744
1000
  export interface ClusterReplicationSpecRegionsConfig {
1001
+ /**
1002
+ * The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
1003
+ */
745
1004
  analyticsNodes?: number;
1005
+ /**
1006
+ * Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.
1007
+ * * The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
1008
+ * * Specify 0 if you do not want any electable nodes in the region.
1009
+ * * You cannot create electable nodes in a region if `priority` is 0.
1010
+ */
746
1011
  electableNodes: number;
1012
+ /**
1013
+ * Election priority of the region. For regions with only read-only nodes, set this value to 0.
1014
+ * * For regions where `electableNodes` is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
1015
+ * * The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
1016
+ * * Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
1017
+ */
747
1018
  priority: number;
1019
+ /**
1020
+ * Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
1021
+ */
748
1022
  readOnlyNodes?: number;
1023
+ /**
1024
+ * Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the **Atlas region name**, see the reference list for [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
1025
+ */
749
1026
  regionName: string;
750
1027
  }
751
1028
  export interface ClusterSnapshotBackupPolicy {
@@ -762,12 +1039,18 @@ export interface ClusterSnapshotBackupPolicy {
762
1039
  updateSnapshots: boolean;
763
1040
  }
764
1041
  export interface ClusterSnapshotBackupPolicyPolicy {
1042
+ /**
1043
+ * Unique identifer of the replication document for a zone in a Global Cluster.
1044
+ */
765
1045
  id: string;
766
1046
  policyItems: outputs.ClusterSnapshotBackupPolicyPolicyPolicyItem[];
767
1047
  }
768
1048
  export interface ClusterSnapshotBackupPolicyPolicyPolicyItem {
769
1049
  frequencyInterval: number;
770
1050
  frequencyType: string;
1051
+ /**
1052
+ * Unique identifer of the replication document for a zone in a Global Cluster.
1053
+ */
771
1054
  id: string;
772
1055
  retentionUnit: string;
773
1056
  retentionValue: number;
@@ -810,6 +1093,11 @@ export interface CustomDbRoleAction {
810
1093
  export interface CustomDbRoleActionResource {
811
1094
  cluster?: boolean;
812
1095
  collectionName?: string;
1096
+ /**
1097
+ * Database on which the inherited role is granted.
1098
+ *
1099
+ * > **NOTE** This value should be admin for all roles except read and readWrite.
1100
+ */
813
1101
  databaseName?: string;
814
1102
  }
815
1103
  export interface CustomDbRoleInheritedRole {
@@ -1180,8 +1468,14 @@ export interface Get509AuthenticationDatabaseUserCertificate {
1180
1468
  }
1181
1469
  export interface GetAccessListApiKeysResult {
1182
1470
  accessCount: number;
1471
+ /**
1472
+ * Range of IP addresses in CIDR notation to be added to the access list.
1473
+ */
1183
1474
  cidrBlock: string;
1184
1475
  created: string;
1476
+ /**
1477
+ * Single IP address to be added to the access list.
1478
+ */
1185
1479
  ipAddress: string;
1186
1480
  lastUsed: string;
1187
1481
  lastUsedAddress: string;
@@ -2272,9 +2566,27 @@ export interface GetAlertConfigurationsResultThresholdConfig {
2272
2566
  units: string;
2273
2567
  }
2274
2568
  export interface GetApiKeysResult {
2569
+ /**
2570
+ * Unique identifier for the API key you want to update. Use the /orgs/{ORG-ID}/apiKeys endpoint to retrieve all API keys to which the authenticated user has access for the specified organization.
2571
+ */
2275
2572
  apiKeyId: string;
2573
+ /**
2574
+ * Description of this Organization API key.
2575
+ */
2276
2576
  description: string;
2277
2577
  publicKey: string;
2578
+ /**
2579
+ * Name of the role. This resource returns all the roles the user has in Atlas.
2580
+ *
2581
+ * The following are valid roles:
2582
+ * * `ORG_OWNER`
2583
+ * * `ORG_GROUP_CREATOR`
2584
+ * * `ORG_BILLING_ADMIN`
2585
+ * * `ORG_READ_ONLY`
2586
+ * * `ORG_MEMBER`
2587
+ *
2588
+ * See [MongoDB Atlas API - Return All Organization API Keys](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/#tag/Programmatic-API-Keys/operation/listApiKeys) - Documentation for more information.
2589
+ */
2278
2590
  roleNames: string[];
2279
2591
  }
2280
2592
  export interface GetAtlasUserLink {
@@ -5030,15 +5342,32 @@ export interface GetOrganizationLink {
5030
5342
  rel: string;
5031
5343
  }
5032
5344
  export interface GetOrganizationsResult {
5345
+ /**
5346
+ * Flag that indicates whether to require API operations to originate from an IP Address added to the API access list for the specified organization.
5347
+ */
5033
5348
  apiAccessListRequired: boolean;
5034
5349
  /**
5035
5350
  * Autogenerated Unique ID for this data source.
5036
5351
  */
5037
5352
  id: string;
5353
+ /**
5354
+ * Flag that indicates whether this organization has been deleted.
5355
+ */
5038
5356
  isDeleted: boolean;
5039
5357
  links: outputs.GetOrganizationsResultLink[];
5358
+ /**
5359
+ * Flag that indicates whether to require users to set up Multi-Factor Authentication (MFA) before accessing the specified organization. To learn more, see: https://www.mongodb.com/docs/atlas/security-multi-factor-authentication/.
5360
+ */
5040
5361
  multiFactorAuthRequired: boolean;
5362
+ /**
5363
+ * Human-readable label that identifies the organization.
5364
+ */
5041
5365
  name: string;
5366
+ /**
5367
+ * Flag that indicates whether to block MongoDB Support from accessing Atlas infrastructure for any deployment in the specified organization without explicit permission. Once this setting is turned on, you can grant MongoDB Support a 24-hour bypass access to the Atlas deployment to resolve support issues. To learn more, see: https://www.mongodb.com/docs/atlas/security-restrict-support-access/.
5368
+ *
5369
+ * See [MongoDB Atlas API - Organizations](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/#tag/Organizations/operation/listOrganizations) Documentation for more information.
5370
+ */
5042
5371
  restrictEmployeeAccess: boolean;
5043
5372
  }
5044
5373
  export interface GetOrganizationsResultLink {
@@ -5199,27 +5528,69 @@ export interface GetProjectTeam {
5199
5528
  teamId: string;
5200
5529
  }
5201
5530
  export interface GetProjectsResult {
5531
+ /**
5532
+ * The number of Atlas clusters deployed in the project.
5533
+ */
5202
5534
  clusterCount: number;
5535
+ /**
5536
+ * The ISO-8601-formatted timestamp of when Atlas created the project.
5537
+ */
5203
5538
  created: string;
5204
5539
  /**
5205
5540
  * Autogenerated Unique ID for this data source.
5206
5541
  */
5207
5542
  id: string;
5543
+ /**
5544
+ * IP addresses in a project categorized by services. See IP Addresses.
5545
+ */
5208
5546
  ipAddresses: outputs.GetProjectsResultIpAddresses;
5547
+ /**
5548
+ * Flag that indicates whether to enable statistics in [cluster metrics](https://www.mongodb.com/docs/atlas/monitor-cluster-metrics/) collection for the project.
5549
+ */
5209
5550
  isCollectDatabaseSpecificsStatisticsEnabled: boolean;
5551
+ /**
5552
+ * Flag that indicates whether to enable Data Explorer for the project. If enabled, you can query your database with an easy to use interface.
5553
+ */
5210
5554
  isDataExplorerEnabled: boolean;
5555
+ /**
5556
+ * Flag that indicates whether to enable extended storage sizes for the specified project.
5557
+ */
5211
5558
  isExtendedStorageSizesEnabled: boolean;
5559
+ /**
5560
+ * Flag that indicates whether to enable Performance Advisor and Profiler for the project. If enabled, you can analyze database logs to recommend performance improvements.
5561
+ */
5212
5562
  isPerformanceAdvisorEnabled: boolean;
5563
+ /**
5564
+ * Flag that indicates whether to enable Real Time Performance Panel for the project. If enabled, you can see real time metrics from your MongoDB database.
5565
+ */
5213
5566
  isRealtimePerformancePanelEnabled: boolean;
5567
+ /**
5568
+ * Flag that indicates whether to enable Schema Advisor for the project. If enabled, you receive customized recommendations to optimize your data model and enhance performance. Disable this setting to disable schema suggestions in the [Performance Advisor](https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-performance-advisor) and the [Data Explorer](https://www.mongodb.com/docs/atlas/atlas-ui/#std-label-atlas-ui).
5569
+ */
5214
5570
  isSchemaAdvisorEnabled: boolean;
5571
+ /**
5572
+ * The limits for the specified project. See Limits.
5573
+ */
5215
5574
  limits: outputs.GetProjectsResultLimit[];
5216
5575
  name: string;
5576
+ /**
5577
+ * The ID of the organization you want to create the project within.
5578
+ */
5217
5579
  orgId: string;
5218
5580
  projectId: string;
5581
+ /**
5582
+ * If GOV_REGIONS_ONLY the project can be used for government regions only, otherwise defaults to standard regions. For more information see [MongoDB Atlas for Government](https://www.mongodb.com/docs/atlas/government/api/#creating-a-project).
5583
+ */
5219
5584
  regionUsageRestrictions: string;
5585
+ /**
5586
+ * Map that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the project. To learn more, see [Resource Tags](https://www.mongodb.com/docs/atlas/tags/)
5587
+ */
5220
5588
  tags: {
5221
5589
  [key: string]: string;
5222
5590
  };
5591
+ /**
5592
+ * Returns all teams to which the authenticated user has access in the project. See Teams.
5593
+ */
5223
5594
  teams: outputs.GetProjectsResultTeam[];
5224
5595
  }
5225
5596
  export interface GetProjectsResultIpAddresses {
@@ -5705,14 +6076,35 @@ export interface GetX509AuthenticationDatabaseUserCertificate {
5705
6076
  subject: string;
5706
6077
  }
5707
6078
  export interface GlobalClusterConfigCustomZoneMapping {
6079
+ /**
6080
+ * The ISO location code to which you want to map a zone in your Global Cluster. You can find a list of all supported location codes [here](https://cloud.mongodb.com/static/atlas/country_iso_codes.txt).
6081
+ */
5708
6082
  location: string;
6083
+ /**
6084
+ * The name of the zone in your Global Cluster that you want to map to location.
6085
+ */
5709
6086
  zone: string;
5710
6087
  }
5711
6088
  export interface GlobalClusterConfigManagedNamespace {
6089
+ /**
6090
+ * The name of the collection associated with the managed namespace.
6091
+ */
5712
6092
  collection: string;
6093
+ /**
6094
+ * The custom shard key for the collection. Global Clusters require a compound shard key consisting of a location field and a user-selected second key, the custom shard key.
6095
+ */
5713
6096
  customShardKey: string;
6097
+ /**
6098
+ * The name of the database containing the collection.
6099
+ */
5714
6100
  db: string;
6101
+ /**
6102
+ * Specifies whether the custom shard key for the collection is [hashed](https://docs.mongodb.com/manual/reference/method/sh.shardCollection/#hashed-shard-keys). If omitted, defaults to `false`. If `false`, Atlas uses [ranged sharding](https://docs.mongodb.com/manual/core/ranged-sharding/). This is only available for Atlas clusters with MongoDB v4.4 and later.
6103
+ */
5715
6104
  isCustomShardKeyHashed: boolean;
6105
+ /**
6106
+ * Specifies whether the underlying index enforces a unique constraint. If omitted, defaults to false. You cannot specify true when using [hashed shard keys](https://docs.mongodb.com/manual/core/hashed-sharding/#std-label-sharding-hashed).
6107
+ */
5716
6108
  isShardKeyUnique: boolean;
5717
6109
  }
5718
6110
  export interface LdapConfigurationUserToDnMapping {
@@ -5776,8 +6168,17 @@ export interface OnlineArchiveDataProcessRegion {
5776
6168
  region: string;
5777
6169
  }
5778
6170
  export interface OnlineArchivePartitionField {
6171
+ /**
6172
+ * Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
6173
+ */
5779
6174
  fieldName: string;
6175
+ /**
6176
+ * Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3. Valid values: `date`, `int`, `long`, `objectId`, `string`, `uuid`.
6177
+ */
5780
6178
  fieldType: string;
6179
+ /**
6180
+ * Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the `criteria.dateField` parameter defaults as the first item in the partition sequence.
6181
+ */
5781
6182
  order: number;
5782
6183
  }
5783
6184
  export interface OnlineArchiveSchedule {
@@ -5969,6 +6370,9 @@ export interface StreamConnectionAuthentication {
5969
6370
  username?: string;
5970
6371
  }
5971
6372
  export interface StreamConnectionDbRoleToExecute {
6373
+ /**
6374
+ * The name of the role to use. Can be a built in role or a custom role.
6375
+ */
5972
6376
  role: string;
5973
6377
  /**
5974
6378
  * Type of connection. Can be either `Cluster`, `Kafka` or `Sample`.