databricks-sdk 0.58.0__py3-none-any.whl → 0.60.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of databricks-sdk might be problematic. Click here for more details.

Files changed (34) hide show
  1. databricks/sdk/__init__.py +18 -10
  2. databricks/sdk/credentials_provider.py +2 -2
  3. databricks/sdk/mixins/files.py +43 -15
  4. databricks/sdk/mixins/open_ai_client.py +28 -7
  5. databricks/sdk/oidc.py +6 -2
  6. databricks/sdk/service/{aibuilder.py → agentbricks.py} +5 -132
  7. databricks/sdk/service/apps.py +52 -46
  8. databricks/sdk/service/billing.py +9 -200
  9. databricks/sdk/service/catalog.py +5501 -7697
  10. databricks/sdk/service/cleanrooms.py +24 -54
  11. databricks/sdk/service/compute.py +456 -2515
  12. databricks/sdk/service/dashboards.py +1 -177
  13. databricks/sdk/service/database.py +34 -53
  14. databricks/sdk/service/files.py +2 -218
  15. databricks/sdk/service/iam.py +16 -295
  16. databricks/sdk/service/jobs.py +108 -1171
  17. databricks/sdk/service/marketplace.py +0 -573
  18. databricks/sdk/service/ml.py +76 -2445
  19. databricks/sdk/service/oauth2.py +122 -237
  20. databricks/sdk/service/pipelines.py +180 -752
  21. databricks/sdk/service/provisioning.py +0 -603
  22. databricks/sdk/service/serving.py +5 -577
  23. databricks/sdk/service/settings.py +192 -1560
  24. databricks/sdk/service/sharing.py +5 -470
  25. databricks/sdk/service/sql.py +117 -1704
  26. databricks/sdk/service/vectorsearch.py +0 -391
  27. databricks/sdk/service/workspace.py +250 -721
  28. databricks/sdk/version.py +1 -1
  29. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/METADATA +1 -1
  30. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/RECORD +34 -34
  31. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/WHEEL +0 -0
  32. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/licenses/LICENSE +0 -0
  33. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/licenses/NOTICE +0 -0
  34. {databricks_sdk-0.58.0.dist-info → databricks_sdk-0.60.0.dist-info}/top_level.txt +0 -0
@@ -667,6 +667,7 @@ class ComplianceStandard(Enum):
667
667
  FEDRAMP_HIGH = "FEDRAMP_HIGH"
668
668
  FEDRAMP_IL5 = "FEDRAMP_IL5"
669
669
  FEDRAMP_MODERATE = "FEDRAMP_MODERATE"
670
+ GERMANY_C5 = "GERMANY_C5"
670
671
  HIPAA = "HIPAA"
671
672
  HITRUST = "HITRUST"
672
673
  IRAP_PROTECTED = "IRAP_PROTECTED"
@@ -731,49 +732,6 @@ class Config:
731
732
  )
732
733
 
733
734
 
734
- @dataclass
735
- class CreateIpAccessList:
736
- """Details required to configure a block list or allow list."""
737
-
738
- label: str
739
- """Label for the IP access list. This **cannot** be empty."""
740
-
741
- list_type: ListType
742
-
743
- ip_addresses: Optional[List[str]] = None
744
-
745
- def as_dict(self) -> dict:
746
- """Serializes the CreateIpAccessList into a dictionary suitable for use as a JSON request body."""
747
- body = {}
748
- if self.ip_addresses:
749
- body["ip_addresses"] = [v for v in self.ip_addresses]
750
- if self.label is not None:
751
- body["label"] = self.label
752
- if self.list_type is not None:
753
- body["list_type"] = self.list_type.value
754
- return body
755
-
756
- def as_shallow_dict(self) -> dict:
757
- """Serializes the CreateIpAccessList into a shallow dictionary of its immediate attributes."""
758
- body = {}
759
- if self.ip_addresses:
760
- body["ip_addresses"] = self.ip_addresses
761
- if self.label is not None:
762
- body["label"] = self.label
763
- if self.list_type is not None:
764
- body["list_type"] = self.list_type
765
- return body
766
-
767
- @classmethod
768
- def from_dict(cls, d: Dict[str, Any]) -> CreateIpAccessList:
769
- """Deserializes the CreateIpAccessList from a dictionary."""
770
- return cls(
771
- ip_addresses=d.get("ip_addresses", None),
772
- label=d.get("label", None),
773
- list_type=_enum(d, "list_type", ListType),
774
- )
775
-
776
-
777
735
  @dataclass
778
736
  class CreateIpAccessListResponse:
779
737
  """An IP access list was successfully created."""
@@ -837,83 +795,6 @@ class CreateNetworkConnectivityConfiguration:
837
795
  return cls(name=d.get("name", None), region=d.get("region", None))
838
796
 
839
797
 
840
- @dataclass
841
- class CreateNotificationDestinationRequest:
842
- config: Optional[Config] = None
843
- """The configuration for the notification destination. Must wrap EXACTLY one of the nested configs."""
844
-
845
- display_name: Optional[str] = None
846
- """The display name for the notification destination."""
847
-
848
- def as_dict(self) -> dict:
849
- """Serializes the CreateNotificationDestinationRequest into a dictionary suitable for use as a JSON request body."""
850
- body = {}
851
- if self.config:
852
- body["config"] = self.config.as_dict()
853
- if self.display_name is not None:
854
- body["display_name"] = self.display_name
855
- return body
856
-
857
- def as_shallow_dict(self) -> dict:
858
- """Serializes the CreateNotificationDestinationRequest into a shallow dictionary of its immediate attributes."""
859
- body = {}
860
- if self.config:
861
- body["config"] = self.config
862
- if self.display_name is not None:
863
- body["display_name"] = self.display_name
864
- return body
865
-
866
- @classmethod
867
- def from_dict(cls, d: Dict[str, Any]) -> CreateNotificationDestinationRequest:
868
- """Deserializes the CreateNotificationDestinationRequest from a dictionary."""
869
- return cls(config=_from_dict(d, "config", Config), display_name=d.get("display_name", None))
870
-
871
-
872
- @dataclass
873
- class CreateOboTokenRequest:
874
- """Configuration details for creating on-behalf tokens."""
875
-
876
- application_id: str
877
- """Application ID of the service principal."""
878
-
879
- comment: Optional[str] = None
880
- """Comment that describes the purpose of the token."""
881
-
882
- lifetime_seconds: Optional[int] = None
883
- """The number of seconds before the token expires."""
884
-
885
- def as_dict(self) -> dict:
886
- """Serializes the CreateOboTokenRequest into a dictionary suitable for use as a JSON request body."""
887
- body = {}
888
- if self.application_id is not None:
889
- body["application_id"] = self.application_id
890
- if self.comment is not None:
891
- body["comment"] = self.comment
892
- if self.lifetime_seconds is not None:
893
- body["lifetime_seconds"] = self.lifetime_seconds
894
- return body
895
-
896
- def as_shallow_dict(self) -> dict:
897
- """Serializes the CreateOboTokenRequest into a shallow dictionary of its immediate attributes."""
898
- body = {}
899
- if self.application_id is not None:
900
- body["application_id"] = self.application_id
901
- if self.comment is not None:
902
- body["comment"] = self.comment
903
- if self.lifetime_seconds is not None:
904
- body["lifetime_seconds"] = self.lifetime_seconds
905
- return body
906
-
907
- @classmethod
908
- def from_dict(cls, d: Dict[str, Any]) -> CreateOboTokenRequest:
909
- """Deserializes the CreateOboTokenRequest from a dictionary."""
910
- return cls(
911
- application_id=d.get("application_id", None),
912
- comment=d.get("comment", None),
913
- lifetime_seconds=d.get("lifetime_seconds", None),
914
- )
915
-
916
-
917
798
  @dataclass
918
799
  class CreateOboTokenResponse:
919
800
  """An on-behalf token was successfully created for the service principal."""
@@ -1020,40 +901,6 @@ class CreatePrivateEndpointRule:
1020
901
  )
1021
902
 
1022
903
 
1023
- @dataclass
1024
- class CreateTokenRequest:
1025
- comment: Optional[str] = None
1026
- """Optional description to attach to the token."""
1027
-
1028
- lifetime_seconds: Optional[int] = None
1029
- """The lifetime of the token, in seconds.
1030
-
1031
- If the lifetime is not specified, this token remains valid indefinitely."""
1032
-
1033
- def as_dict(self) -> dict:
1034
- """Serializes the CreateTokenRequest into a dictionary suitable for use as a JSON request body."""
1035
- body = {}
1036
- if self.comment is not None:
1037
- body["comment"] = self.comment
1038
- if self.lifetime_seconds is not None:
1039
- body["lifetime_seconds"] = self.lifetime_seconds
1040
- return body
1041
-
1042
- def as_shallow_dict(self) -> dict:
1043
- """Serializes the CreateTokenRequest into a shallow dictionary of its immediate attributes."""
1044
- body = {}
1045
- if self.comment is not None:
1046
- body["comment"] = self.comment
1047
- if self.lifetime_seconds is not None:
1048
- body["lifetime_seconds"] = self.lifetime_seconds
1049
- return body
1050
-
1051
- @classmethod
1052
- def from_dict(cls, d: Dict[str, Any]) -> CreateTokenRequest:
1053
- """Deserializes the CreateTokenRequest from a dictionary."""
1054
- return cls(comment=d.get("comment", None), lifetime_seconds=d.get("lifetime_seconds", None))
1055
-
1056
-
1057
904
  @dataclass
1058
905
  class CreateTokenResponse:
1059
906
  token_info: Optional[PublicTokenInfo] = None
@@ -1445,6 +1292,56 @@ class DefaultNamespaceSetting:
1445
1292
  )
1446
1293
 
1447
1294
 
1295
+ @dataclass
1296
+ class DefaultWarehouseId:
1297
+ string_val: StringMessage
1298
+
1299
+ etag: Optional[str] = None
1300
+ """etag used for versioning. The response is at least as fresh as the eTag provided. This is used
1301
+ for optimistic concurrency control as a way to help prevent simultaneous writes of a setting
1302
+ overwriting each other. It is strongly suggested that systems make use of the etag in the read
1303
+ -> update pattern to perform setting updates in order to avoid race conditions. That is, get an
1304
+ etag from a GET request, and pass it with the PATCH request to identify the setting version you
1305
+ are updating."""
1306
+
1307
+ setting_name: Optional[str] = None
1308
+ """Name of the corresponding setting. This field is populated in the response, but it will not be
1309
+ respected even if it's set in the request body. The setting name in the path parameter will be
1310
+ respected instead. Setting name is required to be 'default' if the setting only has one instance
1311
+ per workspace."""
1312
+
1313
+ def as_dict(self) -> dict:
1314
+ """Serializes the DefaultWarehouseId into a dictionary suitable for use as a JSON request body."""
1315
+ body = {}
1316
+ if self.etag is not None:
1317
+ body["etag"] = self.etag
1318
+ if self.setting_name is not None:
1319
+ body["setting_name"] = self.setting_name
1320
+ if self.string_val:
1321
+ body["string_val"] = self.string_val.as_dict()
1322
+ return body
1323
+
1324
+ def as_shallow_dict(self) -> dict:
1325
+ """Serializes the DefaultWarehouseId into a shallow dictionary of its immediate attributes."""
1326
+ body = {}
1327
+ if self.etag is not None:
1328
+ body["etag"] = self.etag
1329
+ if self.setting_name is not None:
1330
+ body["setting_name"] = self.setting_name
1331
+ if self.string_val:
1332
+ body["string_val"] = self.string_val
1333
+ return body
1334
+
1335
+ @classmethod
1336
+ def from_dict(cls, d: Dict[str, Any]) -> DefaultWarehouseId:
1337
+ """Deserializes the DefaultWarehouseId from a dictionary."""
1338
+ return cls(
1339
+ etag=d.get("etag", None),
1340
+ setting_name=d.get("setting_name", None),
1341
+ string_val=_from_dict(d, "string_val", StringMessage),
1342
+ )
1343
+
1344
+
1448
1345
  @dataclass
1449
1346
  class DeleteAccountIpAccessEnableResponse:
1450
1347
  """The etag is returned."""
@@ -1605,6 +1502,38 @@ class DeleteDefaultNamespaceSettingResponse:
1605
1502
  return cls(etag=d.get("etag", None))
1606
1503
 
1607
1504
 
1505
+ @dataclass
1506
+ class DeleteDefaultWarehouseIdResponse:
1507
+ """The etag is returned."""
1508
+
1509
+ etag: str
1510
+ """etag used for versioning. The response is at least as fresh as the eTag provided. This is used
1511
+ for optimistic concurrency control as a way to help prevent simultaneous writes of a setting
1512
+ overwriting each other. It is strongly suggested that systems make use of the etag in the read
1513
+ -> delete pattern to perform setting deletions in order to avoid race conditions. That is, get
1514
+ an etag from a GET request, and pass it with the DELETE request to identify the rule set version
1515
+ you are deleting."""
1516
+
1517
+ def as_dict(self) -> dict:
1518
+ """Serializes the DeleteDefaultWarehouseIdResponse into a dictionary suitable for use as a JSON request body."""
1519
+ body = {}
1520
+ if self.etag is not None:
1521
+ body["etag"] = self.etag
1522
+ return body
1523
+
1524
+ def as_shallow_dict(self) -> dict:
1525
+ """Serializes the DeleteDefaultWarehouseIdResponse into a shallow dictionary of its immediate attributes."""
1526
+ body = {}
1527
+ if self.etag is not None:
1528
+ body["etag"] = self.etag
1529
+ return body
1530
+
1531
+ @classmethod
1532
+ def from_dict(cls, d: Dict[str, Any]) -> DeleteDefaultWarehouseIdResponse:
1533
+ """Deserializes the DeleteDefaultWarehouseIdResponse from a dictionary."""
1534
+ return cls(etag=d.get("etag", None))
1535
+
1536
+
1608
1537
  @dataclass
1609
1538
  class DeleteDisableLegacyAccessResponse:
1610
1539
  """The etag is returned."""
@@ -2914,51 +2843,6 @@ class ExchangeToken:
2914
2843
  )
2915
2844
 
2916
2845
 
2917
- @dataclass
2918
- class ExchangeTokenRequest:
2919
- """Exchange a token with the IdP"""
2920
-
2921
- partition_id: PartitionId
2922
- """The partition of Credentials store"""
2923
-
2924
- token_type: List[TokenType]
2925
- """A list of token types being requested"""
2926
-
2927
- scopes: List[str]
2928
- """Array of scopes for the token request."""
2929
-
2930
- def as_dict(self) -> dict:
2931
- """Serializes the ExchangeTokenRequest into a dictionary suitable for use as a JSON request body."""
2932
- body = {}
2933
- if self.partition_id:
2934
- body["partitionId"] = self.partition_id.as_dict()
2935
- if self.scopes:
2936
- body["scopes"] = [v for v in self.scopes]
2937
- if self.token_type:
2938
- body["tokenType"] = [v.value for v in self.token_type]
2939
- return body
2940
-
2941
- def as_shallow_dict(self) -> dict:
2942
- """Serializes the ExchangeTokenRequest into a shallow dictionary of its immediate attributes."""
2943
- body = {}
2944
- if self.partition_id:
2945
- body["partitionId"] = self.partition_id
2946
- if self.scopes:
2947
- body["scopes"] = self.scopes
2948
- if self.token_type:
2949
- body["tokenType"] = self.token_type
2950
- return body
2951
-
2952
- @classmethod
2953
- def from_dict(cls, d: Dict[str, Any]) -> ExchangeTokenRequest:
2954
- """Deserializes the ExchangeTokenRequest from a dictionary."""
2955
- return cls(
2956
- partition_id=_from_dict(d, "partitionId", PartitionId),
2957
- scopes=d.get("scopes", None),
2958
- token_type=_repeated_enum(d, "tokenType", TokenType),
2959
- )
2960
-
2961
-
2962
2846
  @dataclass
2963
2847
  class ExchangeTokenResponse:
2964
2848
  """Exhanged tokens were successfully returned."""
@@ -4597,65 +4481,6 @@ class PublicTokenInfo:
4597
4481
  )
4598
4482
 
4599
4483
 
4600
- @dataclass
4601
- class ReplaceIpAccessList:
4602
- """Details required to replace an IP access list."""
4603
-
4604
- label: str
4605
- """Label for the IP access list. This **cannot** be empty."""
4606
-
4607
- list_type: ListType
4608
-
4609
- enabled: bool
4610
- """Specifies whether this IP access list is enabled."""
4611
-
4612
- ip_access_list_id: Optional[str] = None
4613
- """The ID for the corresponding IP access list"""
4614
-
4615
- ip_addresses: Optional[List[str]] = None
4616
-
4617
- def as_dict(self) -> dict:
4618
- """Serializes the ReplaceIpAccessList into a dictionary suitable for use as a JSON request body."""
4619
- body = {}
4620
- if self.enabled is not None:
4621
- body["enabled"] = self.enabled
4622
- if self.ip_access_list_id is not None:
4623
- body["ip_access_list_id"] = self.ip_access_list_id
4624
- if self.ip_addresses:
4625
- body["ip_addresses"] = [v for v in self.ip_addresses]
4626
- if self.label is not None:
4627
- body["label"] = self.label
4628
- if self.list_type is not None:
4629
- body["list_type"] = self.list_type.value
4630
- return body
4631
-
4632
- def as_shallow_dict(self) -> dict:
4633
- """Serializes the ReplaceIpAccessList into a shallow dictionary of its immediate attributes."""
4634
- body = {}
4635
- if self.enabled is not None:
4636
- body["enabled"] = self.enabled
4637
- if self.ip_access_list_id is not None:
4638
- body["ip_access_list_id"] = self.ip_access_list_id
4639
- if self.ip_addresses:
4640
- body["ip_addresses"] = self.ip_addresses
4641
- if self.label is not None:
4642
- body["label"] = self.label
4643
- if self.list_type is not None:
4644
- body["list_type"] = self.list_type
4645
- return body
4646
-
4647
- @classmethod
4648
- def from_dict(cls, d: Dict[str, Any]) -> ReplaceIpAccessList:
4649
- """Deserializes the ReplaceIpAccessList from a dictionary."""
4650
- return cls(
4651
- enabled=d.get("enabled", None),
4652
- ip_access_list_id=d.get("ip_access_list_id", None),
4653
- ip_addresses=d.get("ip_addresses", None),
4654
- label=d.get("label", None),
4655
- list_type=_enum(d, "list_type", ListType),
4656
- )
4657
-
4658
-
4659
4484
  @dataclass
4660
4485
  class ReplaceResponse:
4661
4486
  def as_dict(self) -> dict:
@@ -4754,31 +4579,6 @@ class RestrictWorkspaceAdminsSetting:
4754
4579
  )
4755
4580
 
4756
4581
 
4757
- @dataclass
4758
- class RevokeTokenRequest:
4759
- token_id: str
4760
- """The ID of the token to be revoked."""
4761
-
4762
- def as_dict(self) -> dict:
4763
- """Serializes the RevokeTokenRequest into a dictionary suitable for use as a JSON request body."""
4764
- body = {}
4765
- if self.token_id is not None:
4766
- body["token_id"] = self.token_id
4767
- return body
4768
-
4769
- def as_shallow_dict(self) -> dict:
4770
- """Serializes the RevokeTokenRequest into a shallow dictionary of its immediate attributes."""
4771
- body = {}
4772
- if self.token_id is not None:
4773
- body["token_id"] = self.token_id
4774
- return body
4775
-
4776
- @classmethod
4777
- def from_dict(cls, d: Dict[str, Any]) -> RevokeTokenRequest:
4778
- """Deserializes the RevokeTokenRequest from a dictionary."""
4779
- return cls(token_id=d.get("token_id", None))
4780
-
4781
-
4782
4582
  @dataclass
4783
4583
  class RevokeTokenResponse:
4784
4584
  def as_dict(self) -> dict:
@@ -5240,1180 +5040,16 @@ class TokenPermissionsDescription:
5240
5040
  )
5241
5041
 
5242
5042
 
5243
- @dataclass
5244
- class TokenPermissionsRequest:
5245
- access_control_list: Optional[List[TokenAccessControlRequest]] = None
5246
-
5247
- def as_dict(self) -> dict:
5248
- """Serializes the TokenPermissionsRequest into a dictionary suitable for use as a JSON request body."""
5249
- body = {}
5250
- if self.access_control_list:
5251
- body["access_control_list"] = [v.as_dict() for v in self.access_control_list]
5252
- return body
5253
-
5254
- def as_shallow_dict(self) -> dict:
5255
- """Serializes the TokenPermissionsRequest into a shallow dictionary of its immediate attributes."""
5256
- body = {}
5257
- if self.access_control_list:
5258
- body["access_control_list"] = self.access_control_list
5259
- return body
5260
-
5261
- @classmethod
5262
- def from_dict(cls, d: Dict[str, Any]) -> TokenPermissionsRequest:
5263
- """Deserializes the TokenPermissionsRequest from a dictionary."""
5264
- return cls(access_control_list=_repeated_dict(d, "access_control_list", TokenAccessControlRequest))
5265
-
5266
-
5267
- class TokenType(Enum):
5268
- """The type of token request. As of now, only `AZURE_ACTIVE_DIRECTORY_TOKEN` is supported."""
5269
-
5270
- ARCLIGHT_AZURE_EXCHANGE_TOKEN = "ARCLIGHT_AZURE_EXCHANGE_TOKEN"
5271
- ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY = "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY"
5272
- ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN = "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN"
5273
- ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY = (
5274
- "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY"
5275
- )
5276
- AZURE_ACTIVE_DIRECTORY_TOKEN = "AZURE_ACTIVE_DIRECTORY_TOKEN"
5277
-
5278
-
5279
- @dataclass
5280
- class UpdateAccountIpAccessEnableRequest:
5281
- """Details required to update a setting."""
5282
-
5283
- allow_missing: bool
5284
- """This should always be set to true for Settings API. Added for AIP compliance."""
5285
-
5286
- setting: AccountIpAccessEnable
5287
-
5288
- field_mask: str
5289
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5290
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5291
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5292
- as only the entire collection field can be specified. Field names must exactly match the
5293
- resource field names.
5294
-
5295
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5296
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5297
- API changes in the future."""
5298
-
5299
- def as_dict(self) -> dict:
5300
- """Serializes the UpdateAccountIpAccessEnableRequest into a dictionary suitable for use as a JSON request body."""
5301
- body = {}
5302
- if self.allow_missing is not None:
5303
- body["allow_missing"] = self.allow_missing
5304
- if self.field_mask is not None:
5305
- body["field_mask"] = self.field_mask
5306
- if self.setting:
5307
- body["setting"] = self.setting.as_dict()
5308
- return body
5309
-
5310
- def as_shallow_dict(self) -> dict:
5311
- """Serializes the UpdateAccountIpAccessEnableRequest into a shallow dictionary of its immediate attributes."""
5312
- body = {}
5313
- if self.allow_missing is not None:
5314
- body["allow_missing"] = self.allow_missing
5315
- if self.field_mask is not None:
5316
- body["field_mask"] = self.field_mask
5317
- if self.setting:
5318
- body["setting"] = self.setting
5319
- return body
5320
-
5321
- @classmethod
5322
- def from_dict(cls, d: Dict[str, Any]) -> UpdateAccountIpAccessEnableRequest:
5323
- """Deserializes the UpdateAccountIpAccessEnableRequest from a dictionary."""
5324
- return cls(
5325
- allow_missing=d.get("allow_missing", None),
5326
- field_mask=d.get("field_mask", None),
5327
- setting=_from_dict(d, "setting", AccountIpAccessEnable),
5328
- )
5329
-
5330
-
5331
- @dataclass
5332
- class UpdateAibiDashboardEmbeddingAccessPolicySettingRequest:
5333
- """Details required to update a setting."""
5334
-
5335
- allow_missing: bool
5336
- """This should always be set to true for Settings API. Added for AIP compliance."""
5337
-
5338
- setting: AibiDashboardEmbeddingAccessPolicySetting
5339
-
5340
- field_mask: str
5341
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5342
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5343
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5344
- as only the entire collection field can be specified. Field names must exactly match the
5345
- resource field names.
5346
-
5347
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5348
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5349
- API changes in the future."""
5350
-
5351
- def as_dict(self) -> dict:
5352
- """Serializes the UpdateAibiDashboardEmbeddingAccessPolicySettingRequest into a dictionary suitable for use as a JSON request body."""
5353
- body = {}
5354
- if self.allow_missing is not None:
5355
- body["allow_missing"] = self.allow_missing
5356
- if self.field_mask is not None:
5357
- body["field_mask"] = self.field_mask
5358
- if self.setting:
5359
- body["setting"] = self.setting.as_dict()
5360
- return body
5361
-
5362
- def as_shallow_dict(self) -> dict:
5363
- """Serializes the UpdateAibiDashboardEmbeddingAccessPolicySettingRequest into a shallow dictionary of its immediate attributes."""
5364
- body = {}
5365
- if self.allow_missing is not None:
5366
- body["allow_missing"] = self.allow_missing
5367
- if self.field_mask is not None:
5368
- body["field_mask"] = self.field_mask
5369
- if self.setting:
5370
- body["setting"] = self.setting
5371
- return body
5372
-
5373
- @classmethod
5374
- def from_dict(cls, d: Dict[str, Any]) -> UpdateAibiDashboardEmbeddingAccessPolicySettingRequest:
5375
- """Deserializes the UpdateAibiDashboardEmbeddingAccessPolicySettingRequest from a dictionary."""
5376
- return cls(
5377
- allow_missing=d.get("allow_missing", None),
5378
- field_mask=d.get("field_mask", None),
5379
- setting=_from_dict(d, "setting", AibiDashboardEmbeddingAccessPolicySetting),
5380
- )
5381
-
5382
-
5383
- @dataclass
5384
- class UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest:
5385
- """Details required to update a setting."""
5386
-
5387
- allow_missing: bool
5388
- """This should always be set to true for Settings API. Added for AIP compliance."""
5389
-
5390
- setting: AibiDashboardEmbeddingApprovedDomainsSetting
5391
-
5392
- field_mask: str
5393
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5394
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5395
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5396
- as only the entire collection field can be specified. Field names must exactly match the
5397
- resource field names.
5398
-
5399
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5400
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5401
- API changes in the future."""
5402
-
5403
- def as_dict(self) -> dict:
5404
- """Serializes the UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest into a dictionary suitable for use as a JSON request body."""
5405
- body = {}
5406
- if self.allow_missing is not None:
5407
- body["allow_missing"] = self.allow_missing
5408
- if self.field_mask is not None:
5409
- body["field_mask"] = self.field_mask
5410
- if self.setting:
5411
- body["setting"] = self.setting.as_dict()
5412
- return body
5413
-
5414
- def as_shallow_dict(self) -> dict:
5415
- """Serializes the UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest into a shallow dictionary of its immediate attributes."""
5416
- body = {}
5417
- if self.allow_missing is not None:
5418
- body["allow_missing"] = self.allow_missing
5419
- if self.field_mask is not None:
5420
- body["field_mask"] = self.field_mask
5421
- if self.setting:
5422
- body["setting"] = self.setting
5423
- return body
5424
-
5425
- @classmethod
5426
- def from_dict(cls, d: Dict[str, Any]) -> UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest:
5427
- """Deserializes the UpdateAibiDashboardEmbeddingApprovedDomainsSettingRequest from a dictionary."""
5428
- return cls(
5429
- allow_missing=d.get("allow_missing", None),
5430
- field_mask=d.get("field_mask", None),
5431
- setting=_from_dict(d, "setting", AibiDashboardEmbeddingApprovedDomainsSetting),
5432
- )
5433
-
5434
-
5435
- @dataclass
5436
- class UpdateAutomaticClusterUpdateSettingRequest:
5437
- """Details required to update a setting."""
5438
-
5439
- allow_missing: bool
5440
- """This should always be set to true for Settings API. Added for AIP compliance."""
5441
-
5442
- setting: AutomaticClusterUpdateSetting
5443
-
5444
- field_mask: str
5445
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5446
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5447
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5448
- as only the entire collection field can be specified. Field names must exactly match the
5449
- resource field names.
5450
-
5451
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5452
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5453
- API changes in the future."""
5454
-
5455
- def as_dict(self) -> dict:
5456
- """Serializes the UpdateAutomaticClusterUpdateSettingRequest into a dictionary suitable for use as a JSON request body."""
5457
- body = {}
5458
- if self.allow_missing is not None:
5459
- body["allow_missing"] = self.allow_missing
5460
- if self.field_mask is not None:
5461
- body["field_mask"] = self.field_mask
5462
- if self.setting:
5463
- body["setting"] = self.setting.as_dict()
5464
- return body
5465
-
5466
- def as_shallow_dict(self) -> dict:
5467
- """Serializes the UpdateAutomaticClusterUpdateSettingRequest into a shallow dictionary of its immediate attributes."""
5468
- body = {}
5469
- if self.allow_missing is not None:
5470
- body["allow_missing"] = self.allow_missing
5471
- if self.field_mask is not None:
5472
- body["field_mask"] = self.field_mask
5473
- if self.setting:
5474
- body["setting"] = self.setting
5475
- return body
5476
-
5477
- @classmethod
5478
- def from_dict(cls, d: Dict[str, Any]) -> UpdateAutomaticClusterUpdateSettingRequest:
5479
- """Deserializes the UpdateAutomaticClusterUpdateSettingRequest from a dictionary."""
5480
- return cls(
5481
- allow_missing=d.get("allow_missing", None),
5482
- field_mask=d.get("field_mask", None),
5483
- setting=_from_dict(d, "setting", AutomaticClusterUpdateSetting),
5484
- )
5485
-
5486
-
5487
- @dataclass
5488
- class UpdateComplianceSecurityProfileSettingRequest:
5489
- """Details required to update a setting."""
5490
-
5491
- allow_missing: bool
5492
- """This should always be set to true for Settings API. Added for AIP compliance."""
5493
-
5494
- setting: ComplianceSecurityProfileSetting
5495
-
5496
- field_mask: str
5497
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5498
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5499
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5500
- as only the entire collection field can be specified. Field names must exactly match the
5501
- resource field names.
5502
-
5503
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5504
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5505
- API changes in the future."""
5506
-
5507
- def as_dict(self) -> dict:
5508
- """Serializes the UpdateComplianceSecurityProfileSettingRequest into a dictionary suitable for use as a JSON request body."""
5509
- body = {}
5510
- if self.allow_missing is not None:
5511
- body["allow_missing"] = self.allow_missing
5512
- if self.field_mask is not None:
5513
- body["field_mask"] = self.field_mask
5514
- if self.setting:
5515
- body["setting"] = self.setting.as_dict()
5516
- return body
5517
-
5518
- def as_shallow_dict(self) -> dict:
5519
- """Serializes the UpdateComplianceSecurityProfileSettingRequest into a shallow dictionary of its immediate attributes."""
5520
- body = {}
5521
- if self.allow_missing is not None:
5522
- body["allow_missing"] = self.allow_missing
5523
- if self.field_mask is not None:
5524
- body["field_mask"] = self.field_mask
5525
- if self.setting:
5526
- body["setting"] = self.setting
5527
- return body
5528
-
5529
- @classmethod
5530
- def from_dict(cls, d: Dict[str, Any]) -> UpdateComplianceSecurityProfileSettingRequest:
5531
- """Deserializes the UpdateComplianceSecurityProfileSettingRequest from a dictionary."""
5532
- return cls(
5533
- allow_missing=d.get("allow_missing", None),
5534
- field_mask=d.get("field_mask", None),
5535
- setting=_from_dict(d, "setting", ComplianceSecurityProfileSetting),
5536
- )
5537
-
5538
-
5539
- @dataclass
5540
- class UpdateCspEnablementAccountSettingRequest:
5541
- """Details required to update a setting."""
5542
-
5543
- allow_missing: bool
5544
- """This should always be set to true for Settings API. Added for AIP compliance."""
5545
-
5546
- setting: CspEnablementAccountSetting
5547
-
5548
- field_mask: str
5549
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5550
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5551
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5552
- as only the entire collection field can be specified. Field names must exactly match the
5553
- resource field names.
5554
-
5555
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5556
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5557
- API changes in the future."""
5558
-
5559
- def as_dict(self) -> dict:
5560
- """Serializes the UpdateCspEnablementAccountSettingRequest into a dictionary suitable for use as a JSON request body."""
5561
- body = {}
5562
- if self.allow_missing is not None:
5563
- body["allow_missing"] = self.allow_missing
5564
- if self.field_mask is not None:
5565
- body["field_mask"] = self.field_mask
5566
- if self.setting:
5567
- body["setting"] = self.setting.as_dict()
5568
- return body
5569
-
5570
- def as_shallow_dict(self) -> dict:
5571
- """Serializes the UpdateCspEnablementAccountSettingRequest into a shallow dictionary of its immediate attributes."""
5572
- body = {}
5573
- if self.allow_missing is not None:
5574
- body["allow_missing"] = self.allow_missing
5575
- if self.field_mask is not None:
5576
- body["field_mask"] = self.field_mask
5577
- if self.setting:
5578
- body["setting"] = self.setting
5579
- return body
5580
-
5581
- @classmethod
5582
- def from_dict(cls, d: Dict[str, Any]) -> UpdateCspEnablementAccountSettingRequest:
5583
- """Deserializes the UpdateCspEnablementAccountSettingRequest from a dictionary."""
5584
- return cls(
5585
- allow_missing=d.get("allow_missing", None),
5586
- field_mask=d.get("field_mask", None),
5587
- setting=_from_dict(d, "setting", CspEnablementAccountSetting),
5588
- )
5589
-
5590
-
5591
- @dataclass
5592
- class UpdateDashboardEmailSubscriptionsRequest:
5593
- """Details required to update a setting."""
5594
-
5595
- allow_missing: bool
5596
- """This should always be set to true for Settings API. Added for AIP compliance."""
5597
-
5598
- setting: DashboardEmailSubscriptions
5599
-
5600
- field_mask: str
5601
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5602
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5603
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5604
- as only the entire collection field can be specified. Field names must exactly match the
5605
- resource field names.
5606
-
5607
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5608
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5609
- API changes in the future."""
5610
-
5611
- def as_dict(self) -> dict:
5612
- """Serializes the UpdateDashboardEmailSubscriptionsRequest into a dictionary suitable for use as a JSON request body."""
5613
- body = {}
5614
- if self.allow_missing is not None:
5615
- body["allow_missing"] = self.allow_missing
5616
- if self.field_mask is not None:
5617
- body["field_mask"] = self.field_mask
5618
- if self.setting:
5619
- body["setting"] = self.setting.as_dict()
5620
- return body
5621
-
5622
- def as_shallow_dict(self) -> dict:
5623
- """Serializes the UpdateDashboardEmailSubscriptionsRequest into a shallow dictionary of its immediate attributes."""
5624
- body = {}
5625
- if self.allow_missing is not None:
5626
- body["allow_missing"] = self.allow_missing
5627
- if self.field_mask is not None:
5628
- body["field_mask"] = self.field_mask
5629
- if self.setting:
5630
- body["setting"] = self.setting
5631
- return body
5632
-
5633
- @classmethod
5634
- def from_dict(cls, d: Dict[str, Any]) -> UpdateDashboardEmailSubscriptionsRequest:
5635
- """Deserializes the UpdateDashboardEmailSubscriptionsRequest from a dictionary."""
5636
- return cls(
5637
- allow_missing=d.get("allow_missing", None),
5638
- field_mask=d.get("field_mask", None),
5639
- setting=_from_dict(d, "setting", DashboardEmailSubscriptions),
5640
- )
5641
-
5642
-
5643
- @dataclass
5644
- class UpdateDefaultNamespaceSettingRequest:
5645
- """Details required to update a setting."""
5646
-
5647
- allow_missing: bool
5648
- """This should always be set to true for Settings API. Added for AIP compliance."""
5649
-
5650
- setting: DefaultNamespaceSetting
5651
-
5652
- field_mask: str
5653
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5654
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5655
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5656
- as only the entire collection field can be specified. Field names must exactly match the
5657
- resource field names.
5658
-
5659
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5660
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5661
- API changes in the future."""
5662
-
5663
- def as_dict(self) -> dict:
5664
- """Serializes the UpdateDefaultNamespaceSettingRequest into a dictionary suitable for use as a JSON request body."""
5665
- body = {}
5666
- if self.allow_missing is not None:
5667
- body["allow_missing"] = self.allow_missing
5668
- if self.field_mask is not None:
5669
- body["field_mask"] = self.field_mask
5670
- if self.setting:
5671
- body["setting"] = self.setting.as_dict()
5672
- return body
5673
-
5674
- def as_shallow_dict(self) -> dict:
5675
- """Serializes the UpdateDefaultNamespaceSettingRequest into a shallow dictionary of its immediate attributes."""
5676
- body = {}
5677
- if self.allow_missing is not None:
5678
- body["allow_missing"] = self.allow_missing
5679
- if self.field_mask is not None:
5680
- body["field_mask"] = self.field_mask
5681
- if self.setting:
5682
- body["setting"] = self.setting
5683
- return body
5684
-
5685
- @classmethod
5686
- def from_dict(cls, d: Dict[str, Any]) -> UpdateDefaultNamespaceSettingRequest:
5687
- """Deserializes the UpdateDefaultNamespaceSettingRequest from a dictionary."""
5688
- return cls(
5689
- allow_missing=d.get("allow_missing", None),
5690
- field_mask=d.get("field_mask", None),
5691
- setting=_from_dict(d, "setting", DefaultNamespaceSetting),
5692
- )
5693
-
5694
-
5695
- @dataclass
5696
- class UpdateDisableLegacyAccessRequest:
5697
- """Details required to update a setting."""
5698
-
5699
- allow_missing: bool
5700
- """This should always be set to true for Settings API. Added for AIP compliance."""
5701
-
5702
- setting: DisableLegacyAccess
5703
-
5704
- field_mask: str
5705
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5706
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5707
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5708
- as only the entire collection field can be specified. Field names must exactly match the
5709
- resource field names.
5710
-
5711
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5712
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5713
- API changes in the future."""
5714
-
5715
- def as_dict(self) -> dict:
5716
- """Serializes the UpdateDisableLegacyAccessRequest into a dictionary suitable for use as a JSON request body."""
5717
- body = {}
5718
- if self.allow_missing is not None:
5719
- body["allow_missing"] = self.allow_missing
5720
- if self.field_mask is not None:
5721
- body["field_mask"] = self.field_mask
5722
- if self.setting:
5723
- body["setting"] = self.setting.as_dict()
5724
- return body
5725
-
5726
- def as_shallow_dict(self) -> dict:
5727
- """Serializes the UpdateDisableLegacyAccessRequest into a shallow dictionary of its immediate attributes."""
5728
- body = {}
5729
- if self.allow_missing is not None:
5730
- body["allow_missing"] = self.allow_missing
5731
- if self.field_mask is not None:
5732
- body["field_mask"] = self.field_mask
5733
- if self.setting:
5734
- body["setting"] = self.setting
5735
- return body
5736
-
5737
- @classmethod
5738
- def from_dict(cls, d: Dict[str, Any]) -> UpdateDisableLegacyAccessRequest:
5739
- """Deserializes the UpdateDisableLegacyAccessRequest from a dictionary."""
5740
- return cls(
5741
- allow_missing=d.get("allow_missing", None),
5742
- field_mask=d.get("field_mask", None),
5743
- setting=_from_dict(d, "setting", DisableLegacyAccess),
5744
- )
5745
-
5746
-
5747
- @dataclass
5748
- class UpdateDisableLegacyDbfsRequest:
5749
- """Details required to update a setting."""
5750
-
5751
- allow_missing: bool
5752
- """This should always be set to true for Settings API. Added for AIP compliance."""
5753
-
5754
- setting: DisableLegacyDbfs
5755
-
5756
- field_mask: str
5757
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5758
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5759
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5760
- as only the entire collection field can be specified. Field names must exactly match the
5761
- resource field names.
5762
-
5763
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5764
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5765
- API changes in the future."""
5766
-
5767
- def as_dict(self) -> dict:
5768
- """Serializes the UpdateDisableLegacyDbfsRequest into a dictionary suitable for use as a JSON request body."""
5769
- body = {}
5770
- if self.allow_missing is not None:
5771
- body["allow_missing"] = self.allow_missing
5772
- if self.field_mask is not None:
5773
- body["field_mask"] = self.field_mask
5774
- if self.setting:
5775
- body["setting"] = self.setting.as_dict()
5776
- return body
5777
-
5778
- def as_shallow_dict(self) -> dict:
5779
- """Serializes the UpdateDisableLegacyDbfsRequest into a shallow dictionary of its immediate attributes."""
5780
- body = {}
5781
- if self.allow_missing is not None:
5782
- body["allow_missing"] = self.allow_missing
5783
- if self.field_mask is not None:
5784
- body["field_mask"] = self.field_mask
5785
- if self.setting:
5786
- body["setting"] = self.setting
5787
- return body
5788
-
5789
- @classmethod
5790
- def from_dict(cls, d: Dict[str, Any]) -> UpdateDisableLegacyDbfsRequest:
5791
- """Deserializes the UpdateDisableLegacyDbfsRequest from a dictionary."""
5792
- return cls(
5793
- allow_missing=d.get("allow_missing", None),
5794
- field_mask=d.get("field_mask", None),
5795
- setting=_from_dict(d, "setting", DisableLegacyDbfs),
5796
- )
5797
-
5798
-
5799
- @dataclass
5800
- class UpdateDisableLegacyFeaturesRequest:
5801
- """Details required to update a setting."""
5802
-
5803
- allow_missing: bool
5804
- """This should always be set to true for Settings API. Added for AIP compliance."""
5805
-
5806
- setting: DisableLegacyFeatures
5807
-
5808
- field_mask: str
5809
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5810
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5811
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5812
- as only the entire collection field can be specified. Field names must exactly match the
5813
- resource field names.
5814
-
5815
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5816
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5817
- API changes in the future."""
5818
-
5819
- def as_dict(self) -> dict:
5820
- """Serializes the UpdateDisableLegacyFeaturesRequest into a dictionary suitable for use as a JSON request body."""
5821
- body = {}
5822
- if self.allow_missing is not None:
5823
- body["allow_missing"] = self.allow_missing
5824
- if self.field_mask is not None:
5825
- body["field_mask"] = self.field_mask
5826
- if self.setting:
5827
- body["setting"] = self.setting.as_dict()
5828
- return body
5829
-
5830
- def as_shallow_dict(self) -> dict:
5831
- """Serializes the UpdateDisableLegacyFeaturesRequest into a shallow dictionary of its immediate attributes."""
5832
- body = {}
5833
- if self.allow_missing is not None:
5834
- body["allow_missing"] = self.allow_missing
5835
- if self.field_mask is not None:
5836
- body["field_mask"] = self.field_mask
5837
- if self.setting:
5838
- body["setting"] = self.setting
5839
- return body
5840
-
5841
- @classmethod
5842
- def from_dict(cls, d: Dict[str, Any]) -> UpdateDisableLegacyFeaturesRequest:
5843
- """Deserializes the UpdateDisableLegacyFeaturesRequest from a dictionary."""
5844
- return cls(
5845
- allow_missing=d.get("allow_missing", None),
5846
- field_mask=d.get("field_mask", None),
5847
- setting=_from_dict(d, "setting", DisableLegacyFeatures),
5848
- )
5849
-
5850
-
5851
- @dataclass
5852
- class UpdateEnableExportNotebookRequest:
5853
- """Details required to update a setting."""
5854
-
5855
- allow_missing: bool
5856
- """This should always be set to true for Settings API. Added for AIP compliance."""
5857
-
5858
- setting: EnableExportNotebook
5859
-
5860
- field_mask: str
5861
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5862
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5863
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5864
- as only the entire collection field can be specified. Field names must exactly match the
5865
- resource field names.
5866
-
5867
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5868
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5869
- API changes in the future."""
5870
-
5871
- def as_dict(self) -> dict:
5872
- """Serializes the UpdateEnableExportNotebookRequest into a dictionary suitable for use as a JSON request body."""
5873
- body = {}
5874
- if self.allow_missing is not None:
5875
- body["allow_missing"] = self.allow_missing
5876
- if self.field_mask is not None:
5877
- body["field_mask"] = self.field_mask
5878
- if self.setting:
5879
- body["setting"] = self.setting.as_dict()
5880
- return body
5881
-
5882
- def as_shallow_dict(self) -> dict:
5883
- """Serializes the UpdateEnableExportNotebookRequest into a shallow dictionary of its immediate attributes."""
5884
- body = {}
5885
- if self.allow_missing is not None:
5886
- body["allow_missing"] = self.allow_missing
5887
- if self.field_mask is not None:
5888
- body["field_mask"] = self.field_mask
5889
- if self.setting:
5890
- body["setting"] = self.setting
5891
- return body
5892
-
5893
- @classmethod
5894
- def from_dict(cls, d: Dict[str, Any]) -> UpdateEnableExportNotebookRequest:
5895
- """Deserializes the UpdateEnableExportNotebookRequest from a dictionary."""
5896
- return cls(
5897
- allow_missing=d.get("allow_missing", None),
5898
- field_mask=d.get("field_mask", None),
5899
- setting=_from_dict(d, "setting", EnableExportNotebook),
5900
- )
5901
-
5902
-
5903
- @dataclass
5904
- class UpdateEnableNotebookTableClipboardRequest:
5905
- """Details required to update a setting."""
5906
-
5907
- allow_missing: bool
5908
- """This should always be set to true for Settings API. Added for AIP compliance."""
5909
-
5910
- setting: EnableNotebookTableClipboard
5911
-
5912
- field_mask: str
5913
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5914
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5915
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5916
- as only the entire collection field can be specified. Field names must exactly match the
5917
- resource field names.
5918
-
5919
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5920
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5921
- API changes in the future."""
5922
-
5923
- def as_dict(self) -> dict:
5924
- """Serializes the UpdateEnableNotebookTableClipboardRequest into a dictionary suitable for use as a JSON request body."""
5925
- body = {}
5926
- if self.allow_missing is not None:
5927
- body["allow_missing"] = self.allow_missing
5928
- if self.field_mask is not None:
5929
- body["field_mask"] = self.field_mask
5930
- if self.setting:
5931
- body["setting"] = self.setting.as_dict()
5932
- return body
5933
-
5934
- def as_shallow_dict(self) -> dict:
5935
- """Serializes the UpdateEnableNotebookTableClipboardRequest into a shallow dictionary of its immediate attributes."""
5936
- body = {}
5937
- if self.allow_missing is not None:
5938
- body["allow_missing"] = self.allow_missing
5939
- if self.field_mask is not None:
5940
- body["field_mask"] = self.field_mask
5941
- if self.setting:
5942
- body["setting"] = self.setting
5943
- return body
5944
-
5945
- @classmethod
5946
- def from_dict(cls, d: Dict[str, Any]) -> UpdateEnableNotebookTableClipboardRequest:
5947
- """Deserializes the UpdateEnableNotebookTableClipboardRequest from a dictionary."""
5948
- return cls(
5949
- allow_missing=d.get("allow_missing", None),
5950
- field_mask=d.get("field_mask", None),
5951
- setting=_from_dict(d, "setting", EnableNotebookTableClipboard),
5952
- )
5953
-
5954
-
5955
- @dataclass
5956
- class UpdateEnableResultsDownloadingRequest:
5957
- """Details required to update a setting."""
5958
-
5959
- allow_missing: bool
5960
- """This should always be set to true for Settings API. Added for AIP compliance."""
5961
-
5962
- setting: EnableResultsDownloading
5963
-
5964
- field_mask: str
5965
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
5966
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
5967
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
5968
- as only the entire collection field can be specified. Field names must exactly match the
5969
- resource field names.
5970
-
5971
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
5972
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
5973
- API changes in the future."""
5974
-
5975
- def as_dict(self) -> dict:
5976
- """Serializes the UpdateEnableResultsDownloadingRequest into a dictionary suitable for use as a JSON request body."""
5977
- body = {}
5978
- if self.allow_missing is not None:
5979
- body["allow_missing"] = self.allow_missing
5980
- if self.field_mask is not None:
5981
- body["field_mask"] = self.field_mask
5982
- if self.setting:
5983
- body["setting"] = self.setting.as_dict()
5984
- return body
5985
-
5986
- def as_shallow_dict(self) -> dict:
5987
- """Serializes the UpdateEnableResultsDownloadingRequest into a shallow dictionary of its immediate attributes."""
5988
- body = {}
5989
- if self.allow_missing is not None:
5990
- body["allow_missing"] = self.allow_missing
5991
- if self.field_mask is not None:
5992
- body["field_mask"] = self.field_mask
5993
- if self.setting:
5994
- body["setting"] = self.setting
5995
- return body
5996
-
5997
- @classmethod
5998
- def from_dict(cls, d: Dict[str, Any]) -> UpdateEnableResultsDownloadingRequest:
5999
- """Deserializes the UpdateEnableResultsDownloadingRequest from a dictionary."""
6000
- return cls(
6001
- allow_missing=d.get("allow_missing", None),
6002
- field_mask=d.get("field_mask", None),
6003
- setting=_from_dict(d, "setting", EnableResultsDownloading),
6004
- )
6005
-
6006
-
6007
- @dataclass
6008
- class UpdateEnhancedSecurityMonitoringSettingRequest:
6009
- """Details required to update a setting."""
6010
-
6011
- allow_missing: bool
6012
- """This should always be set to true for Settings API. Added for AIP compliance."""
6013
-
6014
- setting: EnhancedSecurityMonitoringSetting
6015
-
6016
- field_mask: str
6017
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6018
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6019
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6020
- as only the entire collection field can be specified. Field names must exactly match the
6021
- resource field names.
6022
-
6023
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6024
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6025
- API changes in the future."""
6026
-
6027
- def as_dict(self) -> dict:
6028
- """Serializes the UpdateEnhancedSecurityMonitoringSettingRequest into a dictionary suitable for use as a JSON request body."""
6029
- body = {}
6030
- if self.allow_missing is not None:
6031
- body["allow_missing"] = self.allow_missing
6032
- if self.field_mask is not None:
6033
- body["field_mask"] = self.field_mask
6034
- if self.setting:
6035
- body["setting"] = self.setting.as_dict()
6036
- return body
6037
-
6038
- def as_shallow_dict(self) -> dict:
6039
- """Serializes the UpdateEnhancedSecurityMonitoringSettingRequest into a shallow dictionary of its immediate attributes."""
6040
- body = {}
6041
- if self.allow_missing is not None:
6042
- body["allow_missing"] = self.allow_missing
6043
- if self.field_mask is not None:
6044
- body["field_mask"] = self.field_mask
6045
- if self.setting:
6046
- body["setting"] = self.setting
6047
- return body
6048
-
6049
- @classmethod
6050
- def from_dict(cls, d: Dict[str, Any]) -> UpdateEnhancedSecurityMonitoringSettingRequest:
6051
- """Deserializes the UpdateEnhancedSecurityMonitoringSettingRequest from a dictionary."""
6052
- return cls(
6053
- allow_missing=d.get("allow_missing", None),
6054
- field_mask=d.get("field_mask", None),
6055
- setting=_from_dict(d, "setting", EnhancedSecurityMonitoringSetting),
6056
- )
6057
-
6058
-
6059
- @dataclass
6060
- class UpdateEsmEnablementAccountSettingRequest:
6061
- """Details required to update a setting."""
6062
-
6063
- allow_missing: bool
6064
- """This should always be set to true for Settings API. Added for AIP compliance."""
6065
-
6066
- setting: EsmEnablementAccountSetting
6067
-
6068
- field_mask: str
6069
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6070
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6071
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6072
- as only the entire collection field can be specified. Field names must exactly match the
6073
- resource field names.
6074
-
6075
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6076
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6077
- API changes in the future."""
6078
-
6079
- def as_dict(self) -> dict:
6080
- """Serializes the UpdateEsmEnablementAccountSettingRequest into a dictionary suitable for use as a JSON request body."""
6081
- body = {}
6082
- if self.allow_missing is not None:
6083
- body["allow_missing"] = self.allow_missing
6084
- if self.field_mask is not None:
6085
- body["field_mask"] = self.field_mask
6086
- if self.setting:
6087
- body["setting"] = self.setting.as_dict()
6088
- return body
6089
-
6090
- def as_shallow_dict(self) -> dict:
6091
- """Serializes the UpdateEsmEnablementAccountSettingRequest into a shallow dictionary of its immediate attributes."""
6092
- body = {}
6093
- if self.allow_missing is not None:
6094
- body["allow_missing"] = self.allow_missing
6095
- if self.field_mask is not None:
6096
- body["field_mask"] = self.field_mask
6097
- if self.setting:
6098
- body["setting"] = self.setting
6099
- return body
6100
-
6101
- @classmethod
6102
- def from_dict(cls, d: Dict[str, Any]) -> UpdateEsmEnablementAccountSettingRequest:
6103
- """Deserializes the UpdateEsmEnablementAccountSettingRequest from a dictionary."""
6104
- return cls(
6105
- allow_missing=d.get("allow_missing", None),
6106
- field_mask=d.get("field_mask", None),
6107
- setting=_from_dict(d, "setting", EsmEnablementAccountSetting),
6108
- )
6109
-
6110
-
6111
- @dataclass
6112
- class UpdateIpAccessList:
6113
- """Details required to update an IP access list."""
6114
-
6115
- enabled: Optional[bool] = None
6116
- """Specifies whether this IP access list is enabled."""
6117
-
6118
- ip_access_list_id: Optional[str] = None
6119
- """The ID for the corresponding IP access list"""
6120
-
6121
- ip_addresses: Optional[List[str]] = None
6122
-
6123
- label: Optional[str] = None
6124
- """Label for the IP access list. This **cannot** be empty."""
6125
-
6126
- list_type: Optional[ListType] = None
6127
-
6128
- def as_dict(self) -> dict:
6129
- """Serializes the UpdateIpAccessList into a dictionary suitable for use as a JSON request body."""
6130
- body = {}
6131
- if self.enabled is not None:
6132
- body["enabled"] = self.enabled
6133
- if self.ip_access_list_id is not None:
6134
- body["ip_access_list_id"] = self.ip_access_list_id
6135
- if self.ip_addresses:
6136
- body["ip_addresses"] = [v for v in self.ip_addresses]
6137
- if self.label is not None:
6138
- body["label"] = self.label
6139
- if self.list_type is not None:
6140
- body["list_type"] = self.list_type.value
6141
- return body
6142
-
6143
- def as_shallow_dict(self) -> dict:
6144
- """Serializes the UpdateIpAccessList into a shallow dictionary of its immediate attributes."""
6145
- body = {}
6146
- if self.enabled is not None:
6147
- body["enabled"] = self.enabled
6148
- if self.ip_access_list_id is not None:
6149
- body["ip_access_list_id"] = self.ip_access_list_id
6150
- if self.ip_addresses:
6151
- body["ip_addresses"] = self.ip_addresses
6152
- if self.label is not None:
6153
- body["label"] = self.label
6154
- if self.list_type is not None:
6155
- body["list_type"] = self.list_type
6156
- return body
6157
-
6158
- @classmethod
6159
- def from_dict(cls, d: Dict[str, Any]) -> UpdateIpAccessList:
6160
- """Deserializes the UpdateIpAccessList from a dictionary."""
6161
- return cls(
6162
- enabled=d.get("enabled", None),
6163
- ip_access_list_id=d.get("ip_access_list_id", None),
6164
- ip_addresses=d.get("ip_addresses", None),
6165
- label=d.get("label", None),
6166
- list_type=_enum(d, "list_type", ListType),
6167
- )
6168
-
6169
-
6170
- @dataclass
6171
- class UpdateLlmProxyPartnerPoweredAccountRequest:
6172
- """Details required to update a setting."""
6173
-
6174
- allow_missing: bool
6175
- """This should always be set to true for Settings API. Added for AIP compliance."""
6176
-
6177
- setting: LlmProxyPartnerPoweredAccount
6178
-
6179
- field_mask: str
6180
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6181
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6182
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6183
- as only the entire collection field can be specified. Field names must exactly match the
6184
- resource field names.
6185
-
6186
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6187
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6188
- API changes in the future."""
6189
-
6190
- def as_dict(self) -> dict:
6191
- """Serializes the UpdateLlmProxyPartnerPoweredAccountRequest into a dictionary suitable for use as a JSON request body."""
6192
- body = {}
6193
- if self.allow_missing is not None:
6194
- body["allow_missing"] = self.allow_missing
6195
- if self.field_mask is not None:
6196
- body["field_mask"] = self.field_mask
6197
- if self.setting:
6198
- body["setting"] = self.setting.as_dict()
6199
- return body
6200
-
6201
- def as_shallow_dict(self) -> dict:
6202
- """Serializes the UpdateLlmProxyPartnerPoweredAccountRequest into a shallow dictionary of its immediate attributes."""
6203
- body = {}
6204
- if self.allow_missing is not None:
6205
- body["allow_missing"] = self.allow_missing
6206
- if self.field_mask is not None:
6207
- body["field_mask"] = self.field_mask
6208
- if self.setting:
6209
- body["setting"] = self.setting
6210
- return body
6211
-
6212
- @classmethod
6213
- def from_dict(cls, d: Dict[str, Any]) -> UpdateLlmProxyPartnerPoweredAccountRequest:
6214
- """Deserializes the UpdateLlmProxyPartnerPoweredAccountRequest from a dictionary."""
6215
- return cls(
6216
- allow_missing=d.get("allow_missing", None),
6217
- field_mask=d.get("field_mask", None),
6218
- setting=_from_dict(d, "setting", LlmProxyPartnerPoweredAccount),
6219
- )
6220
-
6221
-
6222
- @dataclass
6223
- class UpdateLlmProxyPartnerPoweredEnforceRequest:
6224
- """Details required to update a setting."""
6225
-
6226
- allow_missing: bool
6227
- """This should always be set to true for Settings API. Added for AIP compliance."""
6228
-
6229
- setting: LlmProxyPartnerPoweredEnforce
6230
-
6231
- field_mask: str
6232
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6233
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6234
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6235
- as only the entire collection field can be specified. Field names must exactly match the
6236
- resource field names.
6237
-
6238
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6239
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6240
- API changes in the future."""
6241
-
6242
- def as_dict(self) -> dict:
6243
- """Serializes the UpdateLlmProxyPartnerPoweredEnforceRequest into a dictionary suitable for use as a JSON request body."""
6244
- body = {}
6245
- if self.allow_missing is not None:
6246
- body["allow_missing"] = self.allow_missing
6247
- if self.field_mask is not None:
6248
- body["field_mask"] = self.field_mask
6249
- if self.setting:
6250
- body["setting"] = self.setting.as_dict()
6251
- return body
6252
-
6253
- def as_shallow_dict(self) -> dict:
6254
- """Serializes the UpdateLlmProxyPartnerPoweredEnforceRequest into a shallow dictionary of its immediate attributes."""
6255
- body = {}
6256
- if self.allow_missing is not None:
6257
- body["allow_missing"] = self.allow_missing
6258
- if self.field_mask is not None:
6259
- body["field_mask"] = self.field_mask
6260
- if self.setting:
6261
- body["setting"] = self.setting
6262
- return body
6263
-
6264
- @classmethod
6265
- def from_dict(cls, d: Dict[str, Any]) -> UpdateLlmProxyPartnerPoweredEnforceRequest:
6266
- """Deserializes the UpdateLlmProxyPartnerPoweredEnforceRequest from a dictionary."""
6267
- return cls(
6268
- allow_missing=d.get("allow_missing", None),
6269
- field_mask=d.get("field_mask", None),
6270
- setting=_from_dict(d, "setting", LlmProxyPartnerPoweredEnforce),
6271
- )
6272
-
6273
-
6274
- @dataclass
6275
- class UpdateLlmProxyPartnerPoweredWorkspaceRequest:
6276
- """Details required to update a setting."""
6277
-
6278
- allow_missing: bool
6279
- """This should always be set to true for Settings API. Added for AIP compliance."""
6280
-
6281
- setting: LlmProxyPartnerPoweredWorkspace
6282
-
6283
- field_mask: str
6284
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6285
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6286
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6287
- as only the entire collection field can be specified. Field names must exactly match the
6288
- resource field names.
6289
-
6290
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6291
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6292
- API changes in the future."""
6293
-
6294
- def as_dict(self) -> dict:
6295
- """Serializes the UpdateLlmProxyPartnerPoweredWorkspaceRequest into a dictionary suitable for use as a JSON request body."""
6296
- body = {}
6297
- if self.allow_missing is not None:
6298
- body["allow_missing"] = self.allow_missing
6299
- if self.field_mask is not None:
6300
- body["field_mask"] = self.field_mask
6301
- if self.setting:
6302
- body["setting"] = self.setting.as_dict()
6303
- return body
6304
-
6305
- def as_shallow_dict(self) -> dict:
6306
- """Serializes the UpdateLlmProxyPartnerPoweredWorkspaceRequest into a shallow dictionary of its immediate attributes."""
6307
- body = {}
6308
- if self.allow_missing is not None:
6309
- body["allow_missing"] = self.allow_missing
6310
- if self.field_mask is not None:
6311
- body["field_mask"] = self.field_mask
6312
- if self.setting:
6313
- body["setting"] = self.setting
6314
- return body
6315
-
6316
- @classmethod
6317
- def from_dict(cls, d: Dict[str, Any]) -> UpdateLlmProxyPartnerPoweredWorkspaceRequest:
6318
- """Deserializes the UpdateLlmProxyPartnerPoweredWorkspaceRequest from a dictionary."""
6319
- return cls(
6320
- allow_missing=d.get("allow_missing", None),
6321
- field_mask=d.get("field_mask", None),
6322
- setting=_from_dict(d, "setting", LlmProxyPartnerPoweredWorkspace),
6323
- )
6324
-
6325
-
6326
- @dataclass
6327
- class UpdateNotificationDestinationRequest:
6328
- config: Optional[Config] = None
6329
- """The configuration for the notification destination. Must wrap EXACTLY one of the nested configs."""
6330
-
6331
- display_name: Optional[str] = None
6332
- """The display name for the notification destination."""
6333
-
6334
- id: Optional[str] = None
6335
- """UUID identifying notification destination."""
6336
-
6337
- def as_dict(self) -> dict:
6338
- """Serializes the UpdateNotificationDestinationRequest into a dictionary suitable for use as a JSON request body."""
6339
- body = {}
6340
- if self.config:
6341
- body["config"] = self.config.as_dict()
6342
- if self.display_name is not None:
6343
- body["display_name"] = self.display_name
6344
- if self.id is not None:
6345
- body["id"] = self.id
6346
- return body
6347
-
6348
- def as_shallow_dict(self) -> dict:
6349
- """Serializes the UpdateNotificationDestinationRequest into a shallow dictionary of its immediate attributes."""
6350
- body = {}
6351
- if self.config:
6352
- body["config"] = self.config
6353
- if self.display_name is not None:
6354
- body["display_name"] = self.display_name
6355
- if self.id is not None:
6356
- body["id"] = self.id
6357
- return body
6358
-
6359
- @classmethod
6360
- def from_dict(cls, d: Dict[str, Any]) -> UpdateNotificationDestinationRequest:
6361
- """Deserializes the UpdateNotificationDestinationRequest from a dictionary."""
6362
- return cls(
6363
- config=_from_dict(d, "config", Config), display_name=d.get("display_name", None), id=d.get("id", None)
6364
- )
6365
-
6366
-
6367
- @dataclass
6368
- class UpdatePersonalComputeSettingRequest:
6369
- """Details required to update a setting."""
6370
-
6371
- allow_missing: bool
6372
- """This should always be set to true for Settings API. Added for AIP compliance."""
6373
-
6374
- setting: PersonalComputeSetting
6375
-
6376
- field_mask: str
6377
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6378
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6379
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6380
- as only the entire collection field can be specified. Field names must exactly match the
6381
- resource field names.
6382
-
6383
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6384
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6385
- API changes in the future."""
6386
-
6387
- def as_dict(self) -> dict:
6388
- """Serializes the UpdatePersonalComputeSettingRequest into a dictionary suitable for use as a JSON request body."""
6389
- body = {}
6390
- if self.allow_missing is not None:
6391
- body["allow_missing"] = self.allow_missing
6392
- if self.field_mask is not None:
6393
- body["field_mask"] = self.field_mask
6394
- if self.setting:
6395
- body["setting"] = self.setting.as_dict()
6396
- return body
6397
-
6398
- def as_shallow_dict(self) -> dict:
6399
- """Serializes the UpdatePersonalComputeSettingRequest into a shallow dictionary of its immediate attributes."""
6400
- body = {}
6401
- if self.allow_missing is not None:
6402
- body["allow_missing"] = self.allow_missing
6403
- if self.field_mask is not None:
6404
- body["field_mask"] = self.field_mask
6405
- if self.setting:
6406
- body["setting"] = self.setting
6407
- return body
5043
+ class TokenType(Enum):
5044
+ """The type of token request. As of now, only `AZURE_ACTIVE_DIRECTORY_TOKEN` is supported."""
6408
5045
 
6409
- @classmethod
6410
- def from_dict(cls, d: Dict[str, Any]) -> UpdatePersonalComputeSettingRequest:
6411
- """Deserializes the UpdatePersonalComputeSettingRequest from a dictionary."""
6412
- return cls(
6413
- allow_missing=d.get("allow_missing", None),
6414
- field_mask=d.get("field_mask", None),
6415
- setting=_from_dict(d, "setting", PersonalComputeSetting),
6416
- )
5046
+ ARCLIGHT_AZURE_EXCHANGE_TOKEN = "ARCLIGHT_AZURE_EXCHANGE_TOKEN"
5047
+ ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY = "ARCLIGHT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY"
5048
+ ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN = "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN"
5049
+ ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY = (
5050
+ "ARCLIGHT_MULTI_TENANT_AZURE_EXCHANGE_TOKEN_WITH_USER_DELEGATION_KEY"
5051
+ )
5052
+ AZURE_ACTIVE_DIRECTORY_TOKEN = "AZURE_ACTIVE_DIRECTORY_TOKEN"
6417
5053
 
6418
5054
 
6419
5055
  @dataclass
@@ -6490,110 +5126,6 @@ class UpdateResponse:
6490
5126
  return cls()
6491
5127
 
6492
5128
 
6493
- @dataclass
6494
- class UpdateRestrictWorkspaceAdminsSettingRequest:
6495
- """Details required to update a setting."""
6496
-
6497
- allow_missing: bool
6498
- """This should always be set to true for Settings API. Added for AIP compliance."""
6499
-
6500
- setting: RestrictWorkspaceAdminsSetting
6501
-
6502
- field_mask: str
6503
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6504
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6505
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6506
- as only the entire collection field can be specified. Field names must exactly match the
6507
- resource field names.
6508
-
6509
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6510
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6511
- API changes in the future."""
6512
-
6513
- def as_dict(self) -> dict:
6514
- """Serializes the UpdateRestrictWorkspaceAdminsSettingRequest into a dictionary suitable for use as a JSON request body."""
6515
- body = {}
6516
- if self.allow_missing is not None:
6517
- body["allow_missing"] = self.allow_missing
6518
- if self.field_mask is not None:
6519
- body["field_mask"] = self.field_mask
6520
- if self.setting:
6521
- body["setting"] = self.setting.as_dict()
6522
- return body
6523
-
6524
- def as_shallow_dict(self) -> dict:
6525
- """Serializes the UpdateRestrictWorkspaceAdminsSettingRequest into a shallow dictionary of its immediate attributes."""
6526
- body = {}
6527
- if self.allow_missing is not None:
6528
- body["allow_missing"] = self.allow_missing
6529
- if self.field_mask is not None:
6530
- body["field_mask"] = self.field_mask
6531
- if self.setting:
6532
- body["setting"] = self.setting
6533
- return body
6534
-
6535
- @classmethod
6536
- def from_dict(cls, d: Dict[str, Any]) -> UpdateRestrictWorkspaceAdminsSettingRequest:
6537
- """Deserializes the UpdateRestrictWorkspaceAdminsSettingRequest from a dictionary."""
6538
- return cls(
6539
- allow_missing=d.get("allow_missing", None),
6540
- field_mask=d.get("field_mask", None),
6541
- setting=_from_dict(d, "setting", RestrictWorkspaceAdminsSetting),
6542
- )
6543
-
6544
-
6545
- @dataclass
6546
- class UpdateSqlResultsDownloadRequest:
6547
- """Details required to update a setting."""
6548
-
6549
- allow_missing: bool
6550
- """This should always be set to true for Settings API. Added for AIP compliance."""
6551
-
6552
- setting: SqlResultsDownload
6553
-
6554
- field_mask: str
6555
- """The field mask must be a single string, with multiple fields separated by commas (no spaces).
6556
- The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields
6557
- (e.g., `author.given_name`). Specification of elements in sequence or map fields is not allowed,
6558
- as only the entire collection field can be specified. Field names must exactly match the
6559
- resource field names.
6560
-
6561
- A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6562
- fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the
6563
- API changes in the future."""
6564
-
6565
- def as_dict(self) -> dict:
6566
- """Serializes the UpdateSqlResultsDownloadRequest into a dictionary suitable for use as a JSON request body."""
6567
- body = {}
6568
- if self.allow_missing is not None:
6569
- body["allow_missing"] = self.allow_missing
6570
- if self.field_mask is not None:
6571
- body["field_mask"] = self.field_mask
6572
- if self.setting:
6573
- body["setting"] = self.setting.as_dict()
6574
- return body
6575
-
6576
- def as_shallow_dict(self) -> dict:
6577
- """Serializes the UpdateSqlResultsDownloadRequest into a shallow dictionary of its immediate attributes."""
6578
- body = {}
6579
- if self.allow_missing is not None:
6580
- body["allow_missing"] = self.allow_missing
6581
- if self.field_mask is not None:
6582
- body["field_mask"] = self.field_mask
6583
- if self.setting:
6584
- body["setting"] = self.setting
6585
- return body
6586
-
6587
- @classmethod
6588
- def from_dict(cls, d: Dict[str, Any]) -> UpdateSqlResultsDownloadRequest:
6589
- """Deserializes the UpdateSqlResultsDownloadRequest from a dictionary."""
6590
- return cls(
6591
- allow_missing=d.get("allow_missing", None),
6592
- field_mask=d.get("field_mask", None),
6593
- setting=_from_dict(d, "setting", SqlResultsDownload),
6594
- )
6595
-
6596
-
6597
5129
  WorkspaceConf = Dict[str, str]
6598
5130
 
6599
5131
 
@@ -7584,6 +6116,100 @@ class DefaultNamespaceAPI:
7584
6116
  return DefaultNamespaceSetting.from_dict(res)
7585
6117
 
7586
6118
 
6119
+ class DefaultWarehouseIdAPI:
6120
+ """Warehouse to be selected by default for users in this workspace. Covers SQL workloads only and can be
6121
+ overridden by users."""
6122
+
6123
+ def __init__(self, api_client):
6124
+ self._api = api_client
6125
+
6126
+ def delete(self, *, etag: Optional[str] = None) -> DeleteDefaultWarehouseIdResponse:
6127
+ """Reverts the Default Warehouse Id setting to its default value.
6128
+
6129
+ :param etag: str (optional)
6130
+ etag used for versioning. The response is at least as fresh as the eTag provided. This is used for
6131
+ optimistic concurrency control as a way to help prevent simultaneous writes of a setting overwriting
6132
+ each other. It is strongly suggested that systems make use of the etag in the read -> delete pattern
6133
+ to perform setting deletions in order to avoid race conditions. That is, get an etag from a GET
6134
+ request, and pass it with the DELETE request to identify the rule set version you are deleting.
6135
+
6136
+ :returns: :class:`DeleteDefaultWarehouseIdResponse`
6137
+ """
6138
+
6139
+ query = {}
6140
+ if etag is not None:
6141
+ query["etag"] = etag
6142
+ headers = {
6143
+ "Accept": "application/json",
6144
+ }
6145
+
6146
+ res = self._api.do(
6147
+ "DELETE", "/api/2.0/settings/types/default_warehouse_id/names/default", query=query, headers=headers
6148
+ )
6149
+ return DeleteDefaultWarehouseIdResponse.from_dict(res)
6150
+
6151
+ def get(self, *, etag: Optional[str] = None) -> DefaultWarehouseId:
6152
+ """Gets the Default Warehouse Id setting.
6153
+
6154
+ :param etag: str (optional)
6155
+ etag used for versioning. The response is at least as fresh as the eTag provided. This is used for
6156
+ optimistic concurrency control as a way to help prevent simultaneous writes of a setting overwriting
6157
+ each other. It is strongly suggested that systems make use of the etag in the read -> delete pattern
6158
+ to perform setting deletions in order to avoid race conditions. That is, get an etag from a GET
6159
+ request, and pass it with the DELETE request to identify the rule set version you are deleting.
6160
+
6161
+ :returns: :class:`DefaultWarehouseId`
6162
+ """
6163
+
6164
+ query = {}
6165
+ if etag is not None:
6166
+ query["etag"] = etag
6167
+ headers = {
6168
+ "Accept": "application/json",
6169
+ }
6170
+
6171
+ res = self._api.do(
6172
+ "GET", "/api/2.0/settings/types/default_warehouse_id/names/default", query=query, headers=headers
6173
+ )
6174
+ return DefaultWarehouseId.from_dict(res)
6175
+
6176
+ def update(self, allow_missing: bool, setting: DefaultWarehouseId, field_mask: str) -> DefaultWarehouseId:
6177
+ """Updates the Default Warehouse Id setting.
6178
+
6179
+ :param allow_missing: bool
6180
+ This should always be set to true for Settings API. Added for AIP compliance.
6181
+ :param setting: :class:`DefaultWarehouseId`
6182
+ :param field_mask: str
6183
+ The field mask must be a single string, with multiple fields separated by commas (no spaces). The
6184
+ field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g.,
6185
+ `author.given_name`). Specification of elements in sequence or map fields is not allowed, as only
6186
+ the entire collection field can be specified. Field names must exactly match the resource field
6187
+ names.
6188
+
6189
+ A field mask of `*` indicates full replacement. It’s recommended to always explicitly list the
6190
+ fields being updated and avoid using `*` wildcards, as it can lead to unintended results if the API
6191
+ changes in the future.
6192
+
6193
+ :returns: :class:`DefaultWarehouseId`
6194
+ """
6195
+ body = {}
6196
+ if allow_missing is not None:
6197
+ body["allow_missing"] = allow_missing
6198
+ if field_mask is not None:
6199
+ body["field_mask"] = field_mask
6200
+ if setting is not None:
6201
+ body["setting"] = setting.as_dict()
6202
+ headers = {
6203
+ "Accept": "application/json",
6204
+ "Content-Type": "application/json",
6205
+ }
6206
+
6207
+ res = self._api.do(
6208
+ "PATCH", "/api/2.0/settings/types/default_warehouse_id/names/default", body=body, headers=headers
6209
+ )
6210
+ return DefaultWarehouseId.from_dict(res)
6211
+
6212
+
7587
6213
  class DisableLegacyAccessAPI:
7588
6214
  """'Disabling legacy access' has the following impacts:
7589
6215
 
@@ -9527,6 +8153,7 @@ class SettingsAPI:
9527
8153
  self._compliance_security_profile = ComplianceSecurityProfileAPI(self._api)
9528
8154
  self._dashboard_email_subscriptions = DashboardEmailSubscriptionsAPI(self._api)
9529
8155
  self._default_namespace = DefaultNamespaceAPI(self._api)
8156
+ self._default_warehouse_id = DefaultWarehouseIdAPI(self._api)
9530
8157
  self._disable_legacy_access = DisableLegacyAccessAPI(self._api)
9531
8158
  self._disable_legacy_dbfs = DisableLegacyDbfsAPI(self._api)
9532
8159
  self._enable_export_notebook = EnableExportNotebookAPI(self._api)
@@ -9567,6 +8194,11 @@ class SettingsAPI:
9567
8194
  """The default namespace setting API allows users to configure the default namespace for a Databricks workspace."""
9568
8195
  return self._default_namespace
9569
8196
 
8197
+ @property
8198
+ def default_warehouse_id(self) -> DefaultWarehouseIdAPI:
8199
+ """Warehouse to be selected by default for users in this workspace."""
8200
+ return self._default_warehouse_id
8201
+
9570
8202
  @property
9571
8203
  def disable_legacy_access(self) -> DisableLegacyAccessAPI:
9572
8204
  """'Disabling legacy access' has the following impacts: 1."""