Office365-REST-Python-Client 2.5.14__py3-none-any.whl → 2.6.1__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.
Files changed (214) hide show
  1. {Office365_REST_Python_Client-2.5.14.dist-info → Office365_REST_Python_Client-2.6.1.dist-info}/METADATA +21 -30
  2. {Office365_REST_Python_Client-2.5.14.dist-info → Office365_REST_Python_Client-2.6.1.dist-info}/RECORD +210 -112
  3. office365/admin/__init__.py +0 -0
  4. office365/admin/admin.py +69 -0
  5. office365/admin/microsoft365_apps.py +5 -0
  6. office365/admin/people_settings.py +5 -0
  7. office365/admin/report_settings.py +5 -0
  8. office365/{onedrive → admin}/sharepoint.py +1 -1
  9. office365/azure_env.py +60 -0
  10. office365/directory/applications/app_ids.py +6 -0
  11. office365/directory/authentication/authentication.py +16 -0
  12. office365/directory/authentication/method_target.py +2 -1
  13. office365/directory/authentication/methods/microsoft_authenticator.py +6 -0
  14. office365/directory/authentication/methods/root.py +11 -0
  15. office365/directory/authentication/methods/sms.py +9 -0
  16. office365/directory/certificates/self_signed.py +31 -2
  17. office365/directory/identities/conditional_access_root.py +14 -0
  18. office365/directory/identitygovernance/privilegedaccess/approval.py +8 -0
  19. office365/directory/identitygovernance/privilegedaccess/group.py +30 -0
  20. office365/directory/identitygovernance/privilegedaccess/group_assignment_schedule_instance.py +7 -0
  21. office365/directory/identitygovernance/privilegedaccess/unified_role_assignment_schedule_request.py +7 -0
  22. office365/directory/identitygovernance/userconsent/request_collection.py +10 -0
  23. office365/directory/identitygovernance/workflow/__init__.py +0 -0
  24. office365/directory/identitygovernance/workflow/base.py +5 -0
  25. office365/directory/policies/cross_tenant_access.py +13 -0
  26. office365/directory/policies/feature_rollout.py +16 -0
  27. office365/directory/policies/root.py +39 -23
  28. office365/directory/policies/template.py +5 -0
  29. office365/directory/protection/threatassessment/email_file_request.py +20 -0
  30. office365/directory/protection/threatassessment/request.py +25 -0
  31. office365/directory/rolemanagement/application.py +15 -0
  32. office365/directory/rolemanagement/resource_action.py +8 -4
  33. office365/directory/rolemanagement/role_permission.py +3 -3
  34. office365/directory/security/alerts/collection.py +49 -0
  35. office365/directory/security/scorecontrol/__init__.py +0 -0
  36. office365/directory/security/scorecontrol/profile.py +6 -0
  37. office365/directory/security/security.py +17 -4
  38. office365/directory/serviceprincipals/service_principal.py +36 -28
  39. office365/directory/tenantinformation/__init__.py +0 -0
  40. office365/directory/tenantinformation/multi_organization.py +11 -0
  41. office365/directory/tenantinformation/relationship.py +61 -0
  42. office365/directory/users/insights_settings.py +5 -0
  43. office365/graph_client.py +52 -132
  44. office365/graph_request.py +78 -19
  45. office365/intune/servicecommunications/health/health.py +1 -1
  46. office365/intune/servicecommunications/issues/issue.py +2 -2
  47. office365/onedrive/columns/definition.py +1 -1
  48. office365/onedrive/contenttypes/content_type.py +1 -1
  49. office365/onedrive/driveitems/driveItem.py +13 -1
  50. office365/onedrive/drives/drive.py +1 -1
  51. office365/onedrive/filestorage/__init__.py +0 -0
  52. office365/onedrive/filestorage/container.py +7 -0
  53. office365/onedrive/filestorage/file_storage.py +20 -0
  54. office365/onedrive/listitems/field_value_set.py +1 -1
  55. office365/onedrive/listitems/list_item.py +1 -1
  56. office365/onedrive/lists/list.py +1 -1
  57. office365/onedrive/recyclebin/__init__.py +0 -0
  58. office365/onedrive/recyclebin/item.py +6 -0
  59. office365/onedrive/recyclebin/recyclebin.py +29 -0
  60. office365/onedrive/recyclebin/settings.py +13 -0
  61. office365/onedrive/shares/drive_item.py +1 -1
  62. office365/onedrive/sitepages/base.py +1 -1
  63. office365/onedrive/sitepages/canvas_layout.py +2 -2
  64. office365/onedrive/sitepages/sections/__init__.py +0 -0
  65. office365/onedrive/sitepages/{horizontal_section.py → sections/horizontal.py} +1 -1
  66. office365/onedrive/sitepages/webparts/data.py +5 -0
  67. office365/onedrive/sitepages/webparts/position.py +5 -0
  68. office365/onedrive/sitepages/webparts/standard.py +9 -0
  69. office365/onedrive/sitepages/webparts/web_part.py +12 -0
  70. office365/onedrive/sites/site.py +1 -1
  71. office365/onedrive/storage/storage.py +10 -0
  72. office365/onedrive/workbooks/charts/axes.py +41 -1
  73. office365/onedrive/workbooks/charts/axis.py +5 -0
  74. office365/onedrive/workbooks/charts/chart.py +64 -5
  75. office365/onedrive/workbooks/charts/fill.py +5 -0
  76. office365/onedrive/workbooks/charts/font.py +5 -0
  77. office365/onedrive/workbooks/charts/legend/__init__.py +0 -0
  78. office365/onedrive/workbooks/charts/legend/format.py +5 -0
  79. office365/onedrive/workbooks/charts/legend/legend.py +26 -0
  80. office365/onedrive/workbooks/charts/point.py +5 -0
  81. office365/onedrive/workbooks/charts/series/__init__.py +0 -0
  82. office365/onedrive/workbooks/charts/series/format.py +5 -0
  83. office365/onedrive/workbooks/charts/series/series.py +31 -0
  84. office365/onedrive/workbooks/charts/title.py +5 -0
  85. office365/onedrive/workbooks/filter.py +10 -0
  86. office365/onedrive/workbooks/filter_criteria.py +3 -3
  87. office365/onedrive/workbooks/ranges/fill.py +11 -1
  88. office365/onedrive/workbooks/ranges/range.py +26 -0
  89. office365/onedrive/workbooks/ranges/view.py +14 -0
  90. office365/onedrive/workbooks/sort_field.py +8 -3
  91. office365/onedrive/workbooks/tables/sort.py +20 -0
  92. office365/onedrive/workbooks/worksheets/worksheet.py +11 -0
  93. office365/partners/billing/azure_usage.py +17 -0
  94. office365/partners/billing/billed_usage.py +21 -0
  95. office365/partners/billing/billing.py +17 -0
  96. office365/partners/billing/operation.py +5 -0
  97. office365/partners/partners.py +17 -0
  98. office365/reports/root.py +9 -0
  99. office365/reports/userregistration/feature_summary.py +5 -0
  100. office365/runtime/auth/auth_cookies.py +48 -0
  101. office365/runtime/auth/authentication_context.py +36 -19
  102. office365/runtime/auth/entra/__init__.py +0 -0
  103. office365/runtime/auth/entra/authentication_context.py +165 -0
  104. office365/runtime/auth/providers/acs_token_provider.py +12 -27
  105. office365/runtime/auth/providers/saml_token_provider.py +46 -67
  106. office365/runtime/auth/sts_profile.py +37 -22
  107. office365/runtime/auth/token_response.py +4 -0
  108. office365/sharepoint/administration/custom_fonts_resource.py +5 -0
  109. office365/sharepoint/administration/sitemove/__init__.py +0 -0
  110. office365/sharepoint/administration/sitemove/service.py +68 -0
  111. office365/sharepoint/administration/sitemove/service_info.py +11 -0
  112. office365/sharepoint/changes/item.py +15 -0
  113. office365/sharepoint/client_context.py +61 -37
  114. office365/sharepoint/directory/group.py +2 -0
  115. office365/sharepoint/directory/helper.py +2 -0
  116. office365/sharepoint/directory/provider/provider.py +6 -0
  117. office365/sharepoint/directory/user.py +20 -0
  118. office365/sharepoint/files/publish/__init__.py +0 -0
  119. office365/sharepoint/files/publish/status.py +9 -0
  120. office365/sharepoint/flows/connector_result.py +17 -0
  121. office365/sharepoint/flows/permissions.py +11 -7
  122. office365/sharepoint/fontpackages/__init__.py +0 -0
  123. office365/sharepoint/fontpackages/collection.py +26 -0
  124. office365/sharepoint/fontpackages/creation_parameters.py +5 -0
  125. office365/sharepoint/fontpackages/font_package.py +5 -0
  126. office365/sharepoint/fontpackages/oob_settings.py +5 -0
  127. office365/sharepoint/forms/customization.py +26 -0
  128. office365/sharepoint/ir/__init__.py +0 -0
  129. office365/sharepoint/ir/migration.py +5 -0
  130. office365/sharepoint/lists/list.py +30 -0
  131. office365/sharepoint/marketplace/app_metadata.py +12 -1
  132. office365/sharepoint/marketplace/app_metadata_collection.py +8 -0
  133. office365/sharepoint/marketplace/corporatecuratedgallery/addins/instance_info.py +22 -0
  134. office365/sharepoint/marketplace/corporatecuratedgallery/addins/permission_failed_info.py +5 -0
  135. office365/sharepoint/marketplace/corporatecuratedgallery/addins/permission_info.py +12 -0
  136. office365/sharepoint/marketplace/corporatecuratedgallery/addins/permission_response.py +15 -0
  137. office365/sharepoint/marketplace/corporatecuratedgallery/addins/principals_response.py +5 -0
  138. office365/sharepoint/marketplace/corporatecuratedgallery/app_request_information.py +9 -0
  139. office365/sharepoint/marketplace/corporatecuratedgallery/app_response_information.py +9 -0
  140. office365/sharepoint/marketplace/corporatecuratedgallery/available_addins_response.py +4 -0
  141. office365/sharepoint/marketplace/corporatecuratedgallery/card_design.py +9 -0
  142. office365/sharepoint/marketplace/corporatecuratedgallery/card_designs.py +9 -0
  143. office365/sharepoint/marketplace/corporatecuratedgallery/teams_package_download.py +14 -0
  144. office365/sharepoint/marketplace/tenant/appcatalog/accessor.py +62 -3
  145. office365/sharepoint/multigeo/services.py +14 -0
  146. office365/sharepoint/multigeo/storage_quota.py +9 -0
  147. office365/sharepoint/policy/license_utilities.py +27 -0
  148. office365/sharepoint/principal/principal.py +6 -0
  149. office365/sharepoint/request.py +95 -10
  150. office365/sharepoint/search/administration/document_crawl_log.py +16 -2
  151. office365/sharepoint/search/administration/tenant_crawl_versions_info_provider.py +1 -1
  152. office365/sharepoint/search/reports/abandoned_queries.py +11 -1
  153. office365/sharepoint/search/reports/abandonedqueries/item.py +7 -1
  154. office365/sharepoint/sharing/domain_restriction_settings.py +5 -0
  155. office365/sharepoint/sharing/information.py +12 -0
  156. office365/sharepoint/sitehealth/result.py +4 -4
  157. office365/sharepoint/sitehealth/summary.py +5 -5
  158. office365/sharepoint/sites/copy_job_progress.py +5 -0
  159. office365/sharepoint/sites/copy_migration_iInfo.py +5 -0
  160. office365/sharepoint/sites/home/__init__.py +0 -0
  161. office365/sharepoint/sites/{sph_site.py → home/site.py} +1 -1
  162. office365/sharepoint/sites/site.py +26 -1
  163. office365/sharepoint/tenant/administration/app_service_principal_public.py +17 -0
  164. office365/sharepoint/tenant/administration/audit/data.py +12 -0
  165. office365/sharepoint/tenant/administration/audit/unified_record.py +18 -0
  166. office365/sharepoint/tenant/administration/coms/__init__.py +0 -0
  167. office365/sharepoint/tenant/administration/coms/messages_fields_data.py +5 -0
  168. office365/sharepoint/tenant/administration/coms/messages_service_proxy.py +16 -0
  169. office365/sharepoint/tenant/administration/copilot/__init__.py +0 -0
  170. office365/sharepoint/tenant/administration/copilot/adaptive_card_config.py +11 -0
  171. office365/sharepoint/tenant/administration/datagovernance/__init__.py +0 -0
  172. office365/sharepoint/tenant/administration/datagovernance/client_base.py +9 -0
  173. office365/sharepoint/tenant/administration/datagovernance/insight_client.py +82 -0
  174. office365/sharepoint/tenant/administration/datagovernance/insight_metadata.py +5 -0
  175. office365/sharepoint/tenant/administration/default_time_zone_id.py +11 -0
  176. office365/sharepoint/tenant/administration/endpoints.py +53 -2
  177. office365/sharepoint/tenant/administration/insights/onedrive_site_sharing.py +4 -0
  178. office365/sharepoint/tenant/administration/internal/appservice/permission_request.py +4 -0
  179. office365/sharepoint/tenant/administration/malware/__init__.py +0 -0
  180. office365/sharepoint/tenant/administration/malware/file.py +18 -0
  181. office365/sharepoint/tenant/administration/modified_property.py +5 -0
  182. office365/sharepoint/tenant/administration/policies/content_security_configuration.py +9 -0
  183. office365/sharepoint/tenant/administration/recent_action.py +9 -0
  184. office365/sharepoint/tenant/administration/reports/__init__.py +0 -0
  185. office365/sharepoint/tenant/administration/settings_service.py +38 -5
  186. office365/sharepoint/tenant/administration/sites/properties.py +78 -0
  187. office365/sharepoint/tenant/administration/sites/properties_collection.py +19 -0
  188. office365/sharepoint/tenant/administration/tenant.py +134 -7
  189. office365/sharepoint/tenant/administration/types.py +76 -1
  190. office365/sharepoint/tenant/insights/report_manager.py +29 -0
  191. office365/sharepoint/tenant/management/office365_tenant.py +7 -4
  192. office365/sharepoint/translation/job_status.py +22 -0
  193. office365/sharepoint/userprofiles/user_profile.py +6 -0
  194. office365/sharepoint/webparts/tile_data.py +21 -0
  195. office365/sharepoint/webs/dataleakage_prevention_status_info.py +5 -0
  196. office365/sharepoint/webs/web.py +80 -1
  197. office365/teams/chats/event_message_detail.py +8 -0
  198. office365/teams/deleted.py +24 -0
  199. office365/teams/work.py +35 -0
  200. office365/directory/tenant_relationship.py +0 -23
  201. office365/onedrive/admin.py +0 -32
  202. office365/onedrive/workbooks/charts/legend.py +0 -7
  203. office365/onedrive/workbooks/charts/series.py +0 -5
  204. {Office365_REST_Python_Client-2.5.14.dist-info → Office365_REST_Python_Client-2.6.1.dist-info}/LICENSE +0 -0
  205. {Office365_REST_Python_Client-2.5.14.dist-info → Office365_REST_Python_Client-2.6.1.dist-info}/WHEEL +0 -0
  206. {Office365_REST_Python_Client-2.5.14.dist-info → Office365_REST_Python_Client-2.6.1.dist-info}/top_level.txt +0 -0
  207. /office365/{onedrive → admin}/sharepoint_settings.py +0 -0
  208. /office365/directory/{tenant_information.py → tenantinformation/information.py} +0 -0
  209. /office365/{base_item.py → onedrive/base_item.py} +0 -0
  210. /office365/onedrive/sitepages/{horizontal_section_column.py → sections/horizontal_column.py} +0 -0
  211. /office365/onedrive/sitepages/{vertical_section.py → sections/vertical.py} +0 -0
  212. /office365/sharepoint/sites/{home_sites_details.py → home/details.py} +0 -0
  213. /office365/sharepoint/sites/{home_site_reference.py → home/reference.py} +0 -0
  214. /office365/sharepoint/tenant/administration/{app_billing_properties.py → policies/app_billing_properties.py} +0 -0
@@ -17,11 +17,8 @@ from office365.sharepoint.lists.render_override_parameters import (
17
17
  RenderListDataOverrideParameters,
18
18
  )
19
19
  from office365.sharepoint.publishing.portal_health_status import PortalHealthStatus
20
- from office365.sharepoint.sites.home_sites_details import HomeSitesDetails
20
+ from office365.sharepoint.sites.home.details import HomeSitesDetails
21
21
  from office365.sharepoint.sites.site import Site
22
- from office365.sharepoint.tenant.administration.app_billing_properties import (
23
- SPOAppBillingProperties,
24
- )
25
22
  from office365.sharepoint.tenant.administration.collaboration.insights_data import (
26
23
  CollaborationInsightsData,
27
24
  )
@@ -37,6 +34,9 @@ from office365.sharepoint.tenant.administration.insights.onedrive_site_sharing i
37
34
  from office365.sharepoint.tenant.administration.insights.top_files_sharing import (
38
35
  TopFilesSharingInsights,
39
36
  )
37
+ from office365.sharepoint.tenant.administration.policies.app_billing_properties import (
38
+ SPOAppBillingProperties,
39
+ )
40
40
  from office365.sharepoint.tenant.administration.policies.definition import (
41
41
  TenantAdminPolicyDefinition,
42
42
  )
@@ -209,6 +209,7 @@ class Tenant(Entity):
209
209
  return return_type
210
210
 
211
211
  def render_recent_admin_actions(self):
212
+ """ """
212
213
  return_type = ClientResult(self.context)
213
214
  payload = {
214
215
  "parameters": RenderListDataParameters(),
@@ -220,8 +221,20 @@ class Tenant(Entity):
220
221
  self.context.add_query(qry)
221
222
  return return_type
222
223
 
223
- def get_top_files_sharing_insights(self, query_mode):
224
+ def get_spo_app_billing_policies(self):
225
+ """ """
226
+ return_type = ClientResult(
227
+ self.context, ClientValueCollection(SPOAppBillingProperties)
228
+ )
229
+ qry = ServiceOperationQuery(
230
+ self, "GetSPOAppBillingPolicies", None, None, None, return_type
231
+ )
232
+ self.context.add_query(qry)
233
+ return return_type
234
+
235
+ def get_top_files_sharing_insights(self, query_mode=None):
224
236
  """
237
+ Retrieves a report or data about the most shared files within a SharePoint Online tenant
225
238
  :param int query_mode:
226
239
  """
227
240
  payload = {"queryMode": query_mode}
@@ -385,6 +398,33 @@ class Tenant(Entity):
385
398
  self.context.add_query(qry)
386
399
  return return_type
387
400
 
401
+ def get_site_authorization_code_for_migration(self, endpoint_url):
402
+ return_type = ClientResult(self.context, str())
403
+ payload = {"endpointUrl": endpoint_url}
404
+ qry = ServiceOperationQuery(
405
+ self,
406
+ "GetSiteAuthorizationCodeForMigration",
407
+ None,
408
+ payload,
409
+ None,
410
+ return_type,
411
+ )
412
+ self.context.add_query(qry)
413
+ return return_type
414
+
415
+ def get_site_subscription_id(self):
416
+ return_type = ClientResult(self.context, str())
417
+ qry = ServiceOperationQuery(
418
+ self,
419
+ "GetSiteSubscriptionId",
420
+ None,
421
+ None,
422
+ None,
423
+ return_type,
424
+ )
425
+ self.context.add_query(qry)
426
+ return return_type
427
+
388
428
  def get_sp_list_item_count(self, list_name):
389
429
  # type: (str) -> ClientResult[int]
390
430
  """ """
@@ -489,6 +529,7 @@ class Tenant(Entity):
489
529
 
490
530
  def get_site_health_status(self, source_url):
491
531
  """
532
+ Checks the sitehealth of a specific SharePoint site or site collection in their tenant
492
533
  :type source_url: str
493
534
  """
494
535
  result = ClientResult(self.context, PortalHealthStatus())
@@ -649,6 +690,7 @@ class Tenant(Entity):
649
690
 
650
691
  def reorder_home_sites(self, home_sites_site_ids):
651
692
  """
693
+ Reorders Home Sites within a SharePoint Online tenant
652
694
  :param list[str] home_sites_site_ids:
653
695
  """
654
696
  payload = {"homeSitesSiteIds": home_sites_site_ids}
@@ -672,6 +714,22 @@ class Tenant(Entity):
672
714
  self.context.add_query(qry)
673
715
  return return_type
674
716
 
717
+ def get_site_properties_by_site_id(self, site_id, include_detail=False):
718
+ # type: (str, bool) -> SiteProperties
719
+ """
720
+ :param str site_id: A string that represents the site identifier.
721
+ :param bool include_detail: A Boolean value that indicates whether to include all of the SPSite properties.
722
+ """
723
+ return_type = SiteProperties(self.context)
724
+ return_type.set_property("siteId", site_id, False)
725
+ self.sites.add_child(return_type)
726
+ payload = {"siteId": site_id, "includeDetail": include_detail}
727
+ qry = ServiceOperationQuery(
728
+ self, "GetSitePropertiesBySiteId", None, payload, None, return_type
729
+ )
730
+ self.context.add_query(qry)
731
+ return return_type
732
+
675
733
  def get_site_properties_by_url(self, url, include_detail=False):
676
734
  # type: (str, bool) -> SiteProperties
677
735
  """
@@ -751,7 +809,7 @@ class Tenant(Entity):
751
809
 
752
810
  @property
753
811
  def admin_settings(self):
754
- """ """
812
+ """Manage various tenant-level settings related to SharePoint administration"""
755
813
  from office365.sharepoint.tenant.administration.settings_service import (
756
814
  TenantAdminSettingsService,
757
815
  )
@@ -767,6 +825,24 @@ class Tenant(Entity):
767
825
 
768
826
  return MigrationCenterServices(self.context)
769
827
 
828
+ @property
829
+ def comms_messages(self):
830
+ """ """
831
+
832
+ from office365.sharepoint.tenant.administration.coms.messages_service_proxy import (
833
+ Office365CommsMessagesServiceProxy,
834
+ )
835
+
836
+ return Office365CommsMessagesServiceProxy(self.context)
837
+
838
+ @property
839
+ def multi_geo(self):
840
+ """ """
841
+
842
+ from office365.sharepoint.multigeo.services import MultiGeoServices
843
+
844
+ return MultiGeoServices(self.context)
845
+
770
846
  @property
771
847
  def ai_builder_enabled(self):
772
848
  # type: () -> Optional[str]
@@ -782,6 +858,7 @@ class Tenant(Entity):
782
858
 
783
859
  @property
784
860
  def _aggregated_site_collections_list(self):
861
+ """ """
785
862
  return self.context.web.lists.get_by_title(
786
863
  "DO_NOT_DELETE_SPLIST_TENANTADMIN_AGGREGATED_SITECOLLECTIONS"
787
864
  )
@@ -820,6 +897,34 @@ class Tenant(Entity):
820
897
  """"""
821
898
  return self.properties.get("DefaultContentCenterSite", SiteInfoForSitePicker())
822
899
 
900
+ @property
901
+ def information_barriers_suspension(self):
902
+ # type: () -> Optional[bool]
903
+ """Gets information barriers in SharePoint and OneDrive in your organization"""
904
+ return self.properties.get("InformationBarriersSuspension", None)
905
+
906
+ @property
907
+ def ip_address_allow_list(self):
908
+ # type: () -> Optional[str]
909
+ """Configures multiple IP addresses or IP address ranges (IPv4 or IPv6), that are recognized as trusted."""
910
+ return self.properties.get("IPAddressAllowList", None)
911
+
912
+ @property
913
+ def ip_address_enforcement(self):
914
+ # type: () -> Optional[bool]
915
+ """Determines whether access from network locations that are defined by an administrator is allowed."""
916
+ return self.properties.get("IPAddressEnforcement", None)
917
+
918
+ @ip_address_enforcement.setter
919
+ def ip_address_enforcement(self, value):
920
+ # type: (bool) -> None
921
+ """
922
+ Allows access from network locations that are defined by an administrator.
923
+ Before the IPAddressEnforcement parameter is set, make sure you add a valid IPv4 or IPv6 address to the
924
+ IPAddressAllowList parameter.
925
+ """
926
+ self.set_property("IPAddressEnforcement", value)
927
+
823
928
  @property
824
929
  def no_access_redirect_url(self):
825
930
  # type: () -> Optional[bool]
@@ -873,17 +978,39 @@ class Tenant(Entity):
873
978
 
874
979
  @property
875
980
  def cdn_api(self):
981
+ """ """
876
982
  from office365.sharepoint.tenant.cdn_api import TenantCdnApi
877
983
 
878
984
  return TenantCdnApi(self.context)
879
985
 
986
+ @property
987
+ def crawl_versions_info_provider(self):
988
+ """Retrieves information about crawl versions for a tenant in SharePoint"""
989
+
990
+ from office365.sharepoint.search.administration.tenant_crawl_versions_info_provider import (
991
+ TenantCrawlVersionsInfoProvider,
992
+ )
993
+
994
+ return TenantCrawlVersionsInfoProvider(self.context)
995
+
880
996
  @property
881
997
  def syntex_billing_subscription_settings(self):
882
- """"""
998
+ """
999
+ Manages billing and subscription details for Microsoft Syntex in SharePoint Online or Microsoft 365 environments
1000
+ """
883
1001
  return self.properties.get(
884
1002
  "SyntexBillingSubscriptionSettings", SyntexBillingContext()
885
1003
  )
886
1004
 
1005
+ @property
1006
+ def admin_endpoints(self):
1007
+ """ """
1008
+ from office365.sharepoint.tenant.administration.endpoints import (
1009
+ TenantAdminEndpoints,
1010
+ )
1011
+
1012
+ return TenantAdminEndpoints(self.context)
1013
+
887
1014
  @property
888
1015
  def entity_type_name(self):
889
1016
  return "Microsoft.Online.SharePoint.TenantAdministration.Tenant"
@@ -4,6 +4,50 @@ from office365.runtime.client_value import ClientValue
4
4
  class DisableGroupify(ClientValue):
5
5
  """ """
6
6
 
7
+ def __init__(self, is_read_only=None, value=None):
8
+ # type: (bool, bool) -> None
9
+ self.IsReadOnly = is_read_only
10
+ self.Value = value
11
+
12
+ def __repr__(self):
13
+ return f"(IsReadOnly={self.IsReadOnly}, Value={self.Value})"
14
+
15
+ @property
16
+ def entity_type_name(self):
17
+ return "Microsoft.Online.SharePoint.TenantAdministration.DisableGroupify"
18
+
19
+
20
+ class EnableAutoNewsDigest(ClientValue):
21
+ """ """
22
+
23
+ def __init__(self, is_read_only=None, value=None):
24
+ # type: (bool, bool) -> None
25
+ self.IsReadOnly = is_read_only
26
+ self.Value = value
27
+
28
+ def __repr__(self):
29
+ return f"(IsReadOnly={self.IsReadOnly}, Value={self.Value})"
30
+
31
+ @property
32
+ def entity_type_name(self):
33
+ return "Microsoft.Online.SharePoint.TenantAdministration.EnableAutoNewsDigest"
34
+
35
+
36
+ class DisableSelfServiceSiteCreation(ClientValue):
37
+ """ """
38
+
39
+ def __init__(self, is_read_only=None, value=None):
40
+ # type: (bool, bool) -> None
41
+ self.IsReadOnly = is_read_only
42
+ self.Value = value
43
+
44
+ def __repr__(self):
45
+ return f"(IsReadOnly={self.IsReadOnly}, Value={self.Value})"
46
+
47
+ @property
48
+ def entity_type_name(self):
49
+ return "Microsoft.Online.SharePoint.TenantAdministration.DisableSelfServiceSiteCreation"
50
+
7
51
 
8
52
  class AutoQuotaEnabled(ClientValue):
9
53
  """Automatic quota management type"""
@@ -12,6 +56,9 @@ class AutoQuotaEnabled(ClientValue):
12
56
  self.IsReadOnly = is_read_only
13
57
  self.Value = value
14
58
 
59
+ def __repr__(self):
60
+ return f"(IsReadOnly={self.IsReadOnly}, Value={self.Value})"
61
+
15
62
  @property
16
63
  def entity_type_name(self):
17
64
  return "Microsoft.Online.SharePoint.TenantAdministration.AutoQuotaEnabled"
@@ -20,13 +67,41 @@ class AutoQuotaEnabled(ClientValue):
20
67
  class CreatePolicyRequest(ClientValue):
21
68
  """ """
22
69
 
23
- def __init__(self, is_preview_run=None, policy_custom_name=None):
70
+ def __init__(
71
+ self,
72
+ is_preview_run=None,
73
+ policy_custom_name=None,
74
+ policy_definition_details=None,
75
+ policy_description=None,
76
+ policy_frequency_unit=None,
77
+ policy_frequency_value=None,
78
+ policy_id=None,
79
+ policy_tags=None,
80
+ policy_template=None,
81
+ policy_type=None,
82
+ ):
24
83
  """
25
84
  :param bool is_preview_run:
26
85
  :param str policy_custom_name:
86
+ :param str policy_definition_details:
87
+ :param str policy_description:
88
+ :param int policy_frequency_unit:
89
+ :param int policy_frequency_value:
90
+ :param str policy_id:
91
+ :param str policy_tags:
92
+ :param str policy_template:
93
+ :param int policy_type:
27
94
  """
28
95
  self.isPreviewRun = is_preview_run
29
96
  self.policyCustomName = policy_custom_name
97
+ self.policyDefinitionDetails = policy_definition_details
98
+ self.policyDescription = policy_description
99
+ self.policyFrequencyUnit = policy_frequency_unit
100
+ self.policyFrequencyValue = policy_frequency_value
101
+ self.policyId = policy_id
102
+ self.policyTags = policy_tags
103
+ self.policyTemplate = policy_template
104
+ self.policyType = policy_type
30
105
 
31
106
  @property
32
107
  def entity_type_name(self):
@@ -1,5 +1,34 @@
1
+ from office365.runtime.paths.resource_path import ResourcePath
2
+ from office365.runtime.queries.service_operation import ServiceOperationQuery
1
3
  from office365.sharepoint.entity import Entity
4
+ from office365.sharepoint.tenant.insights.report_metadata import (
5
+ SPTenantIBInsightsReportMetadata,
6
+ )
2
7
 
3
8
 
4
9
  class SPTenantIBInsightsReportManager(Entity):
5
10
  """ """
11
+
12
+ def __init__(self, context):
13
+ static_path = ResourcePath(
14
+ "Microsoft.SharePoint.Insights.SPTenantIBInsightsReportManager"
15
+ )
16
+ super(SPTenantIBInsightsReportManager, self).__init__(context, static_path)
17
+
18
+ def create_report(self):
19
+ """"""
20
+ return_type = SPTenantIBInsightsReportMetadata(self.context)
21
+ qry = ServiceOperationQuery(
22
+ self,
23
+ "CreateReport",
24
+ None,
25
+ None,
26
+ None,
27
+ return_type,
28
+ )
29
+ self.context.add_query(qry)
30
+ return return_type
31
+
32
+ @property
33
+ def entity_type_name(self):
34
+ return "Microsoft.SharePoint.Insights.SPTenantIBInsightsReportManager"
@@ -107,14 +107,17 @@ class Office365Tenant(Entity):
107
107
  return return_type
108
108
 
109
109
  def set_block_download_file_type_policy_data(
110
- self, blockDownloadFileTypePolicy, fileTypeIds, excludedBlockDownloadGroupIds
110
+ self,
111
+ block_download_file_type_policy,
112
+ file_type_ids,
113
+ excluded_block_download_group_ids,
111
114
  ):
112
115
  # type: (bool, list[int], list[str]) -> Self
113
116
  """"""
114
117
  payload = {
115
- "blockDownloadFileTypePolicy": blockDownloadFileTypePolicy,
116
- "fileTypeIds": fileTypeIds,
117
- "excludedBlockDownloadGroupIds": excludedBlockDownloadGroupIds,
118
+ "blockDownloadFileTypePolicy": block_download_file_type_policy,
119
+ "fileTypeIds": file_type_ids,
120
+ "excludedBlockDownloadGroupIds": excluded_block_download_group_ids,
118
121
  }
119
122
  qry = ServiceOperationQuery(
120
123
  self, "SetBlockDownloadFileTypePolicyData", None, payload
@@ -1,4 +1,8 @@
1
+ from office365.runtime.client_result import ClientResult
2
+ from office365.runtime.client_value_collection import ClientValueCollection
3
+ from office365.runtime.queries.service_operation import ServiceOperationQuery
1
4
  from office365.sharepoint.entity import Entity
5
+ from office365.sharepoint.translation.job_info import TranslationJobInfo
2
6
 
3
7
 
4
8
  class TranslationJobStatus(Entity):
@@ -7,6 +11,24 @@ class TranslationJobStatus(Entity):
7
11
  TranslationJobInfo (section 3.1.5.4) and TranslationItemInfo (section 3.1.5.2) objects.
8
12
  """
9
13
 
14
+ @staticmethod
15
+ def get_all_jobs(context, return_type=None):
16
+ if return_type is None:
17
+ return_type = ClientResult(
18
+ context, ClientValueCollection(TranslationJobInfo)
19
+ )
20
+ qry = ServiceOperationQuery(
21
+ TranslationJobStatus(context),
22
+ "GetAllJobs",
23
+ None,
24
+ None,
25
+ None,
26
+ return_type,
27
+ True,
28
+ )
29
+ context.add_query(qry)
30
+ return return_type
31
+
10
32
  @property
11
33
  def entity_type_name(self):
12
34
  return "SP.Translation.TranslationJobStatus"
@@ -107,6 +107,12 @@ class UserProfile(Entity):
107
107
  """Specifies the time for the personal site first creation attempt."""
108
108
  return self.properties.get("PersonalSiteFirstCreationTime", datetime.min)
109
109
 
110
+ @property
111
+ def picture_url(self):
112
+ # type: () -> Optional[str]
113
+ """Specifies the photo URL for the current user."""
114
+ return self.properties.get("PictureUrl", None)
115
+
110
116
  @property
111
117
  def public_url(self):
112
118
  # type: () -> Optional[str]
@@ -1,5 +1,26 @@
1
1
  from office365.runtime.client_value import ClientValue
2
+ from office365.runtime.types.collections import StringCollection
2
3
 
3
4
 
4
5
  class TileData(ClientValue):
5
6
  """Represents a Tile that describes a graphical link the user can click."""
7
+
8
+ def __init__(
9
+ self,
10
+ background_collage_image_locations=None,
11
+ background_image_location=None,
12
+ background_image_renders_as_icon=None,
13
+ body_text=None,
14
+ description=None,
15
+ hover_disabled=None,
16
+ id_=None,
17
+ ):
18
+ self.BackgroundCollageImageLocations = StringCollection(
19
+ background_collage_image_locations
20
+ )
21
+ self.BackgroundImageLocation = background_image_location
22
+ self.BackgroundImageRendersAsIcon = background_image_renders_as_icon
23
+ self.BodyText = body_text
24
+ self.Description = description
25
+ self.HoverDisabled = hover_disabled
26
+ self.ID = id_
@@ -0,0 +1,5 @@
1
+ from office365.sharepoint.entity import Entity
2
+
3
+
4
+ class SPDataLeakagePreventionStatusInfo(Entity):
5
+ """"""
@@ -55,6 +55,9 @@ from office365.sharepoint.lists.list import List
55
55
  from office365.sharepoint.lists.render_data_parameters import RenderListDataParameters
56
56
  from office365.sharepoint.lists.template_collection import ListTemplateCollection
57
57
  from office365.sharepoint.lists.template_type import ListTemplateType
58
+ from office365.sharepoint.marketplace.corporatecuratedgallery.addins.principals_response import (
59
+ SPGetAddinPrincipalsResponse,
60
+ )
58
61
  from office365.sharepoint.marketplace.corporatecuratedgallery.available_addins_response import (
59
62
  SPAvailableAddinsResponse,
60
63
  )
@@ -103,6 +106,9 @@ from office365.sharepoint.views.view import View
103
106
  from office365.sharepoint.webparts.client.collection import ClientWebPartCollection
104
107
  from office365.sharepoint.webs.calendar_type import CalendarType
105
108
  from office365.sharepoint.webs.context_web_information import ContextWebInformation
109
+ from office365.sharepoint.webs.dataleakage_prevention_status_info import (
110
+ SPDataLeakagePreventionStatusInfo,
111
+ )
106
112
  from office365.sharepoint.webs.information_collection import WebInformationCollection
107
113
  from office365.sharepoint.webs.modernize_homepage_result import ModernizeHomepageResult
108
114
  from office365.sharepoint.webs.multilingual_settings import MultilingualSettings
@@ -264,7 +270,8 @@ class Web(SecurableObject):
264
270
  :param str view_xml:
265
271
  """
266
272
  if view_xml is None:
267
- view_xml = "<View><Query></Query></View>"
273
+ view_xml = RenderListDataParameters()
274
+ view_xml.ViewXml = "<View><Query></Query></View>"
268
275
  return List.get_onedrive_list_data_as_stream(self.context, view_xml)
269
276
 
270
277
  def get_list_operation(self, list_id, operation_id):
@@ -536,6 +543,26 @@ class Web(SecurableObject):
536
543
  self.context.add_query(qry)
537
544
  return return_type
538
545
 
546
+ def get_addin_principals_having_permissions_in_sites(
547
+ self, server_relative_urls=None, urls=None
548
+ ):
549
+ """
550
+ :param list[str] server_relative_urls:
551
+ :param list[str] urls:
552
+ """
553
+ payload = {"serverRelativeUrls": server_relative_urls, "urls": urls}
554
+ return_type = ClientResult(self.context, SPGetAddinPrincipalsResponse())
555
+ qry = ServiceOperationQuery(
556
+ self,
557
+ "GetAddinPrincipalsHavingPermissionsInSites",
558
+ None,
559
+ payload,
560
+ None,
561
+ return_type,
562
+ )
563
+ self.context.add_query(qry)
564
+ return return_type
565
+
539
566
  def get_app_bdc_catalog(self):
540
567
  """
541
568
  Returns the Business Data Connectivity (BDC) MetadataCatalog for an application that gives access to the
@@ -641,6 +668,42 @@ class Web(SecurableObject):
641
668
  self.context.add_query(qry)
642
669
  return return_type
643
670
 
671
+ def get_recycle_bin_items_by_query_info(
672
+ self,
673
+ is_ascending=True,
674
+ item_state=None,
675
+ order_by=None,
676
+ paging_info=None,
677
+ row_limit=100,
678
+ show_only_my_items=False,
679
+ ):
680
+ """
681
+ Gets the recycle bin items that are based on the specified query.
682
+
683
+ :param str paging_info: an Object that is used to obtain the next set of rows in a paged view of the Recycle Bin
684
+ :param int row_limit: a limit for the number of items returned in the query per page.
685
+ :param bool is_ascending: a Boolean value that specifies whether to sort in ascending order.
686
+ :param int order_by: the column by which to order the Recycle Bin query.
687
+ :param int item_state: Recycle Bin stage of items to return in the query.
688
+ :param bool show_only_my_items:
689
+ """
690
+ return_type = RecycleBinItemCollection(
691
+ self.context, self.recycle_bin.resource_path
692
+ )
693
+ payload = {
694
+ "rowLimit": row_limit,
695
+ "isAscending": is_ascending,
696
+ "pagingInfo": paging_info,
697
+ "orderBy": order_by,
698
+ "itemState": item_state,
699
+ "ShowOnlyMyItems": show_only_my_items,
700
+ }
701
+ qry = ServiceOperationQuery(
702
+ self, "GetRecycleBinItemsByQueryInfo", None, payload, None, return_type
703
+ )
704
+ self.context.add_query(qry)
705
+ return return_type
706
+
644
707
  def get_all_webs(self):
645
708
  """Returns a collection containing a flat list of all Web objects in the Web."""
646
709
  from office365.sharepoint.webs.collection import WebCollection
@@ -2197,6 +2260,16 @@ class Web(SecurableObject):
2197
2260
  """
2198
2261
  return self.properties.get("Configuration", None)
2199
2262
 
2263
+ @property
2264
+ def data_leakage_prevention_status_info(self):
2265
+ return self.properties.get(
2266
+ "DataLeakagePreventionStatusInfo",
2267
+ SPDataLeakagePreventionStatusInfo(
2268
+ self.context,
2269
+ ResourcePath("DataLeakagePreventionStatusInfo", self.resource_path),
2270
+ ),
2271
+ )
2272
+
2200
2273
  @property
2201
2274
  def description_resource(self):
2202
2275
  """A UserResource object that represents the description of this web."""
@@ -2562,6 +2635,11 @@ class Web(SecurableObject):
2562
2635
  """Specifies whether the tree view is enabled on the site"""
2563
2636
  return self.properties.get("TreeViewEnabled", None)
2564
2637
 
2638
+ @property
2639
+ def taxonomy_list(self):
2640
+ """A special list that stores the mapping between taxonomy term IDs and their corresponding values"""
2641
+ return self.lists.get_by_title("TaxonomyHiddenList")
2642
+
2565
2643
  def get_property(self, name, default_value=None):
2566
2644
  if default_value is None:
2567
2645
  property_mapping = {
@@ -2575,6 +2653,7 @@ class Web(SecurableObject):
2575
2653
  "ContentTypes": self.content_types,
2576
2654
  "ClientWebParts": self.client_web_parts,
2577
2655
  "CurrentUser": self.current_user,
2656
+ "DataLeakagePreventionStatusInfo": self.data_leakage_prevention_status_info,
2578
2657
  "DescriptionResource": self.description_resource,
2579
2658
  "DescriptionTranslations": self.description_translations,
2580
2659
  "EffectiveBasePermissions": self.effective_base_permissions,
@@ -0,0 +1,8 @@
1
+ from office365.runtime.client_value import ClientValue
2
+
3
+
4
+ class EventMessageDetail(ClientValue):
5
+ """Represents details of a system event message.
6
+
7
+ System messages are messages generated for events such as members added to a channel, members added to a chat,
8
+ and team description updated."""
@@ -0,0 +1,24 @@
1
+ from office365.entity import Entity
2
+ from office365.runtime.paths.resource_path import ResourcePath
3
+ from office365.teams.channels.collection import ChannelCollection
4
+
5
+
6
+ class DeletedTeam(Entity):
7
+ """
8
+ A deleted team in Microsoft Teams is a collection of channel objects. A channel represents a topic,
9
+ and therefore a logical isolation of discussion, within a deleted team.
10
+
11
+ Every deleted team is associated with a Microsoft 365 group. For more information about working with groups
12
+ and members in teams, see Use the Microsoft Graph REST API to work with Microsoft Teams.
13
+ """
14
+
15
+ @property
16
+ def channels(self):
17
+ # type: () -> ChannelCollection
18
+ """The collection of channels & messages associated with the team."""
19
+ return self.properties.get(
20
+ "channels",
21
+ ChannelCollection(
22
+ self.context, ResourcePath("channels", self.resource_path)
23
+ ),
24
+ )
@@ -0,0 +1,35 @@
1
+ from typing import Optional
2
+
3
+ from office365.entity import Entity
4
+ from office365.entity_collection import EntityCollection
5
+ from office365.runtime.paths.resource_path import ResourcePath
6
+ from office365.teams.deleted import DeletedTeam
7
+
8
+
9
+ class Teamwork(Entity):
10
+ """A container for the range of Microsoft Teams functionalities that are available for the organization."""
11
+
12
+ @property
13
+ def is_teams_enabled(self):
14
+ # type: () -> Optional[bool]
15
+ """Indicates whether Microsoft Teams is enabled for the organization."""
16
+ return self.properties.get("isTeamsEnabled", None)
17
+
18
+ @property
19
+ def region(self):
20
+ # type: () -> Optional[str]
21
+ """Represents the region of the organization or the tenant.
22
+ The region value can be any region supported by the Teams payload"""
23
+ return self.properties.get("region", None)
24
+
25
+ @property
26
+ def deleted_teams(self):
27
+ """The tags associated with the team."""
28
+ return self.properties.get(
29
+ "deletedTeams",
30
+ EntityCollection(
31
+ self.context,
32
+ DeletedTeam,
33
+ ResourcePath("deletedTeams", self.resource_path),
34
+ ),
35
+ )