Office365-REST-Python-Client 2.4.3__py3-none-any.whl → 2.4.4__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.
- {Office365_REST_Python_Client-2.4.3.dist-info → Office365_REST_Python_Client-2.4.4.dist-info}/METADATA +8 -7
- {Office365_REST_Python_Client-2.4.3.dist-info → Office365_REST_Python_Client-2.4.4.dist-info}/RECORD +254 -162
- office365/base_item.py +26 -4
- office365/communications/calls/invitation_participant_info.py +17 -1
- office365/communications/calls/options.py +9 -0
- office365/communications/onlinemeetings/provider_type.py +3 -0
- office365/communications/presences/presence.py +14 -0
- office365/communications/presences/status_message.py +12 -0
- office365/directory/audit/signins/activity.py +31 -0
- office365/directory/audit/signins/location.py +17 -0
- office365/directory/audit/signins/signin.py +25 -0
- office365/directory/authentication/authentication.py +9 -0
- office365/directory/authentication/methods/details.py +18 -0
- office365/directory/authentication/methods/email.py +16 -0
- office365/directory/authentication/methods/root.py +10 -0
- office365/directory/certificates/authority.py +6 -1
- office365/directory/extensions/extended_property.py +8 -1
- office365/directory/extensions/extension_property.py +0 -3
- office365/directory/extensions/open_type.py +8 -0
- office365/directory/groups/group.py +2 -1
- office365/directory/identities/governance.py +2 -0
- office365/directory/insights/shared.py +15 -1
- office365/directory/insights/usage_details.py +16 -0
- office365/directory/insights/used.py +7 -0
- office365/directory/licenses/assigned_plan.py +14 -2
- office365/directory/licenses/service_plan_info.py +4 -0
- office365/directory/licenses/subscribed_sku.py +26 -0
- office365/directory/licenses/units_detail.py +11 -0
- office365/directory/permissions/email_identity.py +5 -0
- office365/directory/permissions/grants/condition_set.py +26 -0
- office365/directory/permissions/grants/resource_specific.py +21 -0
- office365/directory/policies/authentication_flows.py +9 -0
- office365/directory/policies/authentication_strength.py +10 -0
- office365/directory/policies/authorization.py +8 -0
- office365/directory/policies/cross_tenant_access.py +5 -0
- office365/directory/policies/root.py +35 -2
- office365/directory/rolemanagement/template.py +8 -0
- office365/directory/rolemanagement/unified_role_assignment.py +37 -0
- office365/directory/security/alerts/alert.py +21 -0
- office365/directory/security/alerts/history_state.py +5 -0
- office365/directory/security/attacksimulations/automation.py +21 -0
- office365/directory/security/attacksimulations/automation_run.py +5 -0
- office365/directory/security/attacksimulations/repeat_offender.py +6 -0
- office365/directory/security/attacksimulations/root.py +26 -0
- office365/directory/security/attacksimulations/simulation.py +17 -0
- office365/directory/security/cases/ediscovery.py +6 -0
- office365/directory/security/cases/root.py +22 -0
- office365/directory/security/incidents/incident.py +67 -0
- office365/directory/security/security.py +10 -1
- office365/directory/serviceprincipals/service_principal.py +88 -3
- office365/directory/synchronization/job.py +16 -0
- office365/directory/synchronization/progress.py +5 -0
- office365/directory/synchronization/status.py +13 -0
- office365/directory/synchronization/synchronization.py +24 -0
- office365/directory/tenant_information.py +12 -0
- office365/directory/users/password_profile.py +15 -3
- office365/directory/users/user.py +136 -8
- office365/graph_client.py +28 -1
- office365/intune/audit/actor.py +5 -0
- office365/intune/audit/event.py +21 -25
- office365/intune/audit/event_collection.py +26 -0
- office365/intune/audit/property.py +5 -0
- office365/intune/audit/resource.py +11 -0
- office365/intune/brand.py +6 -0
- office365/intune/devices/compliance/__init__.py +0 -0
- office365/intune/devices/compliance/policy.py +6 -0
- office365/intune/devices/compliance/policy_state.py +5 -0
- office365/intune/devices/enrollment/__init__.py +0 -0
- office365/intune/devices/enrollment/configuration.py +25 -0
- office365/intune/devices/enrollment/configuration_assignment.py +5 -0
- office365/intune/devices/enrollment/limit_configuration.py +5 -0
- office365/intune/devices/managed.py +28 -3
- office365/intune/devices/management/__init__.py +0 -0
- office365/intune/devices/management/management.py +69 -0
- office365/intune/devices/management/reports/__init__.py +0 -0
- office365/intune/devices/management/reports/reports.py +5 -0
- office365/intune/devices/management/settings.py +18 -0
- office365/intune/organizations/branding.py +15 -0
- office365/intune/organizations/organization.py +14 -0
- office365/intune/printing/base.py +11 -0
- office365/intune/printing/capabilities.py +5 -0
- office365/intune/printing/connectors/__init__.py +0 -0
- office365/intune/printing/connectors/connector.py +6 -0
- office365/intune/printing/operations/__init__.py +0 -0
- office365/intune/printing/print.py +24 -0
- office365/intune/printing/printer.py +6 -0
- office365/intune/printing/services/__init__.py +0 -0
- office365/intune/printing/services/endpoint.py +5 -0
- office365/intune/printing/services/service.py +17 -0
- office365/intune/printing/share.py +5 -0
- office365/intune/printing/shares/__init__.py +0 -0
- office365/intune/printing/taskdefinitions/__init__.py +0 -0
- office365/intune/provisioned_plan.py +5 -1
- office365/intune/servicecommunications/issues/issue.py +15 -0
- office365/intune/vpp_token.py +10 -0
- office365/onedrive/columns/content_approval_status.py +5 -0
- office365/onedrive/columns/datetime.py +15 -0
- office365/onedrive/columns/definition.py +49 -3
- office365/onedrive/columns/definition_collection.py +17 -6
- office365/onedrive/columns/types.py +13 -0
- office365/onedrive/driveitems/audio.py +12 -1
- office365/onedrive/driveitems/driveItem.py +66 -15
- office365/onedrive/driveitems/image.py +8 -1
- office365/onedrive/driveitems/remote_item.py +19 -4
- office365/onedrive/drives/recipient.py +4 -0
- office365/onedrive/files/system_info.py +8 -6
- office365/onedrive/lists/collection.py +11 -5
- office365/onedrive/lists/list.py +13 -5
- office365/onedrive/operations/pending.py +13 -0
- office365/onedrive/operations/pending_content_update.py +5 -0
- office365/onedrive/permissions/collection.py +1 -1
- office365/onedrive/sensitivitylabels/__init__.py +0 -0
- office365/onedrive/sensitivitylabels/assignment.py +17 -0
- office365/onedrive/sensitivitylabels/assignment_method.py +4 -0
- office365/onedrive/sensitivitylabels/extract_result.py +13 -0
- office365/onedrive/sharepoint_settings.py +25 -0
- office365/outlook/calendar/calendar.py +116 -5
- office365/outlook/calendar/dateTimeTimeZone.py +3 -0
- office365/outlook/calendar/email_address.py +7 -0
- office365/outlook/calendar/events/event.py +0 -4
- office365/outlook/calendar/events/reminder.py +22 -3
- office365/outlook/calendar/group.py +0 -2
- office365/outlook/calendar/location_constraint.py +16 -1
- office365/outlook/calendar/permissions/__init__.py +0 -0
- office365/outlook/calendar/permissions/collection.py +24 -0
- office365/outlook/calendar/{permission.py → permissions/permission.py} +35 -2
- office365/outlook/calendar/role_type.py +17 -0
- office365/outlook/calendar/sharing_message.py +2 -2
- office365/outlook/calendar/time_zone_base.py +3 -0
- office365/outlook/calendar/working_hours.py +17 -1
- office365/outlook/contacts/collection.py +39 -0
- office365/outlook/contacts/contact.py +21 -11
- office365/outlook/geo_coordinates.py +20 -0
- office365/outlook/item.py +5 -2
- office365/outlook/locale_info.py +3 -0
- office365/outlook/mail/folders/folder.py +51 -2
- office365/outlook/mail/folders/search.py +11 -0
- office365/outlook/mail/importance.py +1 -0
- office365/outlook/mail/item_body.py +3 -0
- office365/outlook/mail/location.py +27 -2
- office365/outlook/mail/location_constraint_item.py +5 -0
- office365/outlook/mail/messages/collection.py +7 -0
- office365/outlook/mail/messages/followup_flag.py +21 -0
- office365/outlook/mail/messages/internet_header.py +16 -0
- office365/outlook/mail/messages/message.py +183 -4
- office365/outlook/mail/messages/rules/actions.py +33 -0
- office365/outlook/mail/patterned_recurrence.py +14 -1
- office365/outlook/mail/physical_address.py +5 -1
- office365/outlook/mail/recipient.py +3 -0
- office365/outlook/mail/recurrence_pattern.py +18 -1
- office365/outlook/mail/recurrence_range.py +16 -2
- office365/reports/root.py +19 -1
- office365/reports/security/__init__.py +0 -0
- office365/reports/security/root.py +21 -0
- office365/reports/userregistration/__init__.py +0 -0
- office365/reports/userregistration/method_count.py +17 -0
- office365/reports/userregistration/method_summary.py +21 -0
- office365/sharepoint/activities/logger.py +25 -0
- office365/sharepoint/addtoonedrive/mount_point.py +25 -0
- office365/sharepoint/addtoonedrive/mounted_folder_info.py +5 -0
- office365/sharepoint/alerts/alert.py +31 -0
- office365/sharepoint/changes/item.py +14 -0
- office365/sharepoint/client_context.py +6 -0
- office365/sharepoint/clientsidecomponent/component_context_info.py +7 -0
- office365/sharepoint/clientsidecomponent/identifier.py +3 -0
- office365/sharepoint/compliance/tag_info.py +17 -0
- office365/sharepoint/contenttypes/content_type.py +42 -0
- office365/sharepoint/contenttypes/fieldlinks/collection.py +5 -6
- office365/sharepoint/features/known_list.py +2 -0
- office365/sharepoint/fields/collection.py +60 -41
- office365/sharepoint/fields/creation_information.py +5 -4
- office365/sharepoint/fields/field.py +73 -15
- office365/sharepoint/fields/user.py +3 -3
- office365/sharepoint/files/file.py +9 -4
- office365/sharepoint/folders/coloring.py +39 -0
- office365/sharepoint/folders/coloring_information.py +15 -0
- office365/sharepoint/folders/folder.py +21 -10
- office365/sharepoint/forms/customization.py +8 -0
- office365/sharepoint/listitems/listitem.py +10 -3
- office365/sharepoint/lists/bloom_filter.py +0 -1
- office365/sharepoint/lists/creation_information.py +18 -4
- office365/sharepoint/lists/list.py +199 -24
- office365/sharepoint/lists/render_data_parameters.py +21 -1
- office365/sharepoint/navigation/configured_metadata_items.py +25 -1
- office365/sharepoint/navigation/metadata_settings.py +6 -4
- office365/sharepoint/permissions/irm/file_settings.py +43 -0
- office365/sharepoint/portal/userprofiles/documents_shared_with_group.py +3 -0
- office365/sharepoint/publishing/base_custom_property.py +8 -0
- office365/sharepoint/publishing/navigation/structural_navigation_cache_wrapper.py +8 -0
- office365/sharepoint/publishing/pagecopywithassets/__init__.py +0 -0
- office365/sharepoint/publishing/pagecopywithassets/response.py +8 -0
- office365/sharepoint/publishing/pages/campaign_publication.py +7 -0
- office365/sharepoint/publishing/pages/page.py +4 -1
- office365/sharepoint/publishing/pages/reposts/metadata.py +8 -0
- office365/sharepoint/publishing/personmagazine/person_magazine.py +4 -1
- office365/sharepoint/search/administration/tenant_crawl_versions_info_provider.py +8 -1
- office365/sharepoint/search/query/auto_completion_match.py +3 -0
- office365/sharepoint/search/query/property_value.py +18 -0
- office365/sharepoint/search/request.py +16 -2
- office365/sharepoint/sharing/abilities.py +22 -0
- office365/sharepoint/sharing/direct_abilities.py +27 -0
- office365/sharepoint/sharing/link_abilities.py +9 -1
- office365/sharepoint/sharing/links/data.py +26 -1
- office365/sharepoint/sharing/links/info.py +1 -1
- office365/sharepoint/sharing/links/partial_success_response.py +5 -0
- office365/sharepoint/sharing/links/share_settings.py +24 -1
- office365/sharepoint/sharing/object_sharing_information.py +65 -2
- office365/sharepoint/sharing/object_sharing_information_user.py +9 -0
- office365/sharepoint/sharing/object_sharing_settings.py +17 -4
- office365/sharepoint/sharing/principal.py +10 -0
- office365/sharepoint/sharing/securable_object_extensions.py +1 -17
- office365/sharepoint/sharing/site_sharing_report_helper.py +2 -1
- office365/sharepoint/sharing/user_sharing_result.py +18 -8
- office365/sharepoint/sitehealth/result.py +10 -0
- office365/sharepoint/sites/language.py +11 -1
- office365/sharepoint/sites/language_collection.py +1 -0
- office365/sharepoint/sites/site.py +34 -6
- office365/sharepoint/tenant/administration/audit/search_request_status.py +8 -0
- office365/sharepoint/tenant/administration/hubsites/permission.py +10 -0
- office365/sharepoint/tenant/administration/tenant.py +1 -0
- office365/sharepoint/tenant/apps/information.py +3 -1
- office365/sharepoint/tenant/management/office365_tenant.py +0 -1
- office365/sharepoint/types/resource_path.py +3 -1
- office365/sharepoint/userprofiles/people_manager.py +0 -2
- office365/sharepoint/userprofiles/sharedwithme/document.py +16 -0
- office365/sharepoint/userprofiles/sharedwithme/document_user.py +12 -0
- office365/sharepoint/userprofiles/sharedwithme/item_collection.py +41 -0
- office365/sharepoint/userprofiles/sharedwithme/items.py +18 -1
- office365/sharepoint/webs/web.py +2 -3
- office365/subscriptions/collection.py +12 -6
- office365/subscriptions/subscription.py +119 -1
- office365/teams/channels/iIdentity.py +5 -0
- office365/teams/chats/collection.py +1 -2
- office365/teams/chats/messages/info.py +9 -0
- office365/teams/chats/messages/message.py +17 -2
- office365/teams/members/aad_user_conversation.py +2 -2
- office365/teams/members/conversation_collection.py +3 -3
- office365/teams/schedule/change_tracked_entity.py +11 -2
- office365/teams/tabs/configuration.py +12 -1
- office365/teams/tabs/tab.py +0 -1
- office365/teams/team.py +23 -1
- office365/teams/teamwork/__init__.py +0 -0
- office365/teams/teamwork/activity_topic.py +5 -0
- office365/teams/teamwork/tags/__init__.py +0 -0
- office365/teams/teamwork/tags/member.py +5 -0
- office365/{directory/security/cases_root.py → teams/viva/employee_experience_user.py} +1 -1
- office365/intune/devices/management.py +0 -35
- {Office365_REST_Python_Client-2.4.3.dist-info → Office365_REST_Python_Client-2.4.4.dist-info}/LICENSE +0 -0
- {Office365_REST_Python_Client-2.4.3.dist-info → Office365_REST_Python_Client-2.4.4.dist-info}/WHEEL +0 -0
- {Office365_REST_Python_Client-2.4.3.dist-info → Office365_REST_Python_Client-2.4.4.dist-info}/top_level.txt +0 -0
- /office365/{teams/messages → directory/security/cases}/__init__.py +0 -0
- /office365/{teams/tags → directory/synchronization}/__init__.py +0 -0
- /office365/teams/{tags → teamwork/tags}/identity.py +0 -0
- /office365/teams/{tags → teamwork/tags}/tag.py +0 -0
- /office365/teams/{user_teamwork.py → teamwork/user.py} +0 -0
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import os
|
|
2
|
+
import uuid
|
|
3
|
+
from datetime import datetime
|
|
2
4
|
|
|
5
|
+
from office365.directory.extensions.extended_property import SingleValueLegacyExtendedProperty, \
|
|
6
|
+
MultiValueLegacyExtendedProperty
|
|
3
7
|
from office365.directory.extensions.extension import Extension
|
|
4
8
|
from office365.entity_collection import EntityCollection
|
|
5
9
|
from office365.outlook.item import OutlookItem
|
|
6
10
|
from office365.outlook.mail.attachments.collection import AttachmentCollection
|
|
7
11
|
from office365.outlook.mail.item_body import ItemBody
|
|
12
|
+
from office365.outlook.mail.messages.followup_flag import FollowupFlag
|
|
13
|
+
from office365.outlook.mail.messages.internet_header import InternetMessageHeader
|
|
8
14
|
from office365.outlook.mail.recipient import Recipient
|
|
9
15
|
from office365.runtime.client_result import ClientResult
|
|
10
16
|
from office365.runtime.client_value_collection import ClientValueCollection
|
|
@@ -16,6 +22,23 @@ from office365.runtime.queries.service_operation import ServiceOperationQuery
|
|
|
16
22
|
class Message(OutlookItem):
|
|
17
23
|
"""A message in a mailbox folder."""
|
|
18
24
|
|
|
25
|
+
def add_extended_property(self, name, value):
|
|
26
|
+
"""
|
|
27
|
+
Create a single-value extended property for a message
|
|
28
|
+
:param str name: A property name
|
|
29
|
+
:param str value:
|
|
30
|
+
"""
|
|
31
|
+
prop_id = str(uuid.uuid4())
|
|
32
|
+
prop_type = "String"
|
|
33
|
+
prop_value = [
|
|
34
|
+
{
|
|
35
|
+
"id":"{0} {{{1}}} Name {2}".format(prop_type, prop_id, name),
|
|
36
|
+
"value": value
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
self.set_property("singleValueExtendedProperties", prop_value)
|
|
40
|
+
return self
|
|
41
|
+
|
|
19
42
|
def create_forward(self, to_recipients=None, message=None, comment=None):
|
|
20
43
|
"""
|
|
21
44
|
Create a draft to forward an existing message, in either JSON or MIME format.
|
|
@@ -220,15 +243,134 @@ class Message(OutlookItem):
|
|
|
220
243
|
value = ItemBody(value)
|
|
221
244
|
self.set_property("body", value)
|
|
222
245
|
|
|
246
|
+
@property
|
|
247
|
+
def body_preview(self):
|
|
248
|
+
"""
|
|
249
|
+
The first 255 characters of the message body. It is in text format.
|
|
250
|
+
:rtype: str or None
|
|
251
|
+
"""
|
|
252
|
+
return self.properties.get("bodyPreview", None)
|
|
253
|
+
|
|
254
|
+
@property
|
|
255
|
+
def conversation_id(self):
|
|
256
|
+
"""
|
|
257
|
+
The ID of the conversation the email belongs to.
|
|
258
|
+
:rtype: str or None
|
|
259
|
+
"""
|
|
260
|
+
return self.properties.get("conversationId", None)
|
|
261
|
+
|
|
262
|
+
@property
|
|
263
|
+
def conversation_index(self):
|
|
264
|
+
"""
|
|
265
|
+
Indicates the position of the message within the conversation.
|
|
266
|
+
:rtype: str or None
|
|
267
|
+
"""
|
|
268
|
+
return self.properties.get("conversationIndex", None)
|
|
269
|
+
|
|
270
|
+
@property
|
|
271
|
+
def flag(self):
|
|
272
|
+
"""
|
|
273
|
+
The flag value that indicates the status, start date, due date, or completion date for the message.
|
|
274
|
+
"""
|
|
275
|
+
return self.properties.get("flag", FollowupFlag())
|
|
276
|
+
|
|
277
|
+
@property
|
|
278
|
+
def sent_from(self):
|
|
279
|
+
"""
|
|
280
|
+
The owner of the mailbox from which the message is sent. In most cases, this value is the same as the sender
|
|
281
|
+
property, except for sharing or delegation scenarios. The value must correspond to the actual mailbox used.
|
|
282
|
+
Find out more about setting the from and sender properties of a message.
|
|
283
|
+
"""
|
|
284
|
+
return self.properties.get("from", Recipient())
|
|
285
|
+
|
|
286
|
+
@property
|
|
287
|
+
def importance(self):
|
|
288
|
+
"""
|
|
289
|
+
The importance of the message.
|
|
290
|
+
:rtype: str
|
|
291
|
+
"""
|
|
292
|
+
return self.properties.get("importance", None)
|
|
293
|
+
|
|
294
|
+
@property
|
|
295
|
+
def inference_classification(self):
|
|
296
|
+
"""
|
|
297
|
+
The classification of the message for the user, based on inferred relevance or importance,
|
|
298
|
+
or on an explicit override. The possible values are: focused or other.
|
|
299
|
+
:rtype: str
|
|
300
|
+
"""
|
|
301
|
+
return self.properties.get("inferenceClassification", None)
|
|
302
|
+
|
|
303
|
+
@property
|
|
304
|
+
def internet_message_headers(self):
|
|
305
|
+
"""
|
|
306
|
+
A collection of message headers defined by RFC5322. The set includes message headers indicating the network
|
|
307
|
+
path taken by a message from the sender to the recipient. It can also contain custom message headers that
|
|
308
|
+
hold app data for the message.
|
|
309
|
+
"""
|
|
310
|
+
return self.properties.get("internetMessageHeaders", ClientValueCollection(InternetMessageHeader))
|
|
311
|
+
|
|
312
|
+
@property
|
|
313
|
+
def internet_message_id(self):
|
|
314
|
+
"""
|
|
315
|
+
The message ID in the format specified by RFC2822
|
|
316
|
+
:rtype: str
|
|
317
|
+
"""
|
|
318
|
+
return self.properties.get("internetMessageId", None)
|
|
319
|
+
|
|
320
|
+
@property
|
|
321
|
+
def is_delivery_receipt_requested(self):
|
|
322
|
+
"""
|
|
323
|
+
Indicates whether a read receipt is requested for the message.
|
|
324
|
+
:rtype: bool
|
|
325
|
+
"""
|
|
326
|
+
return self.properties.get("isDeliveryReceiptRequested", None)
|
|
327
|
+
|
|
328
|
+
@property
|
|
329
|
+
def is_draft(self):
|
|
330
|
+
"""
|
|
331
|
+
Indicates whether the message is a draft. A message is a draft if it hasn't been sent yet.
|
|
332
|
+
:rtype: bool
|
|
333
|
+
"""
|
|
334
|
+
return self.properties.get("isDraft", None)
|
|
335
|
+
|
|
336
|
+
@property
|
|
337
|
+
def is_read(self):
|
|
338
|
+
"""
|
|
339
|
+
Indicates whether the message has been read.
|
|
340
|
+
:rtype: bool
|
|
341
|
+
"""
|
|
342
|
+
return self.properties.get("isRead", None)
|
|
343
|
+
|
|
344
|
+
@property
|
|
345
|
+
def is_read_receipt_requested(self):
|
|
346
|
+
"""
|
|
347
|
+
Indicates whether a read receipt is requested for the message.
|
|
348
|
+
:rtype: bool
|
|
349
|
+
"""
|
|
350
|
+
return self.properties.get("isReadReceiptRequested", None)
|
|
351
|
+
|
|
352
|
+
@property
|
|
353
|
+
def received_datetime(self):
|
|
354
|
+
"""The date and time the message was received."""
|
|
355
|
+
return self.properties.get("receivedDateTime", datetime.min)
|
|
356
|
+
|
|
357
|
+
@property
|
|
358
|
+
def sent_datetime(self):
|
|
359
|
+
"""The date and time the message was sent."""
|
|
360
|
+
return self.properties.get("sentDateTime", datetime.min)
|
|
361
|
+
|
|
223
362
|
@property
|
|
224
363
|
def subject(self):
|
|
225
|
-
"""
|
|
364
|
+
"""
|
|
365
|
+
The subject of the message.
|
|
366
|
+
:rtype: str
|
|
367
|
+
"""
|
|
226
368
|
return self.properties.get("subject", None)
|
|
227
369
|
|
|
228
370
|
@subject.setter
|
|
229
371
|
def subject(self, value):
|
|
230
|
-
"""
|
|
231
|
-
|
|
372
|
+
"""
|
|
373
|
+
The subject of the message.
|
|
232
374
|
:type value: str
|
|
233
375
|
"""
|
|
234
376
|
self.set_property("subject", value)
|
|
@@ -266,12 +408,49 @@ class Message(OutlookItem):
|
|
|
266
408
|
"""
|
|
267
409
|
return self.properties.get('parentFolderId', None)
|
|
268
410
|
|
|
411
|
+
@property
|
|
412
|
+
def web_link(self):
|
|
413
|
+
"""
|
|
414
|
+
The URL to open the message in Outlook on the web.
|
|
415
|
+
|
|
416
|
+
You can append an ispopout argument to the end of the URL to change how the message is displayed.
|
|
417
|
+
If ispopout is not present or if it is set to 1, then the message is shown in a popout window.
|
|
418
|
+
If ispopout is set to 0, then the browser will show the message in the Outlook on the web review pane.
|
|
419
|
+
|
|
420
|
+
The message will open in the browser if you are logged in to your mailbox via Outlook on the web.
|
|
421
|
+
You will be prompted to login if you are not already logged in with the browser.
|
|
422
|
+
|
|
423
|
+
This URL cannot be accessed from within an iFrame.
|
|
424
|
+
:rtype: str or None
|
|
425
|
+
"""
|
|
426
|
+
return self.properties.get("webLink", None)
|
|
427
|
+
|
|
428
|
+
@property
|
|
429
|
+
def multi_value_extended_properties(self):
|
|
430
|
+
"""The collection of multi-value extended properties defined for the event."""
|
|
431
|
+
return self.properties.get('multiValueExtendedProperties',
|
|
432
|
+
EntityCollection(self.context, MultiValueLegacyExtendedProperty,
|
|
433
|
+
ResourcePath("multiValueExtendedProperties", self.resource_path)))
|
|
434
|
+
|
|
435
|
+
@property
|
|
436
|
+
def single_value_extended_properties(self):
|
|
437
|
+
"""The collection of single-value extended properties defined for the message"""
|
|
438
|
+
return self.properties.get('singleValueExtendedProperties',
|
|
439
|
+
EntityCollection(self.context, SingleValueLegacyExtendedProperty,
|
|
440
|
+
ResourcePath("singleValueExtendedProperties", self.resource_path)))
|
|
441
|
+
|
|
269
442
|
def get_property(self, name, default_value=None):
|
|
270
443
|
if default_value is None:
|
|
271
444
|
property_type_mapping = {
|
|
272
445
|
"toRecipients": self.to_recipients,
|
|
273
446
|
"bccRecipients": self.bcc_recipients,
|
|
274
|
-
"ccRecipients": self.cc_recipients
|
|
447
|
+
"ccRecipients": self.cc_recipients,
|
|
448
|
+
"from": self.sent_from,
|
|
449
|
+
"internetMessageHeaders": self.internet_message_headers,
|
|
450
|
+
"multiValueExtendedProperties": self.multi_value_extended_properties,
|
|
451
|
+
"receivedDateTime": self.received_datetime,
|
|
452
|
+
"sentDateTime": self.sent_datetime,
|
|
453
|
+
"singleValueExtendedProperties": self.single_value_extended_properties
|
|
275
454
|
}
|
|
276
455
|
default_value = property_type_mapping.get(name, None)
|
|
277
456
|
|
|
@@ -1,5 +1,38 @@
|
|
|
1
|
+
from office365.outlook.mail.recipient import Recipient
|
|
1
2
|
from office365.runtime.client_value import ClientValue
|
|
3
|
+
from office365.runtime.client_value_collection import ClientValueCollection
|
|
4
|
+
from office365.runtime.types.collections import StringCollection
|
|
2
5
|
|
|
3
6
|
|
|
4
7
|
class MessageRuleActions(ClientValue):
|
|
5
8
|
"""Represents the set of actions that are available to a rule."""
|
|
9
|
+
|
|
10
|
+
def __init__(self, assign_categories=None, copy_to_folder=None, delete=None,
|
|
11
|
+
forward_as_attachment_to=None, forward_to=None, mark_as_read=None, mark_importance=None,
|
|
12
|
+
move_to_folder=None, permanent_delete=None, redirect_to=None, stop_processing_rules=None):
|
|
13
|
+
"""
|
|
14
|
+
:param list[str] assign_categories: A list of categories to be assigned to a message.
|
|
15
|
+
:param str copy_to_folder: The ID of a folder that a message is to be copied to.
|
|
16
|
+
:param bool delete: Indicates whether a message should be moved to the Deleted Items folder.
|
|
17
|
+
:param list[Recipient] forward_as_attachment_to: The email addresses of the recipients to which a message
|
|
18
|
+
should be forwarded as an attachment.
|
|
19
|
+
:param list[Recipient] forward_to: The email addresses of the recipients to which a message should be forwarded.
|
|
20
|
+
:param bool mark_as_read: Indicates whether a message should be marked as read.
|
|
21
|
+
:param str mark_importance: Sets the importance of the message, which can be: low, normal, high.
|
|
22
|
+
:param str move_to_folder: The ID of the folder that a message will be moved to.
|
|
23
|
+
:param bool permanent_delete: Indicates whether a message should be permanently deleted and not saved to the
|
|
24
|
+
Deleted Items folder.
|
|
25
|
+
:param list[Recipient] redirect_to: The email addresses to which a message should be redirected.
|
|
26
|
+
:param bool stop_processing_rules: Indicates whether subsequent rules should be evaluated.
|
|
27
|
+
"""
|
|
28
|
+
self.assignCategories = StringCollection(assign_categories)
|
|
29
|
+
self.copyToFolder = copy_to_folder
|
|
30
|
+
self.delete = delete
|
|
31
|
+
self.forwardAsAttachmentTo = ClientValueCollection(Recipient, forward_as_attachment_to)
|
|
32
|
+
self.forwardTo = ClientValueCollection(Recipient, forward_to)
|
|
33
|
+
self.markAsRead = mark_as_read
|
|
34
|
+
self.markImportance = mark_importance
|
|
35
|
+
self.moveToFolder = move_to_folder
|
|
36
|
+
self.permanentDelete = permanent_delete
|
|
37
|
+
self.redirectTo = ClientValueCollection(Recipient, redirect_to)
|
|
38
|
+
self.stopProcessingRules = stop_processing_rules
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
from office365.outlook.mail.recurrence_pattern import RecurrencePattern
|
|
2
|
+
from office365.outlook.mail.recurrence_range import RecurrenceRange
|
|
1
3
|
from office365.runtime.client_value import ClientValue
|
|
2
4
|
|
|
3
5
|
|
|
@@ -10,4 +12,15 @@ class PatternedRecurrence(ClientValue):
|
|
|
10
12
|
unifiedRoleAssignmentScheduleRequest and unifiedRoleEligibilityScheduleRequest objects in PIM
|
|
11
13
|
accessPackageAssignment objects in Azure AD entitlement management.
|
|
12
14
|
"""
|
|
13
|
-
|
|
15
|
+
|
|
16
|
+
def __init__(self, pattern=RecurrencePattern(), recurrence_range=RecurrenceRange()):
|
|
17
|
+
"""
|
|
18
|
+
:param RecurrencePattern pattern: The frequency of an event.
|
|
19
|
+
For access reviews:
|
|
20
|
+
- Do not specify this property for a one-time access review.
|
|
21
|
+
- Only interval, dayOfMonth, and type (weekly, absoluteMonthly) properties of recurrencePattern
|
|
22
|
+
are supported.
|
|
23
|
+
:param RecurrenceRange recurrence_range: The duration of an event.
|
|
24
|
+
"""
|
|
25
|
+
self.pattern = pattern
|
|
26
|
+
self.range = recurrence_range
|
|
@@ -4,13 +4,17 @@ from office365.runtime.client_value import ClientValue
|
|
|
4
4
|
class PhysicalAddress(ClientValue):
|
|
5
5
|
"""The physical address of a contact."""
|
|
6
6
|
|
|
7
|
-
def __init__(self, city=None, country_or_region=None, postal_code=None):
|
|
7
|
+
def __init__(self, city=None, country_or_region=None, postal_code=None, state=None, street=None):
|
|
8
8
|
"""
|
|
9
9
|
:param str city: The city.
|
|
10
10
|
:param str country_or_region: The country or region. It's a free-format string value, for example, "United States".
|
|
11
11
|
:param str postal_code: The postal code.
|
|
12
|
+
:param str state:
|
|
13
|
+
:param str street:
|
|
12
14
|
"""
|
|
13
15
|
super(PhysicalAddress, self).__init__()
|
|
14
16
|
self.city = city
|
|
15
17
|
self.countryOrRegion = country_or_region
|
|
16
18
|
self.postalCode = postal_code
|
|
19
|
+
self.state = state
|
|
20
|
+
self.street = street
|
|
@@ -1,13 +1,30 @@
|
|
|
1
1
|
from office365.runtime.client_value import ClientValue
|
|
2
|
+
from office365.runtime.types.collections import StringCollection
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class RecurrencePattern(ClientValue):
|
|
5
6
|
"""Describes the frequency by which a recurring event repeats."""
|
|
6
7
|
|
|
7
|
-
def __init__(self, day_of_month=None
|
|
8
|
+
def __init__(self, day_of_month=None, days_of_week=None, first_day_of_week=None,
|
|
9
|
+
index=None, interval=None, month=None, pattern_type=None):
|
|
8
10
|
"""
|
|
9
11
|
:param int day_of_month: The day of the month on which the event occurs. Required if type is absoluteMonthly
|
|
10
12
|
or absoluteYearly.
|
|
13
|
+
:param list[str] days_of_week: A collection of the days of the week on which the event occurs
|
|
14
|
+
:param str first_day_of_week: The first day of the week
|
|
15
|
+
:param str index: Specifies on which instance of the allowed days specified in daysOfWeek the event occurs,
|
|
16
|
+
counted from the first instance in the month.
|
|
17
|
+
:param int interval: The number of units between occurrences, where units can be in days, weeks, months,
|
|
18
|
+
or years, depending on the type. Required.
|
|
19
|
+
:param int month: The month in which the event occurs. This is a number from 1 to 12.
|
|
20
|
+
:param str pattern_type: The recurrence pattern type: daily, weekly, absoluteMonthly, relativeMonthly,
|
|
21
|
+
absoluteYearly, relativeYearly
|
|
11
22
|
"""
|
|
12
23
|
self.dayOfMonth = day_of_month
|
|
24
|
+
self.daysOfWeek = StringCollection(days_of_week)
|
|
25
|
+
self.firstDayOfWeek = first_day_of_week
|
|
26
|
+
self.index = index
|
|
27
|
+
self.interval = interval
|
|
28
|
+
self.month = month
|
|
29
|
+
self.type = pattern_type
|
|
13
30
|
|
|
@@ -7,8 +7,22 @@ class RecurrenceRange(ClientValue):
|
|
|
7
7
|
of access reviews, calendar events, and access package assignments in Azure AD.
|
|
8
8
|
"""
|
|
9
9
|
|
|
10
|
-
def __init__(self, end_date=None
|
|
10
|
+
def __init__(self, start_date=None, end_date=None, number_of_occurrences=None, recurrence_timezone=None,
|
|
11
|
+
range_type=None):
|
|
11
12
|
"""
|
|
12
|
-
:param
|
|
13
|
+
:param datetime.date start_date: The date to start applying the recurrence pattern. The first occurrence of
|
|
14
|
+
the meeting may be this date or later, depending on the recurrence pattern of the event. Must be the
|
|
15
|
+
same value as the start property of the recurring event. Required.
|
|
16
|
+
:param datetime.date end_date: The date to stop applying the recurrence pattern. Depending on the recurrence pattern of
|
|
17
|
+
the event, the last occurrence of the meeting may not be this date. Required if type is endDate.
|
|
18
|
+
:param int number_of_occurrences: The number of times to repeat the event. Required and must be positive
|
|
19
|
+
if type is numbered.
|
|
20
|
+
:param str recurrence_timezone: Time zone for the startDate and endDate properties. Optional. If not specified,
|
|
21
|
+
the time zone of the event is used.
|
|
22
|
+
:param str range_type: The recurrence range. The possible values are: endDate, noEnd, numbered. Required.
|
|
13
23
|
"""
|
|
14
24
|
self.endDate = end_date
|
|
25
|
+
self.numberOfOccurrences = number_of_occurrences
|
|
26
|
+
self.recurrenceTimeZone = recurrence_timezone
|
|
27
|
+
self.startDate = start_date
|
|
28
|
+
self.type = range_type
|
office365/reports/root.py
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
from office365.directory.authentication.methods.root import AuthenticationMethodsRoot
|
|
2
2
|
from office365.entity import Entity
|
|
3
3
|
from office365.reports.internal.queries.create_report_query import create_report_query
|
|
4
|
+
from office365.reports.report import Report
|
|
5
|
+
from office365.reports.security.root import SecurityReportsRoot
|
|
4
6
|
from office365.runtime.client_result import ClientResult
|
|
5
7
|
from office365.runtime.paths.resource_path import ResourcePath
|
|
6
8
|
from office365.runtime.queries.function import FunctionQuery
|
|
@@ -9,6 +11,15 @@ from office365.runtime.queries.function import FunctionQuery
|
|
|
9
11
|
class ReportRoot(Entity):
|
|
10
12
|
"""Represents a container for Azure Active Directory (Azure AD) reporting resources."""
|
|
11
13
|
|
|
14
|
+
def managed_device_enrollment_top_failures(self, period=None):
|
|
15
|
+
"""
|
|
16
|
+
Note: The Microsoft Graph API for Intune requires an active Intune license for the tenant.
|
|
17
|
+
"""
|
|
18
|
+
return_type = ClientResult(self.context, Report())
|
|
19
|
+
qry = FunctionQuery(self, "managedDeviceEnrollmentTopFailures", {"period": period}, return_type)
|
|
20
|
+
self.context.add_query(qry)
|
|
21
|
+
return return_type
|
|
22
|
+
|
|
12
23
|
def get_email_activity_counts(self, period):
|
|
13
24
|
"""
|
|
14
25
|
Enables you to understand the trends of email activity (like how many were sent, read, and received)
|
|
@@ -182,4 +193,11 @@ class ReportRoot(Entity):
|
|
|
182
193
|
"""Container for navigation properties for Azure AD authentication methods resources."""
|
|
183
194
|
return self.properties.get('authenticationMethods',
|
|
184
195
|
AuthenticationMethodsRoot(self.context,
|
|
185
|
-
ResourcePath("authenticationMethods",
|
|
196
|
+
ResourcePath("authenticationMethods",
|
|
197
|
+
self.resource_path)))
|
|
198
|
+
|
|
199
|
+
@property
|
|
200
|
+
def security(self):
|
|
201
|
+
"""Container for navigation properties for Azure AD authentication methods resources."""
|
|
202
|
+
return self.properties.get('security',
|
|
203
|
+
SecurityReportsRoot(self.context, ResourcePath("security", self.resource_path)))
|
|
File without changes
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from office365.directory.security.attacksimulations.repeat_offender import AttackSimulationRepeatOffender
|
|
2
|
+
from office365.entity import Entity
|
|
3
|
+
from office365.runtime.client_result import ClientResult
|
|
4
|
+
from office365.runtime.client_value_collection import ClientValueCollection
|
|
5
|
+
from office365.runtime.queries.function import FunctionQuery
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class SecurityReportsRoot(Entity):
|
|
9
|
+
"""
|
|
10
|
+
Represents an abstract type that contains resources for attack simulation and training reports. This resource
|
|
11
|
+
provides the ability to launch a realistic simulated phishing attack that organizations can learn from.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
def get_attack_simulation_repeat_offenders(self):
|
|
15
|
+
"""
|
|
16
|
+
List the tenant users who have yielded to attacks more than once in attack simulation and training campaigns.
|
|
17
|
+
"""
|
|
18
|
+
return_type = ClientResult(self.context, ClientValueCollection(AttackSimulationRepeatOffender))
|
|
19
|
+
qry = FunctionQuery(self, "getAttackSimulationRepeatOffenders", None, return_type)
|
|
20
|
+
self.context.add_query(qry)
|
|
21
|
+
return return_type
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from office365.runtime.client_value import ClientValue
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class UserRegistrationMethodCount(ClientValue):
|
|
5
|
+
"""Represents the number of users registered for an authentication method."""
|
|
6
|
+
|
|
7
|
+
def __init__(self, authentication_method=None, user_count=None):
|
|
8
|
+
"""
|
|
9
|
+
:param str authentication_method: Name of the authentication method.
|
|
10
|
+
:param str user_count: Number of users registered.
|
|
11
|
+
"""
|
|
12
|
+
self.authenticationMethod = authentication_method
|
|
13
|
+
self.userCount = user_count
|
|
14
|
+
|
|
15
|
+
def __repr__(self):
|
|
16
|
+
return "{0}: {1}".format(self.authenticationMethod, self.userCount)
|
|
17
|
+
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from office365.reports.userregistration.method_count import UserRegistrationMethodCount
|
|
2
|
+
from office365.runtime.client_value import ClientValue
|
|
3
|
+
from office365.runtime.client_value_collection import ClientValueCollection
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class UserRegistrationMethodSummary(ClientValue):
|
|
7
|
+
"""Represents the summary of number of users registered for each authentication method."""
|
|
8
|
+
|
|
9
|
+
def __init__(self, total_user_count=None, method_counts=None, user_roles=None, user_types=None):
|
|
10
|
+
"""
|
|
11
|
+
:param int total_user_count: Total number of users in the tenant.
|
|
12
|
+
:param list[UserRegistrationMethodCount] method_counts: Number of users registered for each authentication
|
|
13
|
+
method.
|
|
14
|
+
:param str user_roles: The role type of the user.
|
|
15
|
+
Possible values are: all, privilegedAdmin, admin, user, unknownFutureValue.
|
|
16
|
+
:param str user_types: User type. Possible values are: all, member, guest, unknownFutureValue.
|
|
17
|
+
"""
|
|
18
|
+
self.totalUserCount = total_user_count
|
|
19
|
+
self.userRegistrationMethodCounts = ClientValueCollection(UserRegistrationMethodCount, method_counts)
|
|
20
|
+
self.userRoles = user_roles
|
|
21
|
+
self.userTypes = user_types
|
|
@@ -1,8 +1,33 @@
|
|
|
1
|
+
from office365.runtime.queries.service_operation import ServiceOperationQuery
|
|
1
2
|
from office365.sharepoint.base_entity import BaseEntity
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
class ActivityLogger(BaseEntity):
|
|
5
6
|
|
|
7
|
+
def log_activity(self, operation, list_id, list_item_unique_id, affected_resource_url, item_type,
|
|
8
|
+
audit_creation_time, is_offline):
|
|
9
|
+
"""
|
|
10
|
+
:param str operation:
|
|
11
|
+
:param str list_id:
|
|
12
|
+
:param str list_item_unique_id:
|
|
13
|
+
:param str affected_resource_url:
|
|
14
|
+
:param str item_type:
|
|
15
|
+
:param str audit_creation_time:
|
|
16
|
+
:param bool is_offline:
|
|
17
|
+
"""
|
|
18
|
+
payload = {
|
|
19
|
+
"Operation": operation,
|
|
20
|
+
"ListId": list_id,
|
|
21
|
+
"ListItemUniqueId": list_item_unique_id,
|
|
22
|
+
"AffectedResourceUrl": affected_resource_url,
|
|
23
|
+
"ItemType": item_type,
|
|
24
|
+
"AuditCreationTime": audit_creation_time,
|
|
25
|
+
"IsOffline": is_offline
|
|
26
|
+
}
|
|
27
|
+
qry = ServiceOperationQuery(self, "LogActivity", None, payload)
|
|
28
|
+
self.context.add_query(qry)
|
|
29
|
+
return self
|
|
30
|
+
|
|
6
31
|
@property
|
|
7
32
|
def entity_type_name(self):
|
|
8
33
|
return "Microsoft.SharePoint.Internal.ActivityLogger"
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from office365.runtime.queries.service_operation import ServiceOperationQuery
|
|
2
|
+
from office365.sharepoint.addtoonedrive.mounted_folder_info import MountedFolderInfo
|
|
3
|
+
from office365.sharepoint.base_entity import BaseEntity
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class MountPoint(BaseEntity):
|
|
7
|
+
""""""
|
|
8
|
+
|
|
9
|
+
@staticmethod
|
|
10
|
+
def get_mounted_folder_info(context, target_site_id, target_web_id, target_unique_id):
|
|
11
|
+
"""
|
|
12
|
+
:type context: office365.sharepoint.client_context.ClientContext
|
|
13
|
+
:param str target_site_id:
|
|
14
|
+
:param str target_web_id:
|
|
15
|
+
:param str target_unique_id:
|
|
16
|
+
"""
|
|
17
|
+
return_type = MountedFolderInfo(context)
|
|
18
|
+
payload = {
|
|
19
|
+
"targetSiteId": target_site_id,
|
|
20
|
+
"targetWebId": target_web_id,
|
|
21
|
+
"targetUniqueId": target_unique_id
|
|
22
|
+
}
|
|
23
|
+
qry = ServiceOperationQuery(context.web, "GetMountedFolderInfo", None, payload, None, return_type, True)
|
|
24
|
+
context.add_query(qry)
|
|
25
|
+
return return_type
|
|
@@ -12,6 +12,37 @@ class Alert(BaseEntity):
|
|
|
12
12
|
set for this type.
|
|
13
13
|
"""
|
|
14
14
|
|
|
15
|
+
@property
|
|
16
|
+
def alert_frequency(self):
|
|
17
|
+
"""
|
|
18
|
+
Gets the time interval for sending the alert.
|
|
19
|
+
:rtype: int
|
|
20
|
+
"""
|
|
21
|
+
return self.properties.get("AlertFrequency", None)
|
|
22
|
+
|
|
23
|
+
@property
|
|
24
|
+
def alert_template_name(self):
|
|
25
|
+
"""
|
|
26
|
+
Gets the string representing the alert template name.
|
|
27
|
+
:rtype: int
|
|
28
|
+
"""
|
|
29
|
+
return self.properties.get("AlertTemplateName", None)
|
|
30
|
+
|
|
31
|
+
@property
|
|
32
|
+
def always_notify(self):
|
|
33
|
+
"""
|
|
34
|
+
Gets a Boolean value that causes daily and weekly alerts to trigger, even if there is no matching event.
|
|
35
|
+
:rtype: bool
|
|
36
|
+
"""
|
|
37
|
+
return self.properties.get("AlwaysNotify", None)
|
|
38
|
+
|
|
39
|
+
@property
|
|
40
|
+
def item(self):
|
|
41
|
+
"""Gets the list item or document to which the alert applies."""
|
|
42
|
+
from office365.sharepoint.listitems.listitem import ListItem
|
|
43
|
+
return self.properties.get('Item',
|
|
44
|
+
ListItem(self.context, ResourcePath("item", self.resource_path)))
|
|
45
|
+
|
|
15
46
|
@property
|
|
16
47
|
def user(self):
|
|
17
48
|
"""Gets user object that represents User for the alert."""
|
|
@@ -6,6 +6,20 @@ from office365.sharepoint.sharing.shared_with_user import SharedWithUser
|
|
|
6
6
|
class ChangeItem(Change):
|
|
7
7
|
"""A change on an item."""
|
|
8
8
|
|
|
9
|
+
@property
|
|
10
|
+
def activity_type(self):
|
|
11
|
+
"""
|
|
12
|
+
Returns activity type defined in ChangeActivityType
|
|
13
|
+
"""
|
|
14
|
+
return self.properties.get("ActivityType", None)
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def content_type_id(self):
|
|
18
|
+
"""
|
|
19
|
+
Specifies an identifier for the content type
|
|
20
|
+
"""
|
|
21
|
+
return self.properties.get("ContentTypeId", None)
|
|
22
|
+
|
|
9
23
|
@property
|
|
10
24
|
def shared_by_user(self):
|
|
11
25
|
"""Return the sharedBy User Information in sharing action for change log."""
|
|
@@ -395,6 +395,12 @@ class ClientContext(ClientRuntimeContext):
|
|
|
395
395
|
from office365.sharepoint.contentcenter.machinelearning.models.collection import SPMachineLearningModelCollection
|
|
396
396
|
return SPMachineLearningModelCollection(self, ResourcePath("models"))
|
|
397
397
|
|
|
398
|
+
@property
|
|
399
|
+
def folder_coloring(self):
|
|
400
|
+
"""Alias to FolderColoring"""
|
|
401
|
+
from office365.sharepoint.folders.coloring import FolderColoring
|
|
402
|
+
return FolderColoring(self, ResourcePath("foldercoloring"))
|
|
403
|
+
|
|
398
404
|
@property
|
|
399
405
|
def group_site_manager(self):
|
|
400
406
|
"""Alias to GroupSiteManager"""
|
|
@@ -4,6 +4,13 @@ from office365.sharepoint.base_entity import BaseEntity
|
|
|
4
4
|
class ComponentContextInfo(BaseEntity):
|
|
5
5
|
"""This class functions as a wrapper of the ContextInfo object. Reserved for internal use only."""
|
|
6
6
|
|
|
7
|
+
@property
|
|
8
|
+
def serialized_data(self):
|
|
9
|
+
"""
|
|
10
|
+
:rtype: str
|
|
11
|
+
"""
|
|
12
|
+
return self.properties.get("SerializedData", None)
|
|
13
|
+
|
|
7
14
|
@property
|
|
8
15
|
def entity_type_name(self):
|
|
9
16
|
return "Microsoft.SharePoint.Internal.ClientSideComponent.ComponentContextInfo"
|
|
@@ -8,6 +8,9 @@ class SPClientSideComponentIdentifier(ClientValue):
|
|
|
8
8
|
self.id = _id
|
|
9
9
|
self.version = version
|
|
10
10
|
|
|
11
|
+
def __repr__(self):
|
|
12
|
+
return self.id
|
|
13
|
+
|
|
11
14
|
@property
|
|
12
15
|
def entity_type_name(self):
|
|
13
16
|
return "Microsoft.SharePoint.ClientSideComponent.SPClientSideComponentIdentifier"
|