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
@@ -697,57 +697,6 @@ class ListUsersResponse:
697
697
  )
698
698
 
699
699
 
700
- @dataclass
701
- class MigratePermissionsRequest:
702
- workspace_id: int
703
- """WorkspaceId of the associated workspace where the permission migration will occur."""
704
-
705
- from_workspace_group_name: str
706
- """The name of the workspace group that permissions will be migrated from."""
707
-
708
- to_account_group_name: str
709
- """The name of the account group that permissions will be migrated to."""
710
-
711
- size: Optional[int] = None
712
- """The maximum number of permissions that will be migrated."""
713
-
714
- def as_dict(self) -> dict:
715
- """Serializes the MigratePermissionsRequest into a dictionary suitable for use as a JSON request body."""
716
- body = {}
717
- if self.from_workspace_group_name is not None:
718
- body["from_workspace_group_name"] = self.from_workspace_group_name
719
- if self.size is not None:
720
- body["size"] = self.size
721
- if self.to_account_group_name is not None:
722
- body["to_account_group_name"] = self.to_account_group_name
723
- if self.workspace_id is not None:
724
- body["workspace_id"] = self.workspace_id
725
- return body
726
-
727
- def as_shallow_dict(self) -> dict:
728
- """Serializes the MigratePermissionsRequest into a shallow dictionary of its immediate attributes."""
729
- body = {}
730
- if self.from_workspace_group_name is not None:
731
- body["from_workspace_group_name"] = self.from_workspace_group_name
732
- if self.size is not None:
733
- body["size"] = self.size
734
- if self.to_account_group_name is not None:
735
- body["to_account_group_name"] = self.to_account_group_name
736
- if self.workspace_id is not None:
737
- body["workspace_id"] = self.workspace_id
738
- return body
739
-
740
- @classmethod
741
- def from_dict(cls, d: Dict[str, Any]) -> MigratePermissionsRequest:
742
- """Deserializes the MigratePermissionsRequest from a dictionary."""
743
- return cls(
744
- from_workspace_group_name=d.get("from_workspace_group_name", None),
745
- size=d.get("size", None),
746
- to_account_group_name=d.get("to_account_group_name", None),
747
- workspace_id=d.get("workspace_id", None),
748
- )
749
-
750
-
751
700
  @dataclass
752
701
  class MigratePermissionsResponse:
753
702
  permissions_migrated: Optional[int] = None
@@ -845,48 +794,6 @@ class ObjectPermissions:
845
794
  )
846
795
 
847
796
 
848
- @dataclass
849
- class PartialUpdate:
850
- id: Optional[str] = None
851
- """Unique ID in the Databricks workspace."""
852
-
853
- operations: Optional[List[Patch]] = None
854
-
855
- schemas: Optional[List[PatchSchema]] = None
856
- """The schema of the patch request. Must be ["urn:ietf:params:scim:api:messages:2.0:PatchOp"]."""
857
-
858
- def as_dict(self) -> dict:
859
- """Serializes the PartialUpdate into a dictionary suitable for use as a JSON request body."""
860
- body = {}
861
- if self.id is not None:
862
- body["id"] = self.id
863
- if self.operations:
864
- body["Operations"] = [v.as_dict() for v in self.operations]
865
- if self.schemas:
866
- body["schemas"] = [v.value for v in self.schemas]
867
- return body
868
-
869
- def as_shallow_dict(self) -> dict:
870
- """Serializes the PartialUpdate into a shallow dictionary of its immediate attributes."""
871
- body = {}
872
- if self.id is not None:
873
- body["id"] = self.id
874
- if self.operations:
875
- body["Operations"] = self.operations
876
- if self.schemas:
877
- body["schemas"] = self.schemas
878
- return body
879
-
880
- @classmethod
881
- def from_dict(cls, d: Dict[str, Any]) -> PartialUpdate:
882
- """Deserializes the PartialUpdate from a dictionary."""
883
- return cls(
884
- id=d.get("id", None),
885
- operations=_repeated_dict(d, "Operations", Patch),
886
- schemas=_repeated_enum(d, "schemas", PatchSchema),
887
- )
888
-
889
-
890
797
  @dataclass
891
798
  class PasswordAccessControlRequest:
892
799
  group_name: Optional[str] = None
@@ -1118,30 +1025,6 @@ class PasswordPermissionsDescription:
1118
1025
  )
1119
1026
 
1120
1027
 
1121
- @dataclass
1122
- class PasswordPermissionsRequest:
1123
- access_control_list: Optional[List[PasswordAccessControlRequest]] = None
1124
-
1125
- def as_dict(self) -> dict:
1126
- """Serializes the PasswordPermissionsRequest into a dictionary suitable for use as a JSON request body."""
1127
- body = {}
1128
- if self.access_control_list:
1129
- body["access_control_list"] = [v.as_dict() for v in self.access_control_list]
1130
- return body
1131
-
1132
- def as_shallow_dict(self) -> dict:
1133
- """Serializes the PasswordPermissionsRequest into a shallow dictionary of its immediate attributes."""
1134
- body = {}
1135
- if self.access_control_list:
1136
- body["access_control_list"] = self.access_control_list
1137
- return body
1138
-
1139
- @classmethod
1140
- def from_dict(cls, d: Dict[str, Any]) -> PasswordPermissionsRequest:
1141
- """Deserializes the PasswordPermissionsRequest from a dictionary."""
1142
- return cls(access_control_list=_repeated_dict(d, "access_control_list", PasswordAccessControlRequest))
1143
-
1144
-
1145
1028
  @dataclass
1146
1029
  class Patch:
1147
1030
  op: Optional[PatchOp] = None
@@ -1764,94 +1647,6 @@ class ServicePrincipalSchema(Enum):
1764
1647
  URN_IETF_PARAMS_SCIM_SCHEMAS_CORE_2_0_SERVICE_PRINCIPAL = "urn:ietf:params:scim:schemas:core:2.0:ServicePrincipal"
1765
1648
 
1766
1649
 
1767
- @dataclass
1768
- class SetObjectPermissions:
1769
- access_control_list: Optional[List[AccessControlRequest]] = None
1770
-
1771
- request_object_id: Optional[str] = None
1772
- """The id of the request object."""
1773
-
1774
- request_object_type: Optional[str] = None
1775
- """The type of the request object. Can be one of the following: alerts, authorization, clusters,
1776
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
1777
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses."""
1778
-
1779
- def as_dict(self) -> dict:
1780
- """Serializes the SetObjectPermissions into a dictionary suitable for use as a JSON request body."""
1781
- body = {}
1782
- if self.access_control_list:
1783
- body["access_control_list"] = [v.as_dict() for v in self.access_control_list]
1784
- if self.request_object_id is not None:
1785
- body["request_object_id"] = self.request_object_id
1786
- if self.request_object_type is not None:
1787
- body["request_object_type"] = self.request_object_type
1788
- return body
1789
-
1790
- def as_shallow_dict(self) -> dict:
1791
- """Serializes the SetObjectPermissions into a shallow dictionary of its immediate attributes."""
1792
- body = {}
1793
- if self.access_control_list:
1794
- body["access_control_list"] = self.access_control_list
1795
- if self.request_object_id is not None:
1796
- body["request_object_id"] = self.request_object_id
1797
- if self.request_object_type is not None:
1798
- body["request_object_type"] = self.request_object_type
1799
- return body
1800
-
1801
- @classmethod
1802
- def from_dict(cls, d: Dict[str, Any]) -> SetObjectPermissions:
1803
- """Deserializes the SetObjectPermissions from a dictionary."""
1804
- return cls(
1805
- access_control_list=_repeated_dict(d, "access_control_list", AccessControlRequest),
1806
- request_object_id=d.get("request_object_id", None),
1807
- request_object_type=d.get("request_object_type", None),
1808
- )
1809
-
1810
-
1811
- @dataclass
1812
- class UpdateObjectPermissions:
1813
- access_control_list: Optional[List[AccessControlRequest]] = None
1814
-
1815
- request_object_id: Optional[str] = None
1816
- """The id of the request object."""
1817
-
1818
- request_object_type: Optional[str] = None
1819
- """The type of the request object. Can be one of the following: alerts, authorization, clusters,
1820
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
1821
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses."""
1822
-
1823
- def as_dict(self) -> dict:
1824
- """Serializes the UpdateObjectPermissions into a dictionary suitable for use as a JSON request body."""
1825
- body = {}
1826
- if self.access_control_list:
1827
- body["access_control_list"] = [v.as_dict() for v in self.access_control_list]
1828
- if self.request_object_id is not None:
1829
- body["request_object_id"] = self.request_object_id
1830
- if self.request_object_type is not None:
1831
- body["request_object_type"] = self.request_object_type
1832
- return body
1833
-
1834
- def as_shallow_dict(self) -> dict:
1835
- """Serializes the UpdateObjectPermissions into a shallow dictionary of its immediate attributes."""
1836
- body = {}
1837
- if self.access_control_list:
1838
- body["access_control_list"] = self.access_control_list
1839
- if self.request_object_id is not None:
1840
- body["request_object_id"] = self.request_object_id
1841
- if self.request_object_type is not None:
1842
- body["request_object_type"] = self.request_object_type
1843
- return body
1844
-
1845
- @classmethod
1846
- def from_dict(cls, d: Dict[str, Any]) -> UpdateObjectPermissions:
1847
- """Deserializes the UpdateObjectPermissions from a dictionary."""
1848
- return cls(
1849
- access_control_list=_repeated_dict(d, "access_control_list", AccessControlRequest),
1850
- request_object_id=d.get("request_object_id", None),
1851
- request_object_type=d.get("request_object_type", None),
1852
- )
1853
-
1854
-
1855
1650
  @dataclass
1856
1651
  class UpdateResponse:
1857
1652
  def as_dict(self) -> dict:
@@ -1870,84 +1665,6 @@ class UpdateResponse:
1870
1665
  return cls()
1871
1666
 
1872
1667
 
1873
- @dataclass
1874
- class UpdateRuleSetRequest:
1875
- name: str
1876
- """Name of the rule set."""
1877
-
1878
- rule_set: RuleSetUpdateRequest
1879
-
1880
- def as_dict(self) -> dict:
1881
- """Serializes the UpdateRuleSetRequest into a dictionary suitable for use as a JSON request body."""
1882
- body = {}
1883
- if self.name is not None:
1884
- body["name"] = self.name
1885
- if self.rule_set:
1886
- body["rule_set"] = self.rule_set.as_dict()
1887
- return body
1888
-
1889
- def as_shallow_dict(self) -> dict:
1890
- """Serializes the UpdateRuleSetRequest into a shallow dictionary of its immediate attributes."""
1891
- body = {}
1892
- if self.name is not None:
1893
- body["name"] = self.name
1894
- if self.rule_set:
1895
- body["rule_set"] = self.rule_set
1896
- return body
1897
-
1898
- @classmethod
1899
- def from_dict(cls, d: Dict[str, Any]) -> UpdateRuleSetRequest:
1900
- """Deserializes the UpdateRuleSetRequest from a dictionary."""
1901
- return cls(name=d.get("name", None), rule_set=_from_dict(d, "rule_set", RuleSetUpdateRequest))
1902
-
1903
-
1904
- @dataclass
1905
- class UpdateWorkspaceAssignments:
1906
- permissions: Optional[List[WorkspacePermission]] = None
1907
- """Array of permissions assignments to update on the workspace. Valid values are "USER" and "ADMIN"
1908
- (case-sensitive). If both "USER" and "ADMIN" are provided, "ADMIN" takes precedence. Other
1909
- values will be ignored. Note that excluding this field, or providing unsupported values, will
1910
- have the same effect as providing an empty list, which will result in the deletion of all
1911
- permissions for the principal."""
1912
-
1913
- principal_id: Optional[int] = None
1914
- """The ID of the user, service principal, or group."""
1915
-
1916
- workspace_id: Optional[int] = None
1917
- """The workspace ID."""
1918
-
1919
- def as_dict(self) -> dict:
1920
- """Serializes the UpdateWorkspaceAssignments into a dictionary suitable for use as a JSON request body."""
1921
- body = {}
1922
- if self.permissions:
1923
- body["permissions"] = [v.value for v in self.permissions]
1924
- if self.principal_id is not None:
1925
- body["principal_id"] = self.principal_id
1926
- if self.workspace_id is not None:
1927
- body["workspace_id"] = self.workspace_id
1928
- return body
1929
-
1930
- def as_shallow_dict(self) -> dict:
1931
- """Serializes the UpdateWorkspaceAssignments into a shallow dictionary of its immediate attributes."""
1932
- body = {}
1933
- if self.permissions:
1934
- body["permissions"] = self.permissions
1935
- if self.principal_id is not None:
1936
- body["principal_id"] = self.principal_id
1937
- if self.workspace_id is not None:
1938
- body["workspace_id"] = self.workspace_id
1939
- return body
1940
-
1941
- @classmethod
1942
- def from_dict(cls, d: Dict[str, Any]) -> UpdateWorkspaceAssignments:
1943
- """Deserializes the UpdateWorkspaceAssignments from a dictionary."""
1944
- return cls(
1945
- permissions=_repeated_enum(d, "permissions", WorkspacePermission),
1946
- principal_id=d.get("principal_id", None),
1947
- workspace_id=d.get("workspace_id", None),
1948
- )
1949
-
1950
-
1951
1668
  @dataclass
1952
1669
  class User:
1953
1670
  active: Optional[bool] = None
@@ -3608,9 +3325,10 @@ class PermissionsAPI:
3608
3325
  object.
3609
3326
 
3610
3327
  :param request_object_type: str
3611
- The type of the request object. Can be one of the following: alerts, authorization, clusters,
3612
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
3613
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses.
3328
+ The type of the request object. Can be one of the following: alerts, alertsv2, authorization,
3329
+ clusters, cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files,
3330
+ instance-pools, jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or
3331
+ warehouses.
3614
3332
  :param request_object_id: str
3615
3333
  The id of the request object.
3616
3334
 
@@ -3628,9 +3346,10 @@ class PermissionsAPI:
3628
3346
  """Gets the permission levels that a user can have on an object.
3629
3347
 
3630
3348
  :param request_object_type: str
3631
- The type of the request object. Can be one of the following: alerts, authorization, clusters,
3632
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
3633
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses.
3349
+ The type of the request object. Can be one of the following: alerts, alertsv2, authorization,
3350
+ clusters, cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files,
3351
+ instance-pools, jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or
3352
+ warehouses.
3634
3353
  :param request_object_id: str
3635
3354
 
3636
3355
  :returns: :class:`GetPermissionLevelsResponse`
@@ -3657,9 +3376,10 @@ class PermissionsAPI:
3657
3376
  object.
3658
3377
 
3659
3378
  :param request_object_type: str
3660
- The type of the request object. Can be one of the following: alerts, authorization, clusters,
3661
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
3662
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses.
3379
+ The type of the request object. Can be one of the following: alerts, alertsv2, authorization,
3380
+ clusters, cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files,
3381
+ instance-pools, jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or
3382
+ warehouses.
3663
3383
  :param request_object_id: str
3664
3384
  The id of the request object.
3665
3385
  :param access_control_list: List[:class:`AccessControlRequest`] (optional)
@@ -3690,9 +3410,10 @@ class PermissionsAPI:
3690
3410
  root object.
3691
3411
 
3692
3412
  :param request_object_type: str
3693
- The type of the request object. Can be one of the following: alerts, authorization, clusters,
3694
- cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files, instance-pools,
3695
- jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or warehouses.
3413
+ The type of the request object. Can be one of the following: alerts, alertsv2, authorization,
3414
+ clusters, cluster-policies, dashboards, dbsql-dashboards, directories, experiments, files,
3415
+ instance-pools, jobs, notebooks, pipelines, queries, registered-models, repos, serving-endpoints, or
3416
+ warehouses.
3696
3417
  :param request_object_id: str
3697
3418
  The id of the request object.
3698
3419
  :param access_control_list: List[:class:`AccessControlRequest`] (optional)