diff --git a/dropbox/auth.py b/dropbox/auth.py
index 6c122692..d69cf178 100644
--- a/dropbox/auth.py
+++ b/dropbox/auth.py
@@ -675,7 +675,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 token_from_oauth1 = bb.Route(
     'token/from_oauth1',
     1,
-    False,
+    True,
     TokenFromOAuth1Arg_validator,
     TokenFromOAuth1Result_validator,
     TokenFromOAuth1Error_validator,
diff --git a/dropbox/base.py b/dropbox/base.py
index c91ed484..8b27e80a 100644
--- a/dropbox/base.py
+++ b/dropbox/base.py
@@ -82,6 +82,10 @@ def auth_token_from_oauth1(self,
         If this raises, ApiError will contain:
             :class:`dropbox.auth.TokenFromOAuth1Error`
         """
+        warnings.warn(
+            'token/from_oauth1 is deprecated.',
+            DeprecationWarning,
+        )
         arg = auth.TokenFromOAuth1Arg(oauth1_token,
                                       oauth1_token_secret)
         r = self.request(
@@ -2880,7 +2884,7 @@ def files_save_url(self,
                        url):
         """
         Save the data from a specified URL into a file in user's Dropbox. Note
-        that the transfer from the URL must complete within 5 minutes, or the
+        that the transfer from the URL must complete within 15 minutes, or the
         operation will time out and the job will fail. If the given path already
         exists, the file will be renamed to avoid the conflict (e.g. myfile
         (1).txt).
diff --git a/dropbox/base_team.py b/dropbox/base_team.py
index 6f711960..ff04def4 100644
--- a/dropbox/base_team.py
+++ b/dropbox/base_team.py
@@ -1257,8 +1257,10 @@ def team_member_space_limits_excluded_users_remove(self,
     def team_member_space_limits_get_custom_quota(self,
                                                   users):
         """
-        Get users custom quota. Returns none as the custom quota if none was
-        set. A maximum of 1000 members can be specified in a single call.
+        Get users custom quota. A maximum of 1000 members can be specified in a
+        single call. Note: to apply a custom space limit, a team admin needs to
+        set a member space limit for the team first. (the team admin can check
+        the settings here: https://www.dropbox.com/team/admin/settings/space).
 
         Route attributes:
             scope: members.read
@@ -1283,7 +1285,10 @@ def team_member_space_limits_remove_custom_quota(self,
                                                      users):
         """
         Remove users custom quota. A maximum of 1000 members can be specified in
-        a single call.
+        a single call. Note: to apply a custom space limit, a team admin needs
+        to set a member space limit for the team first. (the team admin can
+        check the settings here:
+        https://www.dropbox.com/team/admin/settings/space).
 
         Route attributes:
             scope: members.write
@@ -1308,7 +1313,10 @@ def team_member_space_limits_set_custom_quota(self,
                                                   users_and_quotas):
         """
         Set users custom quota. Custom quota has to be at least 15GB. A maximum
-        of 1000 members can be specified in a single call.
+        of 1000 members can be specified in a single call. Note: to apply a
+        custom space limit, a team admin needs to set a member space limit for
+        the team first. (the team admin can check the settings here:
+        https://www.dropbox.com/team/admin/settings/space).
 
         Route attributes:
             scope: members.read
diff --git a/dropbox/check.py b/dropbox/check.py
index 29d85034..b960e449 100644
--- a/dropbox/check.py
+++ b/dropbox/check.py
@@ -9,7 +9,7 @@
 
 class EchoArg(bb.Struct):
     """
-    EchoArg contains the arguments to be sent to the Dropbox servers.
+    Contains the arguments to be sent to the Dropbox servers.
 
     :ivar check.EchoArg.query: The string that you'd like to be echoed back to
         you.
diff --git a/dropbox/files.py b/dropbox/files.py
index 10727c8a..a930edac 100644
--- a/dropbox/files.py
+++ b/dropbox/files.py
@@ -10868,7 +10868,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 SearchV2Cursor_validator = bv.String(min_length=1)
 Sha256HexHash_validator = bv.String(min_length=64, max_length=64)
 SharedLinkUrl_validator = bv.String()
-TagText_validator = bv.String(min_length=1, max_length=32, pattern='[A-Za-z0-9_]+')
+TagText_validator = bv.String(min_length=1, max_length=32, pattern='[\\w]+')
 WritePath_validator = bv.String(pattern='(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)')
 WritePathOrId_validator = bv.String(pattern='(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)')
 AddTagArg.path.validator = Path_validator
@@ -11086,7 +11086,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     ('parent_rev', DeleteArg.parent_rev.validator),
 ]
 
-DeleteBatchArg.entries.validator = bv.List(DeleteArg_validator)
+DeleteBatchArg.entries.validator = bv.List(DeleteArg_validator, max_items=1000)
 DeleteBatchArg._all_field_names_ = set(['entries'])
 DeleteBatchArg._all_fields_ = [('entries', DeleteBatchArg.entries.validator)]
 
@@ -11979,7 +11979,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     ('rev', MinimalFileLinkMetadata.rev.validator),
 ]
 
-RelocationBatchArgBase.entries.validator = bv.List(RelocationPath_validator, min_items=1)
+RelocationBatchArgBase.entries.validator = bv.List(RelocationPath_validator, min_items=1, max_items=1000)
 RelocationBatchArgBase.autorename.validator = bv.Boolean()
 RelocationBatchArgBase._all_field_names_ = set([
     'entries',
diff --git a/dropbox/sharing.py b/dropbox/sharing.py
index 3564024e..9f81c142 100644
--- a/dropbox/sharing.py
+++ b/dropbox/sharing.py
@@ -90,6 +90,11 @@ class AccessLevel(bb.Union):
         the shared folder and does not have any access to comments.
     :ivar sharing.AccessLevel.traverse: The collaborator can only view the
         shared folder that they have access to.
+    :ivar sharing.AccessLevel.no_access: If there is a Righteous Link on the
+        folder which grants access and the user has visited such link, they are
+        allowed to perform certain action (i.e. add themselves to the folder)
+        via the link access even though the user themselves are not a member on
+        the shared folder yet.
     """
 
     _catch_all = 'other'
@@ -104,6 +109,8 @@ class AccessLevel(bb.Union):
     # Attribute is overwritten below the class definition
     traverse = None
     # Attribute is overwritten below the class definition
+    no_access = None
+    # Attribute is overwritten below the class definition
     other = None
 
     def is_owner(self):
@@ -146,6 +153,14 @@ def is_traverse(self):
         """
         return self._tag == 'traverse'
 
+    def is_no_access(self):
+        """
+        Check if the union tag is ``no_access``.
+
+        :rtype: bool
+        """
+        return self._tag == 'no_access'
+
     def is_other(self):
         """
         Check if the union tag is ``other``.
@@ -7909,8 +7924,8 @@ class ShareFolderArgBase(bb.Struct):
         happen asynchronously.
     :ivar sharing.ShareFolderArgBase.member_policy: Who can be a member of this
         shared folder. Only applicable if the current user is on a team.
-    :ivar sharing.ShareFolderArgBase.path: The path to the folder to share. If
-        it does not exist, then a new one is created.
+    :ivar sharing.ShareFolderArgBase.path: The path or the file id to the folder
+        to share. If it does not exist, then a new one is created.
     :ivar sharing.ShareFolderArgBase.shared_link_policy: The policy to apply to
         shared links created for content inside this shared folder.  The current
         user must be on a team to set this policy to
@@ -8815,6 +8830,8 @@ class SharedFolderAccessError(bb.Union):
         invalid.
     :ivar sharing.SharedFolderAccessError.not_a_member: The user is not a member
         of the shared folder thus cannot access it.
+    :ivar sharing.SharedFolderAccessError.invalid_member: The user does not
+        exist or their account is disabled.
     :ivar sharing.SharedFolderAccessError.email_unverified: Never set.
     :ivar sharing.SharedFolderAccessError.unmounted: The shared folder is
         unmounted.
@@ -8826,6 +8843,8 @@ class SharedFolderAccessError(bb.Union):
     # Attribute is overwritten below the class definition
     not_a_member = None
     # Attribute is overwritten below the class definition
+    invalid_member = None
+    # Attribute is overwritten below the class definition
     email_unverified = None
     # Attribute is overwritten below the class definition
     unmounted = None
@@ -8848,6 +8867,14 @@ def is_not_a_member(self):
         """
         return self._tag == 'not_a_member'
 
+    def is_invalid_member(self):
+        """
+        Check if the union tag is ``invalid_member``.
+
+        :rtype: bool
+        """
+        return self._tag == 'invalid_member'
+
     def is_email_unverified(self):
         """
         Check if the union tag is ``email_unverified``.
@@ -9039,6 +9066,8 @@ class SharedFolderMetadataBase(bb.Struct):
     :ivar sharing.SharedFolderMetadataBase.parent_shared_folder_id: The ID of
         the parent shared folder. This field is present only if the folder is
         contained within another shared folder.
+    :ivar sharing.SharedFolderMetadataBase.path_display: The full path of this
+        shared folder. Absent for unmounted folders.
     :ivar sharing.SharedFolderMetadataBase.path_lower: The lower-cased full path
         of this shared folder. Absent for unmounted folders.
     :ivar sharing.SharedFolderMetadataBase.parent_folder_name: Display name for
@@ -9052,6 +9081,7 @@ class SharedFolderMetadataBase(bb.Struct):
         '_owner_display_names_value',
         '_owner_team_value',
         '_parent_shared_folder_id_value',
+        '_path_display_value',
         '_path_lower_value',
         '_parent_folder_name_value',
     ]
@@ -9065,6 +9095,7 @@ def __init__(self,
                  owner_display_names=None,
                  owner_team=None,
                  parent_shared_folder_id=None,
+                 path_display=None,
                  path_lower=None,
                  parent_folder_name=None):
         self._access_type_value = bb.NOT_SET
@@ -9073,6 +9104,7 @@ def __init__(self,
         self._owner_display_names_value = bb.NOT_SET
         self._owner_team_value = bb.NOT_SET
         self._parent_shared_folder_id_value = bb.NOT_SET
+        self._path_display_value = bb.NOT_SET
         self._path_lower_value = bb.NOT_SET
         self._parent_folder_name_value = bb.NOT_SET
         if access_type is not None:
@@ -9087,6 +9119,8 @@ def __init__(self,
             self.owner_team = owner_team
         if parent_shared_folder_id is not None:
             self.parent_shared_folder_id = parent_shared_folder_id
+        if path_display is not None:
+            self.path_display = path_display
         if path_lower is not None:
             self.path_lower = path_lower
         if parent_folder_name is not None:
@@ -9110,6 +9144,9 @@ def __init__(self,
     # Instance attribute type: str (validator is set below)
     parent_shared_folder_id = bb.Attribute("parent_shared_folder_id", nullable=True)
 
+    # Instance attribute type: str (validator is set below)
+    path_display = bb.Attribute("path_display", nullable=True)
+
     # Instance attribute type: str (validator is set below)
     path_lower = bb.Attribute("path_lower", nullable=True)
 
@@ -9169,6 +9206,7 @@ def __init__(self,
                  owner_display_names=None,
                  owner_team=None,
                  parent_shared_folder_id=None,
+                 path_display=None,
                  path_lower=None,
                  parent_folder_name=None,
                  link_metadata=None,
@@ -9180,6 +9218,7 @@ def __init__(self,
                                                    owner_display_names,
                                                    owner_team,
                                                    parent_shared_folder_id,
+                                                   path_display,
                                                    path_lower,
                                                    parent_folder_name)
         self._link_metadata_value = bb.NOT_SET
@@ -11093,6 +11132,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 AccessLevel._viewer_validator = bv.Void()
 AccessLevel._viewer_no_comment_validator = bv.Void()
 AccessLevel._traverse_validator = bv.Void()
+AccessLevel._no_access_validator = bv.Void()
 AccessLevel._other_validator = bv.Void()
 AccessLevel._tagmap = {
     'owner': AccessLevel._owner_validator,
@@ -11100,6 +11140,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'viewer': AccessLevel._viewer_validator,
     'viewer_no_comment': AccessLevel._viewer_no_comment_validator,
     'traverse': AccessLevel._traverse_validator,
+    'no_access': AccessLevel._no_access_validator,
     'other': AccessLevel._other_validator,
 }
 
@@ -11108,6 +11149,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 AccessLevel.viewer = AccessLevel('viewer')
 AccessLevel.viewer_no_comment = AccessLevel('viewer_no_comment')
 AccessLevel.traverse = AccessLevel('traverse')
+AccessLevel.no_access = AccessLevel('no_access')
 AccessLevel.other = AccessLevel('other')
 
 AclUpdatePolicy._owner_validator = bv.Void()
@@ -12781,7 +12823,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 ShareFolderArgBase.acl_update_policy.validator = bv.Nullable(AclUpdatePolicy_validator)
 ShareFolderArgBase.force_async.validator = bv.Boolean()
 ShareFolderArgBase.member_policy.validator = bv.Nullable(MemberPolicy_validator)
-ShareFolderArgBase.path.validator = files.WritePath_validator
+ShareFolderArgBase.path.validator = files.WritePathOrId_validator
 ShareFolderArgBase.shared_link_policy.validator = bv.Nullable(SharedLinkPolicy_validator)
 ShareFolderArgBase.viewer_info_policy.validator = bv.Nullable(ViewerInfoPolicy_validator)
 ShareFolderArgBase.access_inheritance.validator = AccessInheritance_validator
@@ -12986,12 +13028,14 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 SharedFolderAccessError._invalid_id_validator = bv.Void()
 SharedFolderAccessError._not_a_member_validator = bv.Void()
+SharedFolderAccessError._invalid_member_validator = bv.Void()
 SharedFolderAccessError._email_unverified_validator = bv.Void()
 SharedFolderAccessError._unmounted_validator = bv.Void()
 SharedFolderAccessError._other_validator = bv.Void()
 SharedFolderAccessError._tagmap = {
     'invalid_id': SharedFolderAccessError._invalid_id_validator,
     'not_a_member': SharedFolderAccessError._not_a_member_validator,
+    'invalid_member': SharedFolderAccessError._invalid_member_validator,
     'email_unverified': SharedFolderAccessError._email_unverified_validator,
     'unmounted': SharedFolderAccessError._unmounted_validator,
     'other': SharedFolderAccessError._other_validator,
@@ -12999,6 +13043,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 SharedFolderAccessError.invalid_id = SharedFolderAccessError('invalid_id')
 SharedFolderAccessError.not_a_member = SharedFolderAccessError('not_a_member')
+SharedFolderAccessError.invalid_member = SharedFolderAccessError('invalid_member')
 SharedFolderAccessError.email_unverified = SharedFolderAccessError('email_unverified')
 SharedFolderAccessError.unmounted = SharedFolderAccessError('unmounted')
 SharedFolderAccessError.other = SharedFolderAccessError('other')
@@ -13041,6 +13086,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 SharedFolderMetadataBase.owner_display_names.validator = bv.Nullable(bv.List(bv.String()))
 SharedFolderMetadataBase.owner_team.validator = bv.Nullable(users.Team_validator)
 SharedFolderMetadataBase.parent_shared_folder_id.validator = bv.Nullable(common.SharedFolderId_validator)
+SharedFolderMetadataBase.path_display.validator = bv.Nullable(bv.String())
 SharedFolderMetadataBase.path_lower.validator = bv.Nullable(bv.String())
 SharedFolderMetadataBase.parent_folder_name.validator = bv.Nullable(bv.String())
 SharedFolderMetadataBase._all_field_names_ = set([
@@ -13050,6 +13096,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'owner_display_names',
     'owner_team',
     'parent_shared_folder_id',
+    'path_display',
     'path_lower',
     'parent_folder_name',
 ])
@@ -13060,6 +13107,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     ('owner_display_names', SharedFolderMetadataBase.owner_display_names.validator),
     ('owner_team', SharedFolderMetadataBase.owner_team.validator),
     ('parent_shared_folder_id', SharedFolderMetadataBase.parent_shared_folder_id.validator),
+    ('path_display', SharedFolderMetadataBase.path_display.validator),
     ('path_lower', SharedFolderMetadataBase.path_lower.validator),
     ('parent_folder_name', SharedFolderMetadataBase.parent_folder_name.validator),
 ]
diff --git a/dropbox/team.py b/dropbox/team.py
index 552f7251..7859a456 100644
--- a/dropbox/team.py
+++ b/dropbox/team.py
@@ -12396,8 +12396,8 @@ def __init__(self,
                  team_id=None,
                  num_licensed_users=None,
                  num_provisioned_users=None,
-                 num_used_licenses=None,
-                 policies=None):
+                 policies=None,
+                 num_used_licenses=None):
         self._name_value = bb.NOT_SET
         self._team_id_value = bb.NOT_SET
         self._num_licensed_users_value = bb.NOT_SET
@@ -16980,6 +16980,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 SharingAllowlistListResponse.has_more.default = False
 TeamFolderArchiveArg.force_async_off.default = False
 TeamFolderListArg.limit.default = 1000
+TeamGetInfoResult.num_used_licenses.default = 0
 TeamNamespacesListArg.limit.default = 1000
 devices_list_member_devices = bb.Route(
     'devices/list_member_devices',
diff --git a/dropbox/team_log.py b/dropbox/team_log.py
index 3b34d3bd..8049ee2d 100644
--- a/dropbox/team_log.py
+++ b/dropbox/team_log.py
@@ -573,6 +573,8 @@ class AccountCapturePolicy(bb.Union):
     # Attribute is overwritten below the class definition
     invited_users = None
     # Attribute is overwritten below the class definition
+    prevent_personal_creation = None
+    # Attribute is overwritten below the class definition
     other = None
 
     def is_all_users(self):
@@ -599,6 +601,14 @@ def is_invited_users(self):
         """
         return self._tag == 'invited_users'
 
+    def is_prevent_personal_creation(self):
+        """
+        Check if the union tag is ``prevent_personal_creation``.
+
+        :rtype: bool
+        """
+        return self._tag == 'prevent_personal_creation'
+
     def is_other(self):
         """
         Check if the union tag is ``other``.
@@ -2862,6 +2872,86 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 AssetLogInfo_validator = bv.Union(AssetLogInfo)
 
+class BackupAdminInvitationSentDetails(bb.Struct):
+    """
+    Invited members to activate Backup.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(BackupAdminInvitationSentDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+BackupAdminInvitationSentDetails_validator = bv.Struct(BackupAdminInvitationSentDetails)
+
+class BackupAdminInvitationSentType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(BackupAdminInvitationSentType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+BackupAdminInvitationSentType_validator = bv.Struct(BackupAdminInvitationSentType)
+
+class BackupInvitationOpenedDetails(bb.Struct):
+    """
+    Opened Backup invite.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(BackupInvitationOpenedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+BackupInvitationOpenedDetails_validator = bv.Struct(BackupInvitationOpenedDetails)
+
+class BackupInvitationOpenedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(BackupInvitationOpenedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+BackupInvitationOpenedType_validator = bv.Struct(BackupInvitationOpenedType)
+
 class BackupStatus(bb.Union):
     """
     Backup status
@@ -8107,6 +8197,7 @@ class EventCategory(bb.Union):
         mobile, desktop and Web platforms.
     :ivar team_log.EventCategory.domains: Events that involve domain management
         feature: domain verification, invite enforcement and account capture.
+    :ivar team_log.EventCategory.encryption: Events that involve encryption.
     :ivar team_log.EventCategory.file_operations: Events that have to do with
         filesystem operations on files and folders: copy, move, delete, etc.
     :ivar team_log.EventCategory.file_requests: Events that apply to the file
@@ -8155,6 +8246,8 @@ class EventCategory(bb.Union):
     # Attribute is overwritten below the class definition
     domains = None
     # Attribute is overwritten below the class definition
+    encryption = None
+    # Attribute is overwritten below the class definition
     file_operations = None
     # Attribute is overwritten below the class definition
     file_requests = None
@@ -8237,6 +8330,14 @@ def is_domains(self):
         """
         return self._tag == 'domains'
 
+    def is_encryption(self):
+        """
+        Check if the union tag is ``encryption``.
+
+        :rtype: bool
+        """
+        return self._tag == 'encryption'
+
     def is_file_operations(self):
         """
         Check if the union tag is ``file_operations``.
@@ -8427,6 +8528,28 @@ def admin_alerting_triggered_alert_details(cls, val):
         """
         return cls('admin_alerting_triggered_alert_details', val)
 
+    @classmethod
+    def ransomware_restore_process_completed_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_restore_process_completed_details`` tag with value ``val``.
+
+        :param RansomwareRestoreProcessCompletedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('ransomware_restore_process_completed_details', val)
+
+    @classmethod
+    def ransomware_restore_process_started_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_restore_process_started_details`` tag with value ``val``.
+
+        :param RansomwareRestoreProcessStartedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('ransomware_restore_process_started_details', val)
+
     @classmethod
     def app_blocked_by_permissions_details(cls, val):
         """
@@ -9195,6 +9318,85 @@ def enabled_domain_invites_details(cls, val):
         """
         return cls('enabled_domain_invites_details', val)
 
+    @classmethod
+    def team_encryption_key_cancel_key_deletion_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_cancel_key_deletion_details`` tag with value
+        ``val``.
+
+        :param TeamEncryptionKeyCancelKeyDeletionDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_cancel_key_deletion_details', val)
+
+    @classmethod
+    def team_encryption_key_create_key_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_create_key_details`` tag with value ``val``.
+
+        :param TeamEncryptionKeyCreateKeyDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_create_key_details', val)
+
+    @classmethod
+    def team_encryption_key_delete_key_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_delete_key_details`` tag with value ``val``.
+
+        :param TeamEncryptionKeyDeleteKeyDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_delete_key_details', val)
+
+    @classmethod
+    def team_encryption_key_disable_key_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_disable_key_details`` tag with value ``val``.
+
+        :param TeamEncryptionKeyDisableKeyDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_disable_key_details', val)
+
+    @classmethod
+    def team_encryption_key_enable_key_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_enable_key_details`` tag with value ``val``.
+
+        :param TeamEncryptionKeyEnableKeyDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_enable_key_details', val)
+
+    @classmethod
+    def team_encryption_key_rotate_key_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_rotate_key_details`` tag with value ``val``.
+
+        :param TeamEncryptionKeyRotateKeyDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_rotate_key_details', val)
+
+    @classmethod
+    def team_encryption_key_schedule_key_deletion_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_schedule_key_deletion_details`` tag with value
+        ``val``.
+
+        :param TeamEncryptionKeyScheduleKeyDeletionDetails val:
+        :rtype: EventDetails
+        """
+        return cls('team_encryption_key_schedule_key_deletion_details', val)
+
     @classmethod
     def apply_naming_convention_details(cls, val):
         """
@@ -9228,6 +9430,17 @@ def file_add_details(cls, val):
         """
         return cls('file_add_details', val)
 
+    @classmethod
+    def file_add_from_automation_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``file_add_from_automation_details`` tag with value ``val``.
+
+        :param FileAddFromAutomationDetails val:
+        :rtype: EventDetails
+        """
+        return cls('file_add_from_automation_details', val)
+
     @classmethod
     def file_copy_details(cls, val):
         """
@@ -9459,6 +9672,17 @@ def organize_folder_with_tidy_details(cls, val):
         """
         return cls('organize_folder_with_tidy_details', val)
 
+    @classmethod
+    def replay_file_delete_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_file_delete_details`` tag with value ``val``.
+
+        :param ReplayFileDeleteDetails val:
+        :rtype: EventDetails
+        """
+        return cls('replay_file_delete_details', val)
+
     @classmethod
     def rewind_folder_details(cls, val):
         """
@@ -9857,6 +10081,28 @@ def sso_error_details(cls, val):
         """
         return cls('sso_error_details', val)
 
+    @classmethod
+    def backup_admin_invitation_sent_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``backup_admin_invitation_sent_details`` tag with value ``val``.
+
+        :param BackupAdminInvitationSentDetails val:
+        :rtype: EventDetails
+        """
+        return cls('backup_admin_invitation_sent_details', val)
+
+    @classmethod
+    def backup_invitation_opened_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``backup_invitation_opened_details`` tag with value ``val``.
+
+        :param BackupInvitationOpenedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('backup_invitation_opened_details', val)
+
     @classmethod
     def create_team_invite_link_details(cls, val):
         """
@@ -10906,6 +11152,29 @@ def paper_admin_export_start_details(cls, val):
         """
         return cls('paper_admin_export_start_details', val)
 
+    @classmethod
+    def ransomware_alert_create_report_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_alert_create_report_details`` tag with value ``val``.
+
+        :param RansomwareAlertCreateReportDetails val:
+        :rtype: EventDetails
+        """
+        return cls('ransomware_alert_create_report_details', val)
+
+    @classmethod
+    def ransomware_alert_create_report_failed_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_alert_create_report_failed_details`` tag with value
+        ``val``.
+
+        :param RansomwareAlertCreateReportFailedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('ransomware_alert_create_report_failed_details', val)
+
     @classmethod
     def smart_sync_create_admin_privilege_report_details(cls, val):
         """
@@ -11072,6 +11341,50 @@ def open_note_shared_details(cls, val):
         """
         return cls('open_note_shared_details', val)
 
+    @classmethod
+    def replay_file_shared_link_created_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_file_shared_link_created_details`` tag with value ``val``.
+
+        :param ReplayFileSharedLinkCreatedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('replay_file_shared_link_created_details', val)
+
+    @classmethod
+    def replay_file_shared_link_modified_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_file_shared_link_modified_details`` tag with value ``val``.
+
+        :param ReplayFileSharedLinkModifiedDetails val:
+        :rtype: EventDetails
+        """
+        return cls('replay_file_shared_link_modified_details', val)
+
+    @classmethod
+    def replay_project_team_add_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_project_team_add_details`` tag with value ``val``.
+
+        :param ReplayProjectTeamAddDetails val:
+        :rtype: EventDetails
+        """
+        return cls('replay_project_team_add_details', val)
+
+    @classmethod
+    def replay_project_team_delete_details(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_project_team_delete_details`` tag with value ``val``.
+
+        :param ReplayProjectTeamDeleteDetails val:
+        :rtype: EventDetails
+        """
+        return cls('replay_project_team_delete_details', val)
+
     @classmethod
     def sf_add_group_details(cls, val):
         """
@@ -13817,6 +14130,22 @@ def is_admin_alerting_triggered_alert_details(self):
         """
         return self._tag == 'admin_alerting_triggered_alert_details'
 
+    def is_ransomware_restore_process_completed_details(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_completed_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_completed_details'
+
+    def is_ransomware_restore_process_started_details(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_started_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_started_details'
+
     def is_app_blocked_by_permissions_details(self):
         """
         Check if the union tag is ``app_blocked_by_permissions_details``.
@@ -14369,6 +14698,62 @@ def is_enabled_domain_invites_details(self):
         """
         return self._tag == 'enabled_domain_invites_details'
 
+    def is_team_encryption_key_cancel_key_deletion_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_cancel_key_deletion_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_cancel_key_deletion_details'
+
+    def is_team_encryption_key_create_key_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_create_key_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_create_key_details'
+
+    def is_team_encryption_key_delete_key_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_delete_key_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_delete_key_details'
+
+    def is_team_encryption_key_disable_key_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_disable_key_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_disable_key_details'
+
+    def is_team_encryption_key_enable_key_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_enable_key_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_enable_key_details'
+
+    def is_team_encryption_key_rotate_key_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_rotate_key_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_rotate_key_details'
+
+    def is_team_encryption_key_schedule_key_deletion_details(self):
+        """
+        Check if the union tag is ``team_encryption_key_schedule_key_deletion_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_schedule_key_deletion_details'
+
     def is_apply_naming_convention_details(self):
         """
         Check if the union tag is ``apply_naming_convention_details``.
@@ -14393,6 +14778,14 @@ def is_file_add_details(self):
         """
         return self._tag == 'file_add_details'
 
+    def is_file_add_from_automation_details(self):
+        """
+        Check if the union tag is ``file_add_from_automation_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'file_add_from_automation_details'
+
     def is_file_copy_details(self):
         """
         Check if the union tag is ``file_copy_details``.
@@ -14561,6 +14954,14 @@ def is_organize_folder_with_tidy_details(self):
         """
         return self._tag == 'organize_folder_with_tidy_details'
 
+    def is_replay_file_delete_details(self):
+        """
+        Check if the union tag is ``replay_file_delete_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_delete_details'
+
     def is_rewind_folder_details(self):
         """
         Check if the union tag is ``rewind_folder_details``.
@@ -14849,6 +15250,22 @@ def is_sso_error_details(self):
         """
         return self._tag == 'sso_error_details'
 
+    def is_backup_admin_invitation_sent_details(self):
+        """
+        Check if the union tag is ``backup_admin_invitation_sent_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_admin_invitation_sent_details'
+
+    def is_backup_invitation_opened_details(self):
+        """
+        Check if the union tag is ``backup_invitation_opened_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_invitation_opened_details'
+
     def is_create_team_invite_link_details(self):
         """
         Check if the union tag is ``create_team_invite_link_details``.
@@ -15609,6 +16026,22 @@ def is_paper_admin_export_start_details(self):
         """
         return self._tag == 'paper_admin_export_start_details'
 
+    def is_ransomware_alert_create_report_details(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report_details'
+
+    def is_ransomware_alert_create_report_failed_details(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report_failed_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report_failed_details'
+
     def is_smart_sync_create_admin_privilege_report_details(self):
         """
         Check if the union tag is ``smart_sync_create_admin_privilege_report_details``.
@@ -15729,6 +16162,38 @@ def is_open_note_shared_details(self):
         """
         return self._tag == 'open_note_shared_details'
 
+    def is_replay_file_shared_link_created_details(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_created_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_created_details'
+
+    def is_replay_file_shared_link_modified_details(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_modified_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_modified_details'
+
+    def is_replay_project_team_add_details(self):
+        """
+        Check if the union tag is ``replay_project_team_add_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_add_details'
+
+    def is_replay_project_team_delete_details(self):
+        """
+        Check if the union tag is ``replay_project_team_delete_details``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_delete_details'
+
     def is_sf_add_group_details(self):
         """
         Check if the union tag is ``sf_add_group_details``.
@@ -17711,6 +18176,26 @@ def get_admin_alerting_triggered_alert_details(self):
             raise AttributeError("tag 'admin_alerting_triggered_alert_details' not set")
         return self._value
 
+    def get_ransomware_restore_process_completed_details(self):
+        """
+        Only call this if :meth:`is_ransomware_restore_process_completed_details` is true.
+
+        :rtype: RansomwareRestoreProcessCompletedDetails
+        """
+        if not self.is_ransomware_restore_process_completed_details():
+            raise AttributeError("tag 'ransomware_restore_process_completed_details' not set")
+        return self._value
+
+    def get_ransomware_restore_process_started_details(self):
+        """
+        Only call this if :meth:`is_ransomware_restore_process_started_details` is true.
+
+        :rtype: RansomwareRestoreProcessStartedDetails
+        """
+        if not self.is_ransomware_restore_process_started_details():
+            raise AttributeError("tag 'ransomware_restore_process_started_details' not set")
+        return self._value
+
     def get_app_blocked_by_permissions_details(self):
         """
         Only call this if :meth:`is_app_blocked_by_permissions_details` is true.
@@ -18401,6 +18886,76 @@ def get_enabled_domain_invites_details(self):
             raise AttributeError("tag 'enabled_domain_invites_details' not set")
         return self._value
 
+    def get_team_encryption_key_cancel_key_deletion_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_cancel_key_deletion_details` is true.
+
+        :rtype: TeamEncryptionKeyCancelKeyDeletionDetails
+        """
+        if not self.is_team_encryption_key_cancel_key_deletion_details():
+            raise AttributeError("tag 'team_encryption_key_cancel_key_deletion_details' not set")
+        return self._value
+
+    def get_team_encryption_key_create_key_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_create_key_details` is true.
+
+        :rtype: TeamEncryptionKeyCreateKeyDetails
+        """
+        if not self.is_team_encryption_key_create_key_details():
+            raise AttributeError("tag 'team_encryption_key_create_key_details' not set")
+        return self._value
+
+    def get_team_encryption_key_delete_key_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_delete_key_details` is true.
+
+        :rtype: TeamEncryptionKeyDeleteKeyDetails
+        """
+        if not self.is_team_encryption_key_delete_key_details():
+            raise AttributeError("tag 'team_encryption_key_delete_key_details' not set")
+        return self._value
+
+    def get_team_encryption_key_disable_key_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_disable_key_details` is true.
+
+        :rtype: TeamEncryptionKeyDisableKeyDetails
+        """
+        if not self.is_team_encryption_key_disable_key_details():
+            raise AttributeError("tag 'team_encryption_key_disable_key_details' not set")
+        return self._value
+
+    def get_team_encryption_key_enable_key_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_enable_key_details` is true.
+
+        :rtype: TeamEncryptionKeyEnableKeyDetails
+        """
+        if not self.is_team_encryption_key_enable_key_details():
+            raise AttributeError("tag 'team_encryption_key_enable_key_details' not set")
+        return self._value
+
+    def get_team_encryption_key_rotate_key_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_rotate_key_details` is true.
+
+        :rtype: TeamEncryptionKeyRotateKeyDetails
+        """
+        if not self.is_team_encryption_key_rotate_key_details():
+            raise AttributeError("tag 'team_encryption_key_rotate_key_details' not set")
+        return self._value
+
+    def get_team_encryption_key_schedule_key_deletion_details(self):
+        """
+        Only call this if :meth:`is_team_encryption_key_schedule_key_deletion_details` is true.
+
+        :rtype: TeamEncryptionKeyScheduleKeyDeletionDetails
+        """
+        if not self.is_team_encryption_key_schedule_key_deletion_details():
+            raise AttributeError("tag 'team_encryption_key_schedule_key_deletion_details' not set")
+        return self._value
+
     def get_apply_naming_convention_details(self):
         """
         Only call this if :meth:`is_apply_naming_convention_details` is true.
@@ -18431,6 +18986,16 @@ def get_file_add_details(self):
             raise AttributeError("tag 'file_add_details' not set")
         return self._value
 
+    def get_file_add_from_automation_details(self):
+        """
+        Only call this if :meth:`is_file_add_from_automation_details` is true.
+
+        :rtype: FileAddFromAutomationDetails
+        """
+        if not self.is_file_add_from_automation_details():
+            raise AttributeError("tag 'file_add_from_automation_details' not set")
+        return self._value
+
     def get_file_copy_details(self):
         """
         Only call this if :meth:`is_file_copy_details` is true.
@@ -18641,6 +19206,16 @@ def get_organize_folder_with_tidy_details(self):
             raise AttributeError("tag 'organize_folder_with_tidy_details' not set")
         return self._value
 
+    def get_replay_file_delete_details(self):
+        """
+        Only call this if :meth:`is_replay_file_delete_details` is true.
+
+        :rtype: ReplayFileDeleteDetails
+        """
+        if not self.is_replay_file_delete_details():
+            raise AttributeError("tag 'replay_file_delete_details' not set")
+        return self._value
+
     def get_rewind_folder_details(self):
         """
         Only call this if :meth:`is_rewind_folder_details` is true.
@@ -19001,6 +19576,26 @@ def get_sso_error_details(self):
             raise AttributeError("tag 'sso_error_details' not set")
         return self._value
 
+    def get_backup_admin_invitation_sent_details(self):
+        """
+        Only call this if :meth:`is_backup_admin_invitation_sent_details` is true.
+
+        :rtype: BackupAdminInvitationSentDetails
+        """
+        if not self.is_backup_admin_invitation_sent_details():
+            raise AttributeError("tag 'backup_admin_invitation_sent_details' not set")
+        return self._value
+
+    def get_backup_invitation_opened_details(self):
+        """
+        Only call this if :meth:`is_backup_invitation_opened_details` is true.
+
+        :rtype: BackupInvitationOpenedDetails
+        """
+        if not self.is_backup_invitation_opened_details():
+            raise AttributeError("tag 'backup_invitation_opened_details' not set")
+        return self._value
+
     def get_create_team_invite_link_details(self):
         """
         Only call this if :meth:`is_create_team_invite_link_details` is true.
@@ -19951,6 +20546,26 @@ def get_paper_admin_export_start_details(self):
             raise AttributeError("tag 'paper_admin_export_start_details' not set")
         return self._value
 
+    def get_ransomware_alert_create_report_details(self):
+        """
+        Only call this if :meth:`is_ransomware_alert_create_report_details` is true.
+
+        :rtype: RansomwareAlertCreateReportDetails
+        """
+        if not self.is_ransomware_alert_create_report_details():
+            raise AttributeError("tag 'ransomware_alert_create_report_details' not set")
+        return self._value
+
+    def get_ransomware_alert_create_report_failed_details(self):
+        """
+        Only call this if :meth:`is_ransomware_alert_create_report_failed_details` is true.
+
+        :rtype: RansomwareAlertCreateReportFailedDetails
+        """
+        if not self.is_ransomware_alert_create_report_failed_details():
+            raise AttributeError("tag 'ransomware_alert_create_report_failed_details' not set")
+        return self._value
+
     def get_smart_sync_create_admin_privilege_report_details(self):
         """
         Only call this if :meth:`is_smart_sync_create_admin_privilege_report_details` is true.
@@ -20101,6 +20716,46 @@ def get_open_note_shared_details(self):
             raise AttributeError("tag 'open_note_shared_details' not set")
         return self._value
 
+    def get_replay_file_shared_link_created_details(self):
+        """
+        Only call this if :meth:`is_replay_file_shared_link_created_details` is true.
+
+        :rtype: ReplayFileSharedLinkCreatedDetails
+        """
+        if not self.is_replay_file_shared_link_created_details():
+            raise AttributeError("tag 'replay_file_shared_link_created_details' not set")
+        return self._value
+
+    def get_replay_file_shared_link_modified_details(self):
+        """
+        Only call this if :meth:`is_replay_file_shared_link_modified_details` is true.
+
+        :rtype: ReplayFileSharedLinkModifiedDetails
+        """
+        if not self.is_replay_file_shared_link_modified_details():
+            raise AttributeError("tag 'replay_file_shared_link_modified_details' not set")
+        return self._value
+
+    def get_replay_project_team_add_details(self):
+        """
+        Only call this if :meth:`is_replay_project_team_add_details` is true.
+
+        :rtype: ReplayProjectTeamAddDetails
+        """
+        if not self.is_replay_project_team_add_details():
+            raise AttributeError("tag 'replay_project_team_add_details' not set")
+        return self._value
+
+    def get_replay_project_team_delete_details(self):
+        """
+        Only call this if :meth:`is_replay_project_team_delete_details` is true.
+
+        :rtype: ReplayProjectTeamDeleteDetails
+        """
+        if not self.is_replay_project_team_delete_details():
+            raise AttributeError("tag 'replay_project_team_delete_details' not set")
+        return self._value
+
     def get_sf_add_group_details(self):
         """
         Only call this if :meth:`is_sf_add_group_details` is true.
@@ -22556,6 +23211,12 @@ class EventType(bb.Union):
     :ivar AdminAlertingTriggeredAlertType
         EventType.admin_alerting_triggered_alert: (admin_alerting) Triggered
         security alert
+    :ivar RansomwareRestoreProcessCompletedType
+        EventType.ransomware_restore_process_completed: (admin_alerting)
+        Completed ransomware restore process
+    :ivar RansomwareRestoreProcessStartedType
+        EventType.ransomware_restore_process_started: (admin_alerting) Started
+        ransomware restore process
     :ivar AppBlockedByPermissionsType EventType.app_blocked_by_permissions:
         (apps) Failed to connect app for member
     :ivar AppLinkTeamType EventType.app_link_team: (apps) Linked app for team
@@ -22723,12 +23384,35 @@ class EventType(bb.Union):
         from list of verified team domains
     :ivar EnabledDomainInvitesType EventType.enabled_domain_invites: (domains)
         Enabled domain invites (deprecated, no longer logged)
+    :ivar TeamEncryptionKeyCancelKeyDeletionType
+        EventType.team_encryption_key_cancel_key_deletion: (encryption) Canceled
+        team encryption key deletion
+    :ivar TeamEncryptionKeyCreateKeyType
+        EventType.team_encryption_key_create_key: (encryption) Created team
+        encryption key
+    :ivar TeamEncryptionKeyDeleteKeyType
+        EventType.team_encryption_key_delete_key: (encryption) Deleted team
+        encryption key
+    :ivar TeamEncryptionKeyDisableKeyType
+        EventType.team_encryption_key_disable_key: (encryption) Disabled team
+        encryption key
+    :ivar TeamEncryptionKeyEnableKeyType
+        EventType.team_encryption_key_enable_key: (encryption) Enabled team
+        encryption key
+    :ivar TeamEncryptionKeyRotateKeyType
+        EventType.team_encryption_key_rotate_key: (encryption) Rotated team
+        encryption key (deprecated, no longer logged)
+    :ivar TeamEncryptionKeyScheduleKeyDeletionType
+        EventType.team_encryption_key_schedule_key_deletion: (encryption)
+        Scheduled encryption key deletion
     :ivar ApplyNamingConventionType EventType.apply_naming_convention:
         (file_operations) Applied naming convention
     :ivar CreateFolderType EventType.create_folder: (file_operations) Created
         folders (deprecated, no longer logged)
     :ivar FileAddType EventType.file_add: (file_operations) Added files and/or
         folders
+    :ivar FileAddFromAutomationType EventType.file_add_from_automation:
+        (file_operations) Added files and/or folders from automation
     :ivar FileCopyType EventType.file_copy: (file_operations) Copied files
         and/or folders
     :ivar FileDeleteType EventType.file_delete: (file_operations) Deleted files
@@ -22773,6 +23457,8 @@ class EventType(bb.Union):
         (file_operations) Updated a label's value
     :ivar OrganizeFolderWithTidyType EventType.organize_folder_with_tidy:
         (file_operations) Organized a folder with multi-file organize
+    :ivar ReplayFileDeleteType EventType.replay_file_delete: (file_operations)
+        Deleted files in Replay
     :ivar RewindFolderType EventType.rewind_folder: (file_operations) Rewound a
         folder
     :ivar UndoNamingConventionType EventType.undo_naming_convention:
@@ -22843,6 +23529,10 @@ class EventType(bb.Union):
         Started admin sign-in-as session
     :ivar SsoErrorType EventType.sso_error: (logins) Failed to sign in via SSO
         (deprecated, replaced by 'Failed to sign in')
+    :ivar BackupAdminInvitationSentType EventType.backup_admin_invitation_sent:
+        (members) Invited members to activate Backup
+    :ivar BackupInvitationOpenedType EventType.backup_invitation_opened:
+        (members) Opened Backup invite
     :ivar CreateTeamInviteLinkType EventType.create_team_invite_link: (members)
         Created team invite link
     :ivar DeleteTeamInviteLinkType EventType.delete_team_invite_link: (members)
@@ -23062,6 +23752,12 @@ class EventType(bb.Union):
         report: Views of old links
     :ivar PaperAdminExportStartType EventType.paper_admin_export_start:
         (reports) Exported all team Paper docs
+    :ivar RansomwareAlertCreateReportType
+        EventType.ransomware_alert_create_report: (reports) Created ransomware
+        report
+    :ivar RansomwareAlertCreateReportFailedType
+        EventType.ransomware_alert_create_report_failed: (reports) Couldn't
+        generate ransomware report
     :ivar SmartSyncCreateAdminPrivilegeReportType
         EventType.smart_sync_create_admin_privilege_report: (reports) Created
         Smart Sync non-admin devices report
@@ -23094,6 +23790,16 @@ class EventType(bb.Union):
         received Paper doc (deprecated, no longer logged)
     :ivar OpenNoteSharedType EventType.open_note_shared: (sharing) Opened shared
         Paper doc (deprecated, no longer logged)
+    :ivar ReplayFileSharedLinkCreatedType
+        EventType.replay_file_shared_link_created: (sharing) Created shared link
+        in Replay
+    :ivar ReplayFileSharedLinkModifiedType
+        EventType.replay_file_shared_link_modified: (sharing) Modified shared
+        link in Replay
+    :ivar ReplayProjectTeamAddType EventType.replay_project_team_add: (sharing)
+        Added member to Replay Project
+    :ivar ReplayProjectTeamDeleteType EventType.replay_project_team_delete:
+        (sharing) Removed member from Replay Project
     :ivar SfAddGroupType EventType.sf_add_group: (sharing) Added team to shared
         folder (deprecated, no longer logged)
     :ivar SfAllowNonMembersToViewSharedLinksType
@@ -23766,6 +24472,28 @@ def admin_alerting_triggered_alert(cls, val):
         """
         return cls('admin_alerting_triggered_alert', val)
 
+    @classmethod
+    def ransomware_restore_process_completed(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_restore_process_completed`` tag with value ``val``.
+
+        :param RansomwareRestoreProcessCompletedType val:
+        :rtype: EventType
+        """
+        return cls('ransomware_restore_process_completed', val)
+
+    @classmethod
+    def ransomware_restore_process_started(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_restore_process_started`` tag with value ``val``.
+
+        :param RansomwareRestoreProcessStartedType val:
+        :rtype: EventType
+        """
+        return cls('ransomware_restore_process_started', val)
+
     @classmethod
     def app_blocked_by_permissions(cls, val):
         """
@@ -24528,6 +25256,83 @@ def enabled_domain_invites(cls, val):
         """
         return cls('enabled_domain_invites', val)
 
+    @classmethod
+    def team_encryption_key_cancel_key_deletion(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_cancel_key_deletion`` tag with value ``val``.
+
+        :param TeamEncryptionKeyCancelKeyDeletionType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_cancel_key_deletion', val)
+
+    @classmethod
+    def team_encryption_key_create_key(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_create_key`` tag with value ``val``.
+
+        :param TeamEncryptionKeyCreateKeyType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_create_key', val)
+
+    @classmethod
+    def team_encryption_key_delete_key(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_delete_key`` tag with value ``val``.
+
+        :param TeamEncryptionKeyDeleteKeyType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_delete_key', val)
+
+    @classmethod
+    def team_encryption_key_disable_key(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_disable_key`` tag with value ``val``.
+
+        :param TeamEncryptionKeyDisableKeyType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_disable_key', val)
+
+    @classmethod
+    def team_encryption_key_enable_key(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_enable_key`` tag with value ``val``.
+
+        :param TeamEncryptionKeyEnableKeyType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_enable_key', val)
+
+    @classmethod
+    def team_encryption_key_rotate_key(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_rotate_key`` tag with value ``val``.
+
+        :param TeamEncryptionKeyRotateKeyType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_rotate_key', val)
+
+    @classmethod
+    def team_encryption_key_schedule_key_deletion(cls, val):
+        """
+        Create an instance of this class set to the
+        ``team_encryption_key_schedule_key_deletion`` tag with value ``val``.
+
+        :param TeamEncryptionKeyScheduleKeyDeletionType val:
+        :rtype: EventType
+        """
+        return cls('team_encryption_key_schedule_key_deletion', val)
+
     @classmethod
     def apply_naming_convention(cls, val):
         """
@@ -24561,6 +25366,17 @@ def file_add(cls, val):
         """
         return cls('file_add', val)
 
+    @classmethod
+    def file_add_from_automation(cls, val):
+        """
+        Create an instance of this class set to the ``file_add_from_automation``
+        tag with value ``val``.
+
+        :param FileAddFromAutomationType val:
+        :rtype: EventType
+        """
+        return cls('file_add_from_automation', val)
+
     @classmethod
     def file_copy(cls, val):
         """
@@ -24792,6 +25608,17 @@ def organize_folder_with_tidy(cls, val):
         """
         return cls('organize_folder_with_tidy', val)
 
+    @classmethod
+    def replay_file_delete(cls, val):
+        """
+        Create an instance of this class set to the ``replay_file_delete`` tag
+        with value ``val``.
+
+        :param ReplayFileDeleteType val:
+        :rtype: EventType
+        """
+        return cls('replay_file_delete', val)
+
     @classmethod
     def rewind_folder(cls, val):
         """
@@ -25188,6 +26015,28 @@ def sso_error(cls, val):
         """
         return cls('sso_error', val)
 
+    @classmethod
+    def backup_admin_invitation_sent(cls, val):
+        """
+        Create an instance of this class set to the
+        ``backup_admin_invitation_sent`` tag with value ``val``.
+
+        :param BackupAdminInvitationSentType val:
+        :rtype: EventType
+        """
+        return cls('backup_admin_invitation_sent', val)
+
+    @classmethod
+    def backup_invitation_opened(cls, val):
+        """
+        Create an instance of this class set to the ``backup_invitation_opened``
+        tag with value ``val``.
+
+        :param BackupInvitationOpenedType val:
+        :rtype: EventType
+        """
+        return cls('backup_invitation_opened', val)
+
     @classmethod
     def create_team_invite_link(cls, val):
         """
@@ -26233,6 +27082,28 @@ def paper_admin_export_start(cls, val):
         """
         return cls('paper_admin_export_start', val)
 
+    @classmethod
+    def ransomware_alert_create_report(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_alert_create_report`` tag with value ``val``.
+
+        :param RansomwareAlertCreateReportType val:
+        :rtype: EventType
+        """
+        return cls('ransomware_alert_create_report', val)
+
+    @classmethod
+    def ransomware_alert_create_report_failed(cls, val):
+        """
+        Create an instance of this class set to the
+        ``ransomware_alert_create_report_failed`` tag with value ``val``.
+
+        :param RansomwareAlertCreateReportFailedType val:
+        :rtype: EventType
+        """
+        return cls('ransomware_alert_create_report_failed', val)
+
     @classmethod
     def smart_sync_create_admin_privilege_report(cls, val):
         """
@@ -26398,6 +27269,50 @@ def open_note_shared(cls, val):
         """
         return cls('open_note_shared', val)
 
+    @classmethod
+    def replay_file_shared_link_created(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_file_shared_link_created`` tag with value ``val``.
+
+        :param ReplayFileSharedLinkCreatedType val:
+        :rtype: EventType
+        """
+        return cls('replay_file_shared_link_created', val)
+
+    @classmethod
+    def replay_file_shared_link_modified(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_file_shared_link_modified`` tag with value ``val``.
+
+        :param ReplayFileSharedLinkModifiedType val:
+        :rtype: EventType
+        """
+        return cls('replay_file_shared_link_modified', val)
+
+    @classmethod
+    def replay_project_team_add(cls, val):
+        """
+        Create an instance of this class set to the ``replay_project_team_add``
+        tag with value ``val``.
+
+        :param ReplayProjectTeamAddType val:
+        :rtype: EventType
+        """
+        return cls('replay_project_team_add', val)
+
+    @classmethod
+    def replay_project_team_delete(cls, val):
+        """
+        Create an instance of this class set to the
+        ``replay_project_team_delete`` tag with value ``val``.
+
+        :param ReplayProjectTeamDeleteType val:
+        :rtype: EventType
+        """
+        return cls('replay_project_team_delete', val)
+
     @classmethod
     def sf_add_group(cls, val):
         """
@@ -29101,6 +30016,22 @@ def is_admin_alerting_triggered_alert(self):
         """
         return self._tag == 'admin_alerting_triggered_alert'
 
+    def is_ransomware_restore_process_completed(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_completed``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_completed'
+
+    def is_ransomware_restore_process_started(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_started``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_started'
+
     def is_app_blocked_by_permissions(self):
         """
         Check if the union tag is ``app_blocked_by_permissions``.
@@ -29653,6 +30584,62 @@ def is_enabled_domain_invites(self):
         """
         return self._tag == 'enabled_domain_invites'
 
+    def is_team_encryption_key_cancel_key_deletion(self):
+        """
+        Check if the union tag is ``team_encryption_key_cancel_key_deletion``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_cancel_key_deletion'
+
+    def is_team_encryption_key_create_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_create_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_create_key'
+
+    def is_team_encryption_key_delete_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_delete_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_delete_key'
+
+    def is_team_encryption_key_disable_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_disable_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_disable_key'
+
+    def is_team_encryption_key_enable_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_enable_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_enable_key'
+
+    def is_team_encryption_key_rotate_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_rotate_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_rotate_key'
+
+    def is_team_encryption_key_schedule_key_deletion(self):
+        """
+        Check if the union tag is ``team_encryption_key_schedule_key_deletion``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_schedule_key_deletion'
+
     def is_apply_naming_convention(self):
         """
         Check if the union tag is ``apply_naming_convention``.
@@ -29677,6 +30664,14 @@ def is_file_add(self):
         """
         return self._tag == 'file_add'
 
+    def is_file_add_from_automation(self):
+        """
+        Check if the union tag is ``file_add_from_automation``.
+
+        :rtype: bool
+        """
+        return self._tag == 'file_add_from_automation'
+
     def is_file_copy(self):
         """
         Check if the union tag is ``file_copy``.
@@ -29845,6 +30840,14 @@ def is_organize_folder_with_tidy(self):
         """
         return self._tag == 'organize_folder_with_tidy'
 
+    def is_replay_file_delete(self):
+        """
+        Check if the union tag is ``replay_file_delete``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_delete'
+
     def is_rewind_folder(self):
         """
         Check if the union tag is ``rewind_folder``.
@@ -30133,6 +31136,22 @@ def is_sso_error(self):
         """
         return self._tag == 'sso_error'
 
+    def is_backup_admin_invitation_sent(self):
+        """
+        Check if the union tag is ``backup_admin_invitation_sent``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_admin_invitation_sent'
+
+    def is_backup_invitation_opened(self):
+        """
+        Check if the union tag is ``backup_invitation_opened``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_invitation_opened'
+
     def is_create_team_invite_link(self):
         """
         Check if the union tag is ``create_team_invite_link``.
@@ -30893,6 +31912,22 @@ def is_paper_admin_export_start(self):
         """
         return self._tag == 'paper_admin_export_start'
 
+    def is_ransomware_alert_create_report(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report'
+
+    def is_ransomware_alert_create_report_failed(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report_failed``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report_failed'
+
     def is_smart_sync_create_admin_privilege_report(self):
         """
         Check if the union tag is ``smart_sync_create_admin_privilege_report``.
@@ -31013,6 +32048,38 @@ def is_open_note_shared(self):
         """
         return self._tag == 'open_note_shared'
 
+    def is_replay_file_shared_link_created(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_created``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_created'
+
+    def is_replay_file_shared_link_modified(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_modified``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_modified'
+
+    def is_replay_project_team_add(self):
+        """
+        Check if the union tag is ``replay_project_team_add``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_add'
+
+    def is_replay_project_team_delete(self):
+        """
+        Check if the union tag is ``replay_project_team_delete``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_delete'
+
     def is_sf_add_group(self):
         """
         Check if the union tag is ``sf_add_group``.
@@ -32993,6 +34060,30 @@ def get_admin_alerting_triggered_alert(self):
             raise AttributeError("tag 'admin_alerting_triggered_alert' not set")
         return self._value
 
+    def get_ransomware_restore_process_completed(self):
+        """
+        (admin_alerting) Completed ransomware restore process
+
+        Only call this if :meth:`is_ransomware_restore_process_completed` is true.
+
+        :rtype: RansomwareRestoreProcessCompletedType
+        """
+        if not self.is_ransomware_restore_process_completed():
+            raise AttributeError("tag 'ransomware_restore_process_completed' not set")
+        return self._value
+
+    def get_ransomware_restore_process_started(self):
+        """
+        (admin_alerting) Started ransomware restore process
+
+        Only call this if :meth:`is_ransomware_restore_process_started` is true.
+
+        :rtype: RansomwareRestoreProcessStartedType
+        """
+        if not self.is_ransomware_restore_process_started():
+            raise AttributeError("tag 'ransomware_restore_process_started' not set")
+        return self._value
+
     def get_app_blocked_by_permissions(self):
         """
         (apps) Failed to connect app for member
@@ -33826,6 +34917,90 @@ def get_enabled_domain_invites(self):
             raise AttributeError("tag 'enabled_domain_invites' not set")
         return self._value
 
+    def get_team_encryption_key_cancel_key_deletion(self):
+        """
+        (encryption) Canceled team encryption key deletion
+
+        Only call this if :meth:`is_team_encryption_key_cancel_key_deletion` is true.
+
+        :rtype: TeamEncryptionKeyCancelKeyDeletionType
+        """
+        if not self.is_team_encryption_key_cancel_key_deletion():
+            raise AttributeError("tag 'team_encryption_key_cancel_key_deletion' not set")
+        return self._value
+
+    def get_team_encryption_key_create_key(self):
+        """
+        (encryption) Created team encryption key
+
+        Only call this if :meth:`is_team_encryption_key_create_key` is true.
+
+        :rtype: TeamEncryptionKeyCreateKeyType
+        """
+        if not self.is_team_encryption_key_create_key():
+            raise AttributeError("tag 'team_encryption_key_create_key' not set")
+        return self._value
+
+    def get_team_encryption_key_delete_key(self):
+        """
+        (encryption) Deleted team encryption key
+
+        Only call this if :meth:`is_team_encryption_key_delete_key` is true.
+
+        :rtype: TeamEncryptionKeyDeleteKeyType
+        """
+        if not self.is_team_encryption_key_delete_key():
+            raise AttributeError("tag 'team_encryption_key_delete_key' not set")
+        return self._value
+
+    def get_team_encryption_key_disable_key(self):
+        """
+        (encryption) Disabled team encryption key
+
+        Only call this if :meth:`is_team_encryption_key_disable_key` is true.
+
+        :rtype: TeamEncryptionKeyDisableKeyType
+        """
+        if not self.is_team_encryption_key_disable_key():
+            raise AttributeError("tag 'team_encryption_key_disable_key' not set")
+        return self._value
+
+    def get_team_encryption_key_enable_key(self):
+        """
+        (encryption) Enabled team encryption key
+
+        Only call this if :meth:`is_team_encryption_key_enable_key` is true.
+
+        :rtype: TeamEncryptionKeyEnableKeyType
+        """
+        if not self.is_team_encryption_key_enable_key():
+            raise AttributeError("tag 'team_encryption_key_enable_key' not set")
+        return self._value
+
+    def get_team_encryption_key_rotate_key(self):
+        """
+        (encryption) Rotated team encryption key (deprecated, no longer logged)
+
+        Only call this if :meth:`is_team_encryption_key_rotate_key` is true.
+
+        :rtype: TeamEncryptionKeyRotateKeyType
+        """
+        if not self.is_team_encryption_key_rotate_key():
+            raise AttributeError("tag 'team_encryption_key_rotate_key' not set")
+        return self._value
+
+    def get_team_encryption_key_schedule_key_deletion(self):
+        """
+        (encryption) Scheduled encryption key deletion
+
+        Only call this if :meth:`is_team_encryption_key_schedule_key_deletion` is true.
+
+        :rtype: TeamEncryptionKeyScheduleKeyDeletionType
+        """
+        if not self.is_team_encryption_key_schedule_key_deletion():
+            raise AttributeError("tag 'team_encryption_key_schedule_key_deletion' not set")
+        return self._value
+
     def get_apply_naming_convention(self):
         """
         (file_operations) Applied naming convention
@@ -33862,6 +35037,18 @@ def get_file_add(self):
             raise AttributeError("tag 'file_add' not set")
         return self._value
 
+    def get_file_add_from_automation(self):
+        """
+        (file_operations) Added files and/or folders from automation
+
+        Only call this if :meth:`is_file_add_from_automation` is true.
+
+        :rtype: FileAddFromAutomationType
+        """
+        if not self.is_file_add_from_automation():
+            raise AttributeError("tag 'file_add_from_automation' not set")
+        return self._value
+
     def get_file_copy(self):
         """
         (file_operations) Copied files and/or folders
@@ -34114,6 +35301,18 @@ def get_organize_folder_with_tidy(self):
             raise AttributeError("tag 'organize_folder_with_tidy' not set")
         return self._value
 
+    def get_replay_file_delete(self):
+        """
+        (file_operations) Deleted files in Replay
+
+        Only call this if :meth:`is_replay_file_delete` is true.
+
+        :rtype: ReplayFileDeleteType
+        """
+        if not self.is_replay_file_delete():
+            raise AttributeError("tag 'replay_file_delete' not set")
+        return self._value
+
     def get_rewind_folder(self):
         """
         (file_operations) Rewound a folder
@@ -34548,6 +35747,30 @@ def get_sso_error(self):
             raise AttributeError("tag 'sso_error' not set")
         return self._value
 
+    def get_backup_admin_invitation_sent(self):
+        """
+        (members) Invited members to activate Backup
+
+        Only call this if :meth:`is_backup_admin_invitation_sent` is true.
+
+        :rtype: BackupAdminInvitationSentType
+        """
+        if not self.is_backup_admin_invitation_sent():
+            raise AttributeError("tag 'backup_admin_invitation_sent' not set")
+        return self._value
+
+    def get_backup_invitation_opened(self):
+        """
+        (members) Opened Backup invite
+
+        Only call this if :meth:`is_backup_invitation_opened` is true.
+
+        :rtype: BackupInvitationOpenedType
+        """
+        if not self.is_backup_invitation_opened():
+            raise AttributeError("tag 'backup_invitation_opened' not set")
+        return self._value
+
     def get_create_team_invite_link(self):
         """
         (members) Created team invite link
@@ -35698,6 +36921,30 @@ def get_paper_admin_export_start(self):
             raise AttributeError("tag 'paper_admin_export_start' not set")
         return self._value
 
+    def get_ransomware_alert_create_report(self):
+        """
+        (reports) Created ransomware report
+
+        Only call this if :meth:`is_ransomware_alert_create_report` is true.
+
+        :rtype: RansomwareAlertCreateReportType
+        """
+        if not self.is_ransomware_alert_create_report():
+            raise AttributeError("tag 'ransomware_alert_create_report' not set")
+        return self._value
+
+    def get_ransomware_alert_create_report_failed(self):
+        """
+        (reports) Couldn't generate ransomware report
+
+        Only call this if :meth:`is_ransomware_alert_create_report_failed` is true.
+
+        :rtype: RansomwareAlertCreateReportFailedType
+        """
+        if not self.is_ransomware_alert_create_report_failed():
+            raise AttributeError("tag 'ransomware_alert_create_report_failed' not set")
+        return self._value
+
     def get_smart_sync_create_admin_privilege_report(self):
         """
         (reports) Created Smart Sync non-admin devices report
@@ -35881,6 +37128,54 @@ def get_open_note_shared(self):
             raise AttributeError("tag 'open_note_shared' not set")
         return self._value
 
+    def get_replay_file_shared_link_created(self):
+        """
+        (sharing) Created shared link in Replay
+
+        Only call this if :meth:`is_replay_file_shared_link_created` is true.
+
+        :rtype: ReplayFileSharedLinkCreatedType
+        """
+        if not self.is_replay_file_shared_link_created():
+            raise AttributeError("tag 'replay_file_shared_link_created' not set")
+        return self._value
+
+    def get_replay_file_shared_link_modified(self):
+        """
+        (sharing) Modified shared link in Replay
+
+        Only call this if :meth:`is_replay_file_shared_link_modified` is true.
+
+        :rtype: ReplayFileSharedLinkModifiedType
+        """
+        if not self.is_replay_file_shared_link_modified():
+            raise AttributeError("tag 'replay_file_shared_link_modified' not set")
+        return self._value
+
+    def get_replay_project_team_add(self):
+        """
+        (sharing) Added member to Replay Project
+
+        Only call this if :meth:`is_replay_project_team_add` is true.
+
+        :rtype: ReplayProjectTeamAddType
+        """
+        if not self.is_replay_project_team_add():
+            raise AttributeError("tag 'replay_project_team_add' not set")
+        return self._value
+
+    def get_replay_project_team_delete(self):
+        """
+        (sharing) Removed member from Replay Project
+
+        Only call this if :meth:`is_replay_project_team_delete` is true.
+
+        :rtype: ReplayProjectTeamDeleteType
+        """
+        if not self.is_replay_project_team_delete():
+            raise AttributeError("tag 'replay_project_team_delete' not set")
+        return self._value
+
     def get_sf_add_group(self):
         """
         (sharing) Added team to shared folder (deprecated, no longer logged)
@@ -38869,6 +40164,10 @@ class EventTypeArg(bb.Union):
         (admin_alerting) Changed an alert setting
     :ivar team_log.EventTypeArg.admin_alerting_triggered_alert: (admin_alerting)
         Triggered security alert
+    :ivar team_log.EventTypeArg.ransomware_restore_process_completed:
+        (admin_alerting) Completed ransomware restore process
+    :ivar team_log.EventTypeArg.ransomware_restore_process_started:
+        (admin_alerting) Started ransomware restore process
     :ivar team_log.EventTypeArg.app_blocked_by_permissions: (apps) Failed to
         connect app for member
     :ivar team_log.EventTypeArg.app_link_team: (apps) Linked app for team
@@ -39004,12 +40303,28 @@ class EventTypeArg(bb.Union):
         Removed domain from list of verified team domains
     :ivar team_log.EventTypeArg.enabled_domain_invites: (domains) Enabled domain
         invites (deprecated, no longer logged)
+    :ivar team_log.EventTypeArg.team_encryption_key_cancel_key_deletion:
+        (encryption) Canceled team encryption key deletion
+    :ivar team_log.EventTypeArg.team_encryption_key_create_key: (encryption)
+        Created team encryption key
+    :ivar team_log.EventTypeArg.team_encryption_key_delete_key: (encryption)
+        Deleted team encryption key
+    :ivar team_log.EventTypeArg.team_encryption_key_disable_key: (encryption)
+        Disabled team encryption key
+    :ivar team_log.EventTypeArg.team_encryption_key_enable_key: (encryption)
+        Enabled team encryption key
+    :ivar team_log.EventTypeArg.team_encryption_key_rotate_key: (encryption)
+        Rotated team encryption key (deprecated, no longer logged)
+    :ivar team_log.EventTypeArg.team_encryption_key_schedule_key_deletion:
+        (encryption) Scheduled encryption key deletion
     :ivar team_log.EventTypeArg.apply_naming_convention: (file_operations)
         Applied naming convention
     :ivar team_log.EventTypeArg.create_folder: (file_operations) Created folders
         (deprecated, no longer logged)
     :ivar team_log.EventTypeArg.file_add: (file_operations) Added files and/or
         folders
+    :ivar team_log.EventTypeArg.file_add_from_automation: (file_operations)
+        Added files and/or folders from automation
     :ivar team_log.EventTypeArg.file_copy: (file_operations) Copied files and/or
         folders
     :ivar team_log.EventTypeArg.file_delete: (file_operations) Deleted files
@@ -39051,6 +40366,8 @@ class EventTypeArg(bb.Union):
         Updated a label's value
     :ivar team_log.EventTypeArg.organize_folder_with_tidy: (file_operations)
         Organized a folder with multi-file organize
+    :ivar team_log.EventTypeArg.replay_file_delete: (file_operations) Deleted
+        files in Replay
     :ivar team_log.EventTypeArg.rewind_folder: (file_operations) Rewound a
         folder
     :ivar team_log.EventTypeArg.undo_naming_convention: (file_operations)
@@ -39116,6 +40433,10 @@ class EventTypeArg(bb.Union):
         sign-in-as session
     :ivar team_log.EventTypeArg.sso_error: (logins) Failed to sign in via SSO
         (deprecated, replaced by 'Failed to sign in')
+    :ivar team_log.EventTypeArg.backup_admin_invitation_sent: (members) Invited
+        members to activate Backup
+    :ivar team_log.EventTypeArg.backup_invitation_opened: (members) Opened
+        Backup invite
     :ivar team_log.EventTypeArg.create_team_invite_link: (members) Created team
         invite link
     :ivar team_log.EventTypeArg.delete_team_invite_link: (members) Deleted team
@@ -39302,6 +40623,10 @@ class EventTypeArg(bb.Union):
         Couldn't create report: Views of old links
     :ivar team_log.EventTypeArg.paper_admin_export_start: (reports) Exported all
         team Paper docs
+    :ivar team_log.EventTypeArg.ransomware_alert_create_report: (reports)
+        Created ransomware report
+    :ivar team_log.EventTypeArg.ransomware_alert_create_report_failed: (reports)
+        Couldn't generate ransomware report
     :ivar team_log.EventTypeArg.smart_sync_create_admin_privilege_report:
         (reports) Created Smart Sync non-admin devices report
     :ivar team_log.EventTypeArg.team_activity_create_report: (reports) Created
@@ -39331,6 +40656,14 @@ class EventTypeArg(bb.Union):
         Paper doc (deprecated, no longer logged)
     :ivar team_log.EventTypeArg.open_note_shared: (sharing) Opened shared Paper
         doc (deprecated, no longer logged)
+    :ivar team_log.EventTypeArg.replay_file_shared_link_created: (sharing)
+        Created shared link in Replay
+    :ivar team_log.EventTypeArg.replay_file_shared_link_modified: (sharing)
+        Modified shared link in Replay
+    :ivar team_log.EventTypeArg.replay_project_team_add: (sharing) Added member
+        to Replay Project
+    :ivar team_log.EventTypeArg.replay_project_team_delete: (sharing) Removed
+        member from Replay Project
     :ivar team_log.EventTypeArg.sf_add_group: (sharing) Added team to shared
         folder (deprecated, no longer logged)
     :ivar team_log.EventTypeArg.sf_allow_non_members_to_view_shared_links:
@@ -39875,6 +41208,10 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     admin_alerting_triggered_alert = None
     # Attribute is overwritten below the class definition
+    ransomware_restore_process_completed = None
+    # Attribute is overwritten below the class definition
+    ransomware_restore_process_started = None
+    # Attribute is overwritten below the class definition
     app_blocked_by_permissions = None
     # Attribute is overwritten below the class definition
     app_link_team = None
@@ -40013,12 +41350,28 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     enabled_domain_invites = None
     # Attribute is overwritten below the class definition
+    team_encryption_key_cancel_key_deletion = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_create_key = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_delete_key = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_disable_key = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_enable_key = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_rotate_key = None
+    # Attribute is overwritten below the class definition
+    team_encryption_key_schedule_key_deletion = None
+    # Attribute is overwritten below the class definition
     apply_naming_convention = None
     # Attribute is overwritten below the class definition
     create_folder = None
     # Attribute is overwritten below the class definition
     file_add = None
     # Attribute is overwritten below the class definition
+    file_add_from_automation = None
+    # Attribute is overwritten below the class definition
     file_copy = None
     # Attribute is overwritten below the class definition
     file_delete = None
@@ -40061,6 +41414,8 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     organize_folder_with_tidy = None
     # Attribute is overwritten below the class definition
+    replay_file_delete = None
+    # Attribute is overwritten below the class definition
     rewind_folder = None
     # Attribute is overwritten below the class definition
     undo_naming_convention = None
@@ -40133,6 +41488,10 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     sso_error = None
     # Attribute is overwritten below the class definition
+    backup_admin_invitation_sent = None
+    # Attribute is overwritten below the class definition
+    backup_invitation_opened = None
+    # Attribute is overwritten below the class definition
     create_team_invite_link = None
     # Attribute is overwritten below the class definition
     delete_team_invite_link = None
@@ -40323,6 +41682,10 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     paper_admin_export_start = None
     # Attribute is overwritten below the class definition
+    ransomware_alert_create_report = None
+    # Attribute is overwritten below the class definition
+    ransomware_alert_create_report_failed = None
+    # Attribute is overwritten below the class definition
     smart_sync_create_admin_privilege_report = None
     # Attribute is overwritten below the class definition
     team_activity_create_report = None
@@ -40353,6 +41716,14 @@ class EventTypeArg(bb.Union):
     # Attribute is overwritten below the class definition
     open_note_shared = None
     # Attribute is overwritten below the class definition
+    replay_file_shared_link_created = None
+    # Attribute is overwritten below the class definition
+    replay_file_shared_link_modified = None
+    # Attribute is overwritten below the class definition
+    replay_project_team_add = None
+    # Attribute is overwritten below the class definition
+    replay_project_team_delete = None
+    # Attribute is overwritten below the class definition
     sf_add_group = None
     # Attribute is overwritten below the class definition
     sf_allow_non_members_to_view_shared_links = None
@@ -40863,6 +42234,22 @@ def is_admin_alerting_triggered_alert(self):
         """
         return self._tag == 'admin_alerting_triggered_alert'
 
+    def is_ransomware_restore_process_completed(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_completed``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_completed'
+
+    def is_ransomware_restore_process_started(self):
+        """
+        Check if the union tag is ``ransomware_restore_process_started``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_restore_process_started'
+
     def is_app_blocked_by_permissions(self):
         """
         Check if the union tag is ``app_blocked_by_permissions``.
@@ -41415,6 +42802,62 @@ def is_enabled_domain_invites(self):
         """
         return self._tag == 'enabled_domain_invites'
 
+    def is_team_encryption_key_cancel_key_deletion(self):
+        """
+        Check if the union tag is ``team_encryption_key_cancel_key_deletion``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_cancel_key_deletion'
+
+    def is_team_encryption_key_create_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_create_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_create_key'
+
+    def is_team_encryption_key_delete_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_delete_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_delete_key'
+
+    def is_team_encryption_key_disable_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_disable_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_disable_key'
+
+    def is_team_encryption_key_enable_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_enable_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_enable_key'
+
+    def is_team_encryption_key_rotate_key(self):
+        """
+        Check if the union tag is ``team_encryption_key_rotate_key``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_rotate_key'
+
+    def is_team_encryption_key_schedule_key_deletion(self):
+        """
+        Check if the union tag is ``team_encryption_key_schedule_key_deletion``.
+
+        :rtype: bool
+        """
+        return self._tag == 'team_encryption_key_schedule_key_deletion'
+
     def is_apply_naming_convention(self):
         """
         Check if the union tag is ``apply_naming_convention``.
@@ -41439,6 +42882,14 @@ def is_file_add(self):
         """
         return self._tag == 'file_add'
 
+    def is_file_add_from_automation(self):
+        """
+        Check if the union tag is ``file_add_from_automation``.
+
+        :rtype: bool
+        """
+        return self._tag == 'file_add_from_automation'
+
     def is_file_copy(self):
         """
         Check if the union tag is ``file_copy``.
@@ -41607,6 +43058,14 @@ def is_organize_folder_with_tidy(self):
         """
         return self._tag == 'organize_folder_with_tidy'
 
+    def is_replay_file_delete(self):
+        """
+        Check if the union tag is ``replay_file_delete``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_delete'
+
     def is_rewind_folder(self):
         """
         Check if the union tag is ``rewind_folder``.
@@ -41895,6 +43354,22 @@ def is_sso_error(self):
         """
         return self._tag == 'sso_error'
 
+    def is_backup_admin_invitation_sent(self):
+        """
+        Check if the union tag is ``backup_admin_invitation_sent``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_admin_invitation_sent'
+
+    def is_backup_invitation_opened(self):
+        """
+        Check if the union tag is ``backup_invitation_opened``.
+
+        :rtype: bool
+        """
+        return self._tag == 'backup_invitation_opened'
+
     def is_create_team_invite_link(self):
         """
         Check if the union tag is ``create_team_invite_link``.
@@ -42655,6 +44130,22 @@ def is_paper_admin_export_start(self):
         """
         return self._tag == 'paper_admin_export_start'
 
+    def is_ransomware_alert_create_report(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report'
+
+    def is_ransomware_alert_create_report_failed(self):
+        """
+        Check if the union tag is ``ransomware_alert_create_report_failed``.
+
+        :rtype: bool
+        """
+        return self._tag == 'ransomware_alert_create_report_failed'
+
     def is_smart_sync_create_admin_privilege_report(self):
         """
         Check if the union tag is ``smart_sync_create_admin_privilege_report``.
@@ -42775,6 +44266,38 @@ def is_open_note_shared(self):
         """
         return self._tag == 'open_note_shared'
 
+    def is_replay_file_shared_link_created(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_created``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_created'
+
+    def is_replay_file_shared_link_modified(self):
+        """
+        Check if the union tag is ``replay_file_shared_link_modified``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_file_shared_link_modified'
+
+    def is_replay_project_team_add(self):
+        """
+        Check if the union tag is ``replay_project_team_add``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_add'
+
+    def is_replay_project_team_delete(self):
+        """
+        Check if the union tag is ``replay_project_team_delete``.
+
+        :rtype: bool
+        """
+        return self._tag == 'replay_project_team_delete'
+
     def is_sf_add_group(self):
         """
         Check if the union tag is ``sf_add_group``.
@@ -45911,6 +47434,46 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 FileAddDetails_validator = bv.Struct(FileAddDetails)
 
+class FileAddFromAutomationDetails(bb.Struct):
+    """
+    Added files and/or folders from automation.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(FileAddFromAutomationDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+FileAddFromAutomationDetails_validator = bv.Struct(FileAddFromAutomationDetails)
+
+class FileAddFromAutomationType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(FileAddFromAutomationType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+FileAddFromAutomationType_validator = bv.Struct(FileAddFromAutomationType)
+
 class FileAddType(bb.Struct):
 
     __slots__ = [
@@ -52750,6 +54313,8 @@ class LoginMethod(bb.Union):
     # Attribute is overwritten below the class definition
     google_oauth = None
     # Attribute is overwritten below the class definition
+    lenovo_oauth = None
+    # Attribute is overwritten below the class definition
     password = None
     # Attribute is overwritten below the class definition
     qr_code = None
@@ -52786,6 +54351,14 @@ def is_google_oauth(self):
         """
         return self._tag == 'google_oauth'
 
+    def is_lenovo_oauth(self):
+        """
+        Check if the union tag is ``lenovo_oauth``.
+
+        :rtype: bool
+        """
+        return self._tag == 'lenovo_oauth'
+
     def is_password(self):
         """
         Check if the union tag is ``password``.
@@ -60083,6 +61656,218 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 QuickActionType_validator = bv.Union(QuickActionType)
 
+class RansomwareAlertCreateReportDetails(bb.Struct):
+    """
+    Created ransomware report.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareAlertCreateReportDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareAlertCreateReportDetails_validator = bv.Struct(RansomwareAlertCreateReportDetails)
+
+class RansomwareAlertCreateReportFailedDetails(bb.Struct):
+    """
+    Couldn't generate ransomware report.
+
+    :ivar team_log.RansomwareAlertCreateReportFailedDetails.failure_reason:
+        Failure reason.
+    """
+
+    __slots__ = [
+        '_failure_reason_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 failure_reason=None):
+        self._failure_reason_value = bb.NOT_SET
+        if failure_reason is not None:
+            self.failure_reason = failure_reason
+
+    # Instance attribute type: team.TeamReportFailureReason (validator is set below)
+    failure_reason = bb.Attribute("failure_reason", user_defined=True)
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareAlertCreateReportFailedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareAlertCreateReportFailedDetails_validator = bv.Struct(RansomwareAlertCreateReportFailedDetails)
+
+class RansomwareAlertCreateReportFailedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareAlertCreateReportFailedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareAlertCreateReportFailedType_validator = bv.Struct(RansomwareAlertCreateReportFailedType)
+
+class RansomwareAlertCreateReportType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareAlertCreateReportType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareAlertCreateReportType_validator = bv.Struct(RansomwareAlertCreateReportType)
+
+class RansomwareRestoreProcessCompletedDetails(bb.Struct):
+    """
+    Completed ransomware restore process.
+
+    :ivar team_log.RansomwareRestoreProcessCompletedDetails.status: The status
+        of the restore process.
+    :ivar
+        team_log.RansomwareRestoreProcessCompletedDetails.restored_files_count:
+        Restored files count.
+    :ivar
+        team_log.RansomwareRestoreProcessCompletedDetails.restored_files_failed_count:
+        Restored files failed count.
+    """
+
+    __slots__ = [
+        '_status_value',
+        '_restored_files_count_value',
+        '_restored_files_failed_count_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 status=None,
+                 restored_files_count=None,
+                 restored_files_failed_count=None):
+        self._status_value = bb.NOT_SET
+        self._restored_files_count_value = bb.NOT_SET
+        self._restored_files_failed_count_value = bb.NOT_SET
+        if status is not None:
+            self.status = status
+        if restored_files_count is not None:
+            self.restored_files_count = restored_files_count
+        if restored_files_failed_count is not None:
+            self.restored_files_failed_count = restored_files_failed_count
+
+    # Instance attribute type: str (validator is set below)
+    status = bb.Attribute("status")
+
+    # Instance attribute type: int (validator is set below)
+    restored_files_count = bb.Attribute("restored_files_count")
+
+    # Instance attribute type: int (validator is set below)
+    restored_files_failed_count = bb.Attribute("restored_files_failed_count")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareRestoreProcessCompletedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareRestoreProcessCompletedDetails_validator = bv.Struct(RansomwareRestoreProcessCompletedDetails)
+
+class RansomwareRestoreProcessCompletedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareRestoreProcessCompletedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareRestoreProcessCompletedType_validator = bv.Struct(RansomwareRestoreProcessCompletedType)
+
+class RansomwareRestoreProcessStartedDetails(bb.Struct):
+    """
+    Started ransomware restore process.
+
+    :ivar team_log.RansomwareRestoreProcessStartedDetails.extension: Ransomware
+        filename extension.
+    """
+
+    __slots__ = [
+        '_extension_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 extension=None):
+        self._extension_value = bb.NOT_SET
+        if extension is not None:
+            self.extension = extension
+
+    # Instance attribute type: str (validator is set below)
+    extension = bb.Attribute("extension")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareRestoreProcessStartedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareRestoreProcessStartedDetails_validator = bv.Struct(RansomwareRestoreProcessStartedDetails)
+
+class RansomwareRestoreProcessStartedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(RansomwareRestoreProcessStartedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+RansomwareRestoreProcessStartedType_validator = bv.Struct(RansomwareRestoreProcessStartedType)
+
 class RecipientsConfiguration(bb.Struct):
     """
     Recipients Configuration
@@ -60169,6 +61954,206 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 RelocateAssetReferencesLogInfo_validator = bv.Struct(RelocateAssetReferencesLogInfo)
 
+class ReplayFileDeleteDetails(bb.Struct):
+    """
+    Deleted files in Replay.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileDeleteDetails_validator = bv.Struct(ReplayFileDeleteDetails)
+
+class ReplayFileDeleteType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileDeleteType_validator = bv.Struct(ReplayFileDeleteType)
+
+class ReplayFileSharedLinkCreatedDetails(bb.Struct):
+    """
+    Created shared link in Replay.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileSharedLinkCreatedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileSharedLinkCreatedDetails_validator = bv.Struct(ReplayFileSharedLinkCreatedDetails)
+
+class ReplayFileSharedLinkCreatedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileSharedLinkCreatedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileSharedLinkCreatedType_validator = bv.Struct(ReplayFileSharedLinkCreatedType)
+
+class ReplayFileSharedLinkModifiedDetails(bb.Struct):
+    """
+    Modified shared link in Replay.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileSharedLinkModifiedDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileSharedLinkModifiedDetails_validator = bv.Struct(ReplayFileSharedLinkModifiedDetails)
+
+class ReplayFileSharedLinkModifiedType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayFileSharedLinkModifiedType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayFileSharedLinkModifiedType_validator = bv.Struct(ReplayFileSharedLinkModifiedType)
+
+class ReplayProjectTeamAddDetails(bb.Struct):
+    """
+    Added member to Replay Project.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayProjectTeamAddDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayProjectTeamAddDetails_validator = bv.Struct(ReplayProjectTeamAddDetails)
+
+class ReplayProjectTeamAddType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayProjectTeamAddType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayProjectTeamAddType_validator = bv.Struct(ReplayProjectTeamAddType)
+
+class ReplayProjectTeamDeleteDetails(bb.Struct):
+    """
+    Removed member from Replay Project.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayProjectTeamDeleteDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayProjectTeamDeleteDetails_validator = bv.Struct(ReplayProjectTeamDeleteDetails)
+
+class ReplayProjectTeamDeleteType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(ReplayProjectTeamDeleteType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+ReplayProjectTeamDeleteType_validator = bv.Struct(ReplayProjectTeamDeleteType)
+
 class ResellerLogInfo(bb.Struct):
     """
     Reseller information.
@@ -68874,6 +70859,286 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 TeamDetails_validator = bv.Struct(TeamDetails)
 
+class TeamEncryptionKeyCancelKeyDeletionDetails(bb.Struct):
+    """
+    Canceled team encryption key deletion.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyCancelKeyDeletionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyCancelKeyDeletionDetails_validator = bv.Struct(TeamEncryptionKeyCancelKeyDeletionDetails)
+
+class TeamEncryptionKeyCancelKeyDeletionType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyCancelKeyDeletionType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyCancelKeyDeletionType_validator = bv.Struct(TeamEncryptionKeyCancelKeyDeletionType)
+
+class TeamEncryptionKeyCreateKeyDetails(bb.Struct):
+    """
+    Created team encryption key.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyCreateKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyCreateKeyDetails_validator = bv.Struct(TeamEncryptionKeyCreateKeyDetails)
+
+class TeamEncryptionKeyCreateKeyType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyCreateKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyCreateKeyType_validator = bv.Struct(TeamEncryptionKeyCreateKeyType)
+
+class TeamEncryptionKeyDeleteKeyDetails(bb.Struct):
+    """
+    Deleted team encryption key.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyDeleteKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyDeleteKeyDetails_validator = bv.Struct(TeamEncryptionKeyDeleteKeyDetails)
+
+class TeamEncryptionKeyDeleteKeyType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyDeleteKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyDeleteKeyType_validator = bv.Struct(TeamEncryptionKeyDeleteKeyType)
+
+class TeamEncryptionKeyDisableKeyDetails(bb.Struct):
+    """
+    Disabled team encryption key.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyDisableKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyDisableKeyDetails_validator = bv.Struct(TeamEncryptionKeyDisableKeyDetails)
+
+class TeamEncryptionKeyDisableKeyType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyDisableKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyDisableKeyType_validator = bv.Struct(TeamEncryptionKeyDisableKeyType)
+
+class TeamEncryptionKeyEnableKeyDetails(bb.Struct):
+    """
+    Enabled team encryption key.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyEnableKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyEnableKeyDetails_validator = bv.Struct(TeamEncryptionKeyEnableKeyDetails)
+
+class TeamEncryptionKeyEnableKeyType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyEnableKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyEnableKeyType_validator = bv.Struct(TeamEncryptionKeyEnableKeyType)
+
+class TeamEncryptionKeyRotateKeyDetails(bb.Struct):
+    """
+    Rotated team encryption key.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyRotateKeyDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyRotateKeyDetails_validator = bv.Struct(TeamEncryptionKeyRotateKeyDetails)
+
+class TeamEncryptionKeyRotateKeyType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyRotateKeyType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyRotateKeyType_validator = bv.Struct(TeamEncryptionKeyRotateKeyType)
+
+class TeamEncryptionKeyScheduleKeyDeletionDetails(bb.Struct):
+    """
+    Scheduled encryption key deletion.
+    """
+
+    __slots__ = [
+    ]
+
+    _has_required_fields = False
+
+    def __init__(self):
+        pass
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyScheduleKeyDeletionDetails, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyScheduleKeyDeletionDetails_validator = bv.Struct(TeamEncryptionKeyScheduleKeyDeletionDetails)
+
+class TeamEncryptionKeyScheduleKeyDeletionType(bb.Struct):
+
+    __slots__ = [
+        '_description_value',
+    ]
+
+    _has_required_fields = True
+
+    def __init__(self,
+                 description=None):
+        self._description_value = bb.NOT_SET
+        if description is not None:
+            self.description = description
+
+    # Instance attribute type: str (validator is set below)
+    description = bb.Attribute("description")
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(TeamEncryptionKeyScheduleKeyDeletionType, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+TeamEncryptionKeyScheduleKeyDeletionType_validator = bv.Struct(TeamEncryptionKeyScheduleKeyDeletionType)
+
 class TeamEvent(bb.Struct):
     """
     An audit log event.
@@ -73528,17 +75793,20 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 AccountCapturePolicy._all_users_validator = bv.Void()
 AccountCapturePolicy._disabled_validator = bv.Void()
 AccountCapturePolicy._invited_users_validator = bv.Void()
+AccountCapturePolicy._prevent_personal_creation_validator = bv.Void()
 AccountCapturePolicy._other_validator = bv.Void()
 AccountCapturePolicy._tagmap = {
     'all_users': AccountCapturePolicy._all_users_validator,
     'disabled': AccountCapturePolicy._disabled_validator,
     'invited_users': AccountCapturePolicy._invited_users_validator,
+    'prevent_personal_creation': AccountCapturePolicy._prevent_personal_creation_validator,
     'other': AccountCapturePolicy._other_validator,
 }
 
 AccountCapturePolicy.all_users = AccountCapturePolicy('all_users')
 AccountCapturePolicy.disabled = AccountCapturePolicy('disabled')
 AccountCapturePolicy.invited_users = AccountCapturePolicy('invited_users')
+AccountCapturePolicy.prevent_personal_creation = AccountCapturePolicy('prevent_personal_creation')
 AccountCapturePolicy.other = AccountCapturePolicy('other')
 
 AccountCaptureRelinquishAccountDetails.domain_name.validator = bv.String()
@@ -74051,6 +76319,20 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 AssetLogInfo.other = AssetLogInfo('other')
 
+BackupAdminInvitationSentDetails._all_field_names_ = set([])
+BackupAdminInvitationSentDetails._all_fields_ = []
+
+BackupAdminInvitationSentType.description.validator = bv.String()
+BackupAdminInvitationSentType._all_field_names_ = set(['description'])
+BackupAdminInvitationSentType._all_fields_ = [('description', BackupAdminInvitationSentType.description.validator)]
+
+BackupInvitationOpenedDetails._all_field_names_ = set([])
+BackupInvitationOpenedDetails._all_fields_ = []
+
+BackupInvitationOpenedType.description.validator = bv.String()
+BackupInvitationOpenedType._all_field_names_ = set(['description'])
+BackupInvitationOpenedType._all_fields_ = [('description', BackupInvitationOpenedType.description.validator)]
+
 BackupStatus._disabled_validator = bv.Void()
 BackupStatus._enabled_validator = bv.Void()
 BackupStatus._other_validator = bv.Void()
@@ -75299,6 +77581,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventCategory._data_governance_validator = bv.Void()
 EventCategory._devices_validator = bv.Void()
 EventCategory._domains_validator = bv.Void()
+EventCategory._encryption_validator = bv.Void()
 EventCategory._file_operations_validator = bv.Void()
 EventCategory._file_requests_validator = bv.Void()
 EventCategory._groups_validator = bv.Void()
@@ -75323,6 +77606,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'data_governance': EventCategory._data_governance_validator,
     'devices': EventCategory._devices_validator,
     'domains': EventCategory._domains_validator,
+    'encryption': EventCategory._encryption_validator,
     'file_operations': EventCategory._file_operations_validator,
     'file_requests': EventCategory._file_requests_validator,
     'groups': EventCategory._groups_validator,
@@ -75348,6 +77632,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventCategory.data_governance = EventCategory('data_governance')
 EventCategory.devices = EventCategory('devices')
 EventCategory.domains = EventCategory('domains')
+EventCategory.encryption = EventCategory('encryption')
 EventCategory.file_operations = EventCategory('file_operations')
 EventCategory.file_requests = EventCategory('file_requests')
 EventCategory.groups = EventCategory('groups')
@@ -75369,6 +77654,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._admin_alerting_alert_state_changed_details_validator = AdminAlertingAlertStateChangedDetails_validator
 EventDetails._admin_alerting_changed_alert_config_details_validator = AdminAlertingChangedAlertConfigDetails_validator
 EventDetails._admin_alerting_triggered_alert_details_validator = AdminAlertingTriggeredAlertDetails_validator
+EventDetails._ransomware_restore_process_completed_details_validator = RansomwareRestoreProcessCompletedDetails_validator
+EventDetails._ransomware_restore_process_started_details_validator = RansomwareRestoreProcessStartedDetails_validator
 EventDetails._app_blocked_by_permissions_details_validator = AppBlockedByPermissionsDetails_validator
 EventDetails._app_link_team_details_validator = AppLinkTeamDetails_validator
 EventDetails._app_link_user_details_validator = AppLinkUserDetails_validator
@@ -75438,9 +77725,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._domain_verification_add_domain_success_details_validator = DomainVerificationAddDomainSuccessDetails_validator
 EventDetails._domain_verification_remove_domain_details_validator = DomainVerificationRemoveDomainDetails_validator
 EventDetails._enabled_domain_invites_details_validator = EnabledDomainInvitesDetails_validator
+EventDetails._team_encryption_key_cancel_key_deletion_details_validator = TeamEncryptionKeyCancelKeyDeletionDetails_validator
+EventDetails._team_encryption_key_create_key_details_validator = TeamEncryptionKeyCreateKeyDetails_validator
+EventDetails._team_encryption_key_delete_key_details_validator = TeamEncryptionKeyDeleteKeyDetails_validator
+EventDetails._team_encryption_key_disable_key_details_validator = TeamEncryptionKeyDisableKeyDetails_validator
+EventDetails._team_encryption_key_enable_key_details_validator = TeamEncryptionKeyEnableKeyDetails_validator
+EventDetails._team_encryption_key_rotate_key_details_validator = TeamEncryptionKeyRotateKeyDetails_validator
+EventDetails._team_encryption_key_schedule_key_deletion_details_validator = TeamEncryptionKeyScheduleKeyDeletionDetails_validator
 EventDetails._apply_naming_convention_details_validator = ApplyNamingConventionDetails_validator
 EventDetails._create_folder_details_validator = CreateFolderDetails_validator
 EventDetails._file_add_details_validator = FileAddDetails_validator
+EventDetails._file_add_from_automation_details_validator = FileAddFromAutomationDetails_validator
 EventDetails._file_copy_details_validator = FileCopyDetails_validator
 EventDetails._file_delete_details_validator = FileDeleteDetails_validator
 EventDetails._file_download_details_validator = FileDownloadDetails_validator
@@ -75462,6 +77757,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._object_label_removed_details_validator = ObjectLabelRemovedDetails_validator
 EventDetails._object_label_updated_value_details_validator = ObjectLabelUpdatedValueDetails_validator
 EventDetails._organize_folder_with_tidy_details_validator = OrganizeFolderWithTidyDetails_validator
+EventDetails._replay_file_delete_details_validator = ReplayFileDeleteDetails_validator
 EventDetails._rewind_folder_details_validator = RewindFolderDetails_validator
 EventDetails._undo_naming_convention_details_validator = UndoNamingConventionDetails_validator
 EventDetails._undo_organize_folder_with_tidy_details_validator = UndoOrganizeFolderWithTidyDetails_validator
@@ -75498,6 +77794,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._sign_in_as_session_end_details_validator = SignInAsSessionEndDetails_validator
 EventDetails._sign_in_as_session_start_details_validator = SignInAsSessionStartDetails_validator
 EventDetails._sso_error_details_validator = SsoErrorDetails_validator
+EventDetails._backup_admin_invitation_sent_details_validator = BackupAdminInvitationSentDetails_validator
+EventDetails._backup_invitation_opened_details_validator = BackupInvitationOpenedDetails_validator
 EventDetails._create_team_invite_link_details_validator = CreateTeamInviteLinkDetails_validator
 EventDetails._delete_team_invite_link_details_validator = DeleteTeamInviteLinkDetails_validator
 EventDetails._member_add_external_id_details_validator = MemberAddExternalIdDetails_validator
@@ -75593,6 +77891,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._outdated_link_view_create_report_details_validator = OutdatedLinkViewCreateReportDetails_validator
 EventDetails._outdated_link_view_report_failed_details_validator = OutdatedLinkViewReportFailedDetails_validator
 EventDetails._paper_admin_export_start_details_validator = PaperAdminExportStartDetails_validator
+EventDetails._ransomware_alert_create_report_details_validator = RansomwareAlertCreateReportDetails_validator
+EventDetails._ransomware_alert_create_report_failed_details_validator = RansomwareAlertCreateReportFailedDetails_validator
 EventDetails._smart_sync_create_admin_privilege_report_details_validator = SmartSyncCreateAdminPrivilegeReportDetails_validator
 EventDetails._team_activity_create_report_details_validator = TeamActivityCreateReportDetails_validator
 EventDetails._team_activity_create_report_fail_details_validator = TeamActivityCreateReportFailDetails_validator
@@ -75608,6 +77908,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventDetails._note_shared_details_validator = NoteSharedDetails_validator
 EventDetails._note_share_receive_details_validator = NoteShareReceiveDetails_validator
 EventDetails._open_note_shared_details_validator = OpenNoteSharedDetails_validator
+EventDetails._replay_file_shared_link_created_details_validator = ReplayFileSharedLinkCreatedDetails_validator
+EventDetails._replay_file_shared_link_modified_details_validator = ReplayFileSharedLinkModifiedDetails_validator
+EventDetails._replay_project_team_add_details_validator = ReplayProjectTeamAddDetails_validator
+EventDetails._replay_project_team_delete_details_validator = ReplayProjectTeamDeleteDetails_validator
 EventDetails._sf_add_group_details_validator = SfAddGroupDetails_validator
 EventDetails._sf_allow_non_members_to_view_shared_links_details_validator = SfAllowNonMembersToViewSharedLinksDetails_validator
 EventDetails._sf_external_invite_warn_details_validator = SfExternalInviteWarnDetails_validator
@@ -75856,6 +78160,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'admin_alerting_alert_state_changed_details': EventDetails._admin_alerting_alert_state_changed_details_validator,
     'admin_alerting_changed_alert_config_details': EventDetails._admin_alerting_changed_alert_config_details_validator,
     'admin_alerting_triggered_alert_details': EventDetails._admin_alerting_triggered_alert_details_validator,
+    'ransomware_restore_process_completed_details': EventDetails._ransomware_restore_process_completed_details_validator,
+    'ransomware_restore_process_started_details': EventDetails._ransomware_restore_process_started_details_validator,
     'app_blocked_by_permissions_details': EventDetails._app_blocked_by_permissions_details_validator,
     'app_link_team_details': EventDetails._app_link_team_details_validator,
     'app_link_user_details': EventDetails._app_link_user_details_validator,
@@ -75925,9 +78231,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'domain_verification_add_domain_success_details': EventDetails._domain_verification_add_domain_success_details_validator,
     'domain_verification_remove_domain_details': EventDetails._domain_verification_remove_domain_details_validator,
     'enabled_domain_invites_details': EventDetails._enabled_domain_invites_details_validator,
+    'team_encryption_key_cancel_key_deletion_details': EventDetails._team_encryption_key_cancel_key_deletion_details_validator,
+    'team_encryption_key_create_key_details': EventDetails._team_encryption_key_create_key_details_validator,
+    'team_encryption_key_delete_key_details': EventDetails._team_encryption_key_delete_key_details_validator,
+    'team_encryption_key_disable_key_details': EventDetails._team_encryption_key_disable_key_details_validator,
+    'team_encryption_key_enable_key_details': EventDetails._team_encryption_key_enable_key_details_validator,
+    'team_encryption_key_rotate_key_details': EventDetails._team_encryption_key_rotate_key_details_validator,
+    'team_encryption_key_schedule_key_deletion_details': EventDetails._team_encryption_key_schedule_key_deletion_details_validator,
     'apply_naming_convention_details': EventDetails._apply_naming_convention_details_validator,
     'create_folder_details': EventDetails._create_folder_details_validator,
     'file_add_details': EventDetails._file_add_details_validator,
+    'file_add_from_automation_details': EventDetails._file_add_from_automation_details_validator,
     'file_copy_details': EventDetails._file_copy_details_validator,
     'file_delete_details': EventDetails._file_delete_details_validator,
     'file_download_details': EventDetails._file_download_details_validator,
@@ -75949,6 +78263,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'object_label_removed_details': EventDetails._object_label_removed_details_validator,
     'object_label_updated_value_details': EventDetails._object_label_updated_value_details_validator,
     'organize_folder_with_tidy_details': EventDetails._organize_folder_with_tidy_details_validator,
+    'replay_file_delete_details': EventDetails._replay_file_delete_details_validator,
     'rewind_folder_details': EventDetails._rewind_folder_details_validator,
     'undo_naming_convention_details': EventDetails._undo_naming_convention_details_validator,
     'undo_organize_folder_with_tidy_details': EventDetails._undo_organize_folder_with_tidy_details_validator,
@@ -75985,6 +78300,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'sign_in_as_session_end_details': EventDetails._sign_in_as_session_end_details_validator,
     'sign_in_as_session_start_details': EventDetails._sign_in_as_session_start_details_validator,
     'sso_error_details': EventDetails._sso_error_details_validator,
+    'backup_admin_invitation_sent_details': EventDetails._backup_admin_invitation_sent_details_validator,
+    'backup_invitation_opened_details': EventDetails._backup_invitation_opened_details_validator,
     'create_team_invite_link_details': EventDetails._create_team_invite_link_details_validator,
     'delete_team_invite_link_details': EventDetails._delete_team_invite_link_details_validator,
     'member_add_external_id_details': EventDetails._member_add_external_id_details_validator,
@@ -76080,6 +78397,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'outdated_link_view_create_report_details': EventDetails._outdated_link_view_create_report_details_validator,
     'outdated_link_view_report_failed_details': EventDetails._outdated_link_view_report_failed_details_validator,
     'paper_admin_export_start_details': EventDetails._paper_admin_export_start_details_validator,
+    'ransomware_alert_create_report_details': EventDetails._ransomware_alert_create_report_details_validator,
+    'ransomware_alert_create_report_failed_details': EventDetails._ransomware_alert_create_report_failed_details_validator,
     'smart_sync_create_admin_privilege_report_details': EventDetails._smart_sync_create_admin_privilege_report_details_validator,
     'team_activity_create_report_details': EventDetails._team_activity_create_report_details_validator,
     'team_activity_create_report_fail_details': EventDetails._team_activity_create_report_fail_details_validator,
@@ -76095,6 +78414,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'note_shared_details': EventDetails._note_shared_details_validator,
     'note_share_receive_details': EventDetails._note_share_receive_details_validator,
     'open_note_shared_details': EventDetails._open_note_shared_details_validator,
+    'replay_file_shared_link_created_details': EventDetails._replay_file_shared_link_created_details_validator,
+    'replay_file_shared_link_modified_details': EventDetails._replay_file_shared_link_modified_details_validator,
+    'replay_project_team_add_details': EventDetails._replay_project_team_add_details_validator,
+    'replay_project_team_delete_details': EventDetails._replay_project_team_delete_details_validator,
     'sf_add_group_details': EventDetails._sf_add_group_details_validator,
     'sf_allow_non_members_to_view_shared_links_details': EventDetails._sf_allow_non_members_to_view_shared_links_details_validator,
     'sf_external_invite_warn_details': EventDetails._sf_external_invite_warn_details_validator,
@@ -76346,6 +78669,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._admin_alerting_alert_state_changed_validator = AdminAlertingAlertStateChangedType_validator
 EventType._admin_alerting_changed_alert_config_validator = AdminAlertingChangedAlertConfigType_validator
 EventType._admin_alerting_triggered_alert_validator = AdminAlertingTriggeredAlertType_validator
+EventType._ransomware_restore_process_completed_validator = RansomwareRestoreProcessCompletedType_validator
+EventType._ransomware_restore_process_started_validator = RansomwareRestoreProcessStartedType_validator
 EventType._app_blocked_by_permissions_validator = AppBlockedByPermissionsType_validator
 EventType._app_link_team_validator = AppLinkTeamType_validator
 EventType._app_link_user_validator = AppLinkUserType_validator
@@ -76415,9 +78740,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._domain_verification_add_domain_success_validator = DomainVerificationAddDomainSuccessType_validator
 EventType._domain_verification_remove_domain_validator = DomainVerificationRemoveDomainType_validator
 EventType._enabled_domain_invites_validator = EnabledDomainInvitesType_validator
+EventType._team_encryption_key_cancel_key_deletion_validator = TeamEncryptionKeyCancelKeyDeletionType_validator
+EventType._team_encryption_key_create_key_validator = TeamEncryptionKeyCreateKeyType_validator
+EventType._team_encryption_key_delete_key_validator = TeamEncryptionKeyDeleteKeyType_validator
+EventType._team_encryption_key_disable_key_validator = TeamEncryptionKeyDisableKeyType_validator
+EventType._team_encryption_key_enable_key_validator = TeamEncryptionKeyEnableKeyType_validator
+EventType._team_encryption_key_rotate_key_validator = TeamEncryptionKeyRotateKeyType_validator
+EventType._team_encryption_key_schedule_key_deletion_validator = TeamEncryptionKeyScheduleKeyDeletionType_validator
 EventType._apply_naming_convention_validator = ApplyNamingConventionType_validator
 EventType._create_folder_validator = CreateFolderType_validator
 EventType._file_add_validator = FileAddType_validator
+EventType._file_add_from_automation_validator = FileAddFromAutomationType_validator
 EventType._file_copy_validator = FileCopyType_validator
 EventType._file_delete_validator = FileDeleteType_validator
 EventType._file_download_validator = FileDownloadType_validator
@@ -76439,6 +78772,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._object_label_removed_validator = ObjectLabelRemovedType_validator
 EventType._object_label_updated_value_validator = ObjectLabelUpdatedValueType_validator
 EventType._organize_folder_with_tidy_validator = OrganizeFolderWithTidyType_validator
+EventType._replay_file_delete_validator = ReplayFileDeleteType_validator
 EventType._rewind_folder_validator = RewindFolderType_validator
 EventType._undo_naming_convention_validator = UndoNamingConventionType_validator
 EventType._undo_organize_folder_with_tidy_validator = UndoOrganizeFolderWithTidyType_validator
@@ -76475,6 +78809,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._sign_in_as_session_end_validator = SignInAsSessionEndType_validator
 EventType._sign_in_as_session_start_validator = SignInAsSessionStartType_validator
 EventType._sso_error_validator = SsoErrorType_validator
+EventType._backup_admin_invitation_sent_validator = BackupAdminInvitationSentType_validator
+EventType._backup_invitation_opened_validator = BackupInvitationOpenedType_validator
 EventType._create_team_invite_link_validator = CreateTeamInviteLinkType_validator
 EventType._delete_team_invite_link_validator = DeleteTeamInviteLinkType_validator
 EventType._member_add_external_id_validator = MemberAddExternalIdType_validator
@@ -76570,6 +78906,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._outdated_link_view_create_report_validator = OutdatedLinkViewCreateReportType_validator
 EventType._outdated_link_view_report_failed_validator = OutdatedLinkViewReportFailedType_validator
 EventType._paper_admin_export_start_validator = PaperAdminExportStartType_validator
+EventType._ransomware_alert_create_report_validator = RansomwareAlertCreateReportType_validator
+EventType._ransomware_alert_create_report_failed_validator = RansomwareAlertCreateReportFailedType_validator
 EventType._smart_sync_create_admin_privilege_report_validator = SmartSyncCreateAdminPrivilegeReportType_validator
 EventType._team_activity_create_report_validator = TeamActivityCreateReportType_validator
 EventType._team_activity_create_report_fail_validator = TeamActivityCreateReportFailType_validator
@@ -76585,6 +78923,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventType._note_shared_validator = NoteSharedType_validator
 EventType._note_share_receive_validator = NoteShareReceiveType_validator
 EventType._open_note_shared_validator = OpenNoteSharedType_validator
+EventType._replay_file_shared_link_created_validator = ReplayFileSharedLinkCreatedType_validator
+EventType._replay_file_shared_link_modified_validator = ReplayFileSharedLinkModifiedType_validator
+EventType._replay_project_team_add_validator = ReplayProjectTeamAddType_validator
+EventType._replay_project_team_delete_validator = ReplayProjectTeamDeleteType_validator
 EventType._sf_add_group_validator = SfAddGroupType_validator
 EventType._sf_allow_non_members_to_view_shared_links_validator = SfAllowNonMembersToViewSharedLinksType_validator
 EventType._sf_external_invite_warn_validator = SfExternalInviteWarnType_validator
@@ -76832,6 +79174,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'admin_alerting_alert_state_changed': EventType._admin_alerting_alert_state_changed_validator,
     'admin_alerting_changed_alert_config': EventType._admin_alerting_changed_alert_config_validator,
     'admin_alerting_triggered_alert': EventType._admin_alerting_triggered_alert_validator,
+    'ransomware_restore_process_completed': EventType._ransomware_restore_process_completed_validator,
+    'ransomware_restore_process_started': EventType._ransomware_restore_process_started_validator,
     'app_blocked_by_permissions': EventType._app_blocked_by_permissions_validator,
     'app_link_team': EventType._app_link_team_validator,
     'app_link_user': EventType._app_link_user_validator,
@@ -76901,9 +79245,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'domain_verification_add_domain_success': EventType._domain_verification_add_domain_success_validator,
     'domain_verification_remove_domain': EventType._domain_verification_remove_domain_validator,
     'enabled_domain_invites': EventType._enabled_domain_invites_validator,
+    'team_encryption_key_cancel_key_deletion': EventType._team_encryption_key_cancel_key_deletion_validator,
+    'team_encryption_key_create_key': EventType._team_encryption_key_create_key_validator,
+    'team_encryption_key_delete_key': EventType._team_encryption_key_delete_key_validator,
+    'team_encryption_key_disable_key': EventType._team_encryption_key_disable_key_validator,
+    'team_encryption_key_enable_key': EventType._team_encryption_key_enable_key_validator,
+    'team_encryption_key_rotate_key': EventType._team_encryption_key_rotate_key_validator,
+    'team_encryption_key_schedule_key_deletion': EventType._team_encryption_key_schedule_key_deletion_validator,
     'apply_naming_convention': EventType._apply_naming_convention_validator,
     'create_folder': EventType._create_folder_validator,
     'file_add': EventType._file_add_validator,
+    'file_add_from_automation': EventType._file_add_from_automation_validator,
     'file_copy': EventType._file_copy_validator,
     'file_delete': EventType._file_delete_validator,
     'file_download': EventType._file_download_validator,
@@ -76925,6 +79277,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'object_label_removed': EventType._object_label_removed_validator,
     'object_label_updated_value': EventType._object_label_updated_value_validator,
     'organize_folder_with_tidy': EventType._organize_folder_with_tidy_validator,
+    'replay_file_delete': EventType._replay_file_delete_validator,
     'rewind_folder': EventType._rewind_folder_validator,
     'undo_naming_convention': EventType._undo_naming_convention_validator,
     'undo_organize_folder_with_tidy': EventType._undo_organize_folder_with_tidy_validator,
@@ -76961,6 +79314,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'sign_in_as_session_end': EventType._sign_in_as_session_end_validator,
     'sign_in_as_session_start': EventType._sign_in_as_session_start_validator,
     'sso_error': EventType._sso_error_validator,
+    'backup_admin_invitation_sent': EventType._backup_admin_invitation_sent_validator,
+    'backup_invitation_opened': EventType._backup_invitation_opened_validator,
     'create_team_invite_link': EventType._create_team_invite_link_validator,
     'delete_team_invite_link': EventType._delete_team_invite_link_validator,
     'member_add_external_id': EventType._member_add_external_id_validator,
@@ -77056,6 +79411,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'outdated_link_view_create_report': EventType._outdated_link_view_create_report_validator,
     'outdated_link_view_report_failed': EventType._outdated_link_view_report_failed_validator,
     'paper_admin_export_start': EventType._paper_admin_export_start_validator,
+    'ransomware_alert_create_report': EventType._ransomware_alert_create_report_validator,
+    'ransomware_alert_create_report_failed': EventType._ransomware_alert_create_report_failed_validator,
     'smart_sync_create_admin_privilege_report': EventType._smart_sync_create_admin_privilege_report_validator,
     'team_activity_create_report': EventType._team_activity_create_report_validator,
     'team_activity_create_report_fail': EventType._team_activity_create_report_fail_validator,
@@ -77071,6 +79428,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'note_shared': EventType._note_shared_validator,
     'note_share_receive': EventType._note_share_receive_validator,
     'open_note_shared': EventType._open_note_shared_validator,
+    'replay_file_shared_link_created': EventType._replay_file_shared_link_created_validator,
+    'replay_file_shared_link_modified': EventType._replay_file_shared_link_modified_validator,
+    'replay_project_team_add': EventType._replay_project_team_add_validator,
+    'replay_project_team_delete': EventType._replay_project_team_delete_validator,
     'sf_add_group': EventType._sf_add_group_validator,
     'sf_allow_non_members_to_view_shared_links': EventType._sf_allow_non_members_to_view_shared_links_validator,
     'sf_external_invite_warn': EventType._sf_external_invite_warn_validator,
@@ -77321,6 +79682,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._admin_alerting_alert_state_changed_validator = bv.Void()
 EventTypeArg._admin_alerting_changed_alert_config_validator = bv.Void()
 EventTypeArg._admin_alerting_triggered_alert_validator = bv.Void()
+EventTypeArg._ransomware_restore_process_completed_validator = bv.Void()
+EventTypeArg._ransomware_restore_process_started_validator = bv.Void()
 EventTypeArg._app_blocked_by_permissions_validator = bv.Void()
 EventTypeArg._app_link_team_validator = bv.Void()
 EventTypeArg._app_link_user_validator = bv.Void()
@@ -77390,9 +79753,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._domain_verification_add_domain_success_validator = bv.Void()
 EventTypeArg._domain_verification_remove_domain_validator = bv.Void()
 EventTypeArg._enabled_domain_invites_validator = bv.Void()
+EventTypeArg._team_encryption_key_cancel_key_deletion_validator = bv.Void()
+EventTypeArg._team_encryption_key_create_key_validator = bv.Void()
+EventTypeArg._team_encryption_key_delete_key_validator = bv.Void()
+EventTypeArg._team_encryption_key_disable_key_validator = bv.Void()
+EventTypeArg._team_encryption_key_enable_key_validator = bv.Void()
+EventTypeArg._team_encryption_key_rotate_key_validator = bv.Void()
+EventTypeArg._team_encryption_key_schedule_key_deletion_validator = bv.Void()
 EventTypeArg._apply_naming_convention_validator = bv.Void()
 EventTypeArg._create_folder_validator = bv.Void()
 EventTypeArg._file_add_validator = bv.Void()
+EventTypeArg._file_add_from_automation_validator = bv.Void()
 EventTypeArg._file_copy_validator = bv.Void()
 EventTypeArg._file_delete_validator = bv.Void()
 EventTypeArg._file_download_validator = bv.Void()
@@ -77414,6 +79785,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._object_label_removed_validator = bv.Void()
 EventTypeArg._object_label_updated_value_validator = bv.Void()
 EventTypeArg._organize_folder_with_tidy_validator = bv.Void()
+EventTypeArg._replay_file_delete_validator = bv.Void()
 EventTypeArg._rewind_folder_validator = bv.Void()
 EventTypeArg._undo_naming_convention_validator = bv.Void()
 EventTypeArg._undo_organize_folder_with_tidy_validator = bv.Void()
@@ -77450,6 +79822,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._sign_in_as_session_end_validator = bv.Void()
 EventTypeArg._sign_in_as_session_start_validator = bv.Void()
 EventTypeArg._sso_error_validator = bv.Void()
+EventTypeArg._backup_admin_invitation_sent_validator = bv.Void()
+EventTypeArg._backup_invitation_opened_validator = bv.Void()
 EventTypeArg._create_team_invite_link_validator = bv.Void()
 EventTypeArg._delete_team_invite_link_validator = bv.Void()
 EventTypeArg._member_add_external_id_validator = bv.Void()
@@ -77545,6 +79919,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._outdated_link_view_create_report_validator = bv.Void()
 EventTypeArg._outdated_link_view_report_failed_validator = bv.Void()
 EventTypeArg._paper_admin_export_start_validator = bv.Void()
+EventTypeArg._ransomware_alert_create_report_validator = bv.Void()
+EventTypeArg._ransomware_alert_create_report_failed_validator = bv.Void()
 EventTypeArg._smart_sync_create_admin_privilege_report_validator = bv.Void()
 EventTypeArg._team_activity_create_report_validator = bv.Void()
 EventTypeArg._team_activity_create_report_fail_validator = bv.Void()
@@ -77560,6 +79936,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg._note_shared_validator = bv.Void()
 EventTypeArg._note_share_receive_validator = bv.Void()
 EventTypeArg._open_note_shared_validator = bv.Void()
+EventTypeArg._replay_file_shared_link_created_validator = bv.Void()
+EventTypeArg._replay_file_shared_link_modified_validator = bv.Void()
+EventTypeArg._replay_project_team_add_validator = bv.Void()
+EventTypeArg._replay_project_team_delete_validator = bv.Void()
 EventTypeArg._sf_add_group_validator = bv.Void()
 EventTypeArg._sf_allow_non_members_to_view_shared_links_validator = bv.Void()
 EventTypeArg._sf_external_invite_warn_validator = bv.Void()
@@ -77807,6 +80187,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'admin_alerting_alert_state_changed': EventTypeArg._admin_alerting_alert_state_changed_validator,
     'admin_alerting_changed_alert_config': EventTypeArg._admin_alerting_changed_alert_config_validator,
     'admin_alerting_triggered_alert': EventTypeArg._admin_alerting_triggered_alert_validator,
+    'ransomware_restore_process_completed': EventTypeArg._ransomware_restore_process_completed_validator,
+    'ransomware_restore_process_started': EventTypeArg._ransomware_restore_process_started_validator,
     'app_blocked_by_permissions': EventTypeArg._app_blocked_by_permissions_validator,
     'app_link_team': EventTypeArg._app_link_team_validator,
     'app_link_user': EventTypeArg._app_link_user_validator,
@@ -77876,9 +80258,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'domain_verification_add_domain_success': EventTypeArg._domain_verification_add_domain_success_validator,
     'domain_verification_remove_domain': EventTypeArg._domain_verification_remove_domain_validator,
     'enabled_domain_invites': EventTypeArg._enabled_domain_invites_validator,
+    'team_encryption_key_cancel_key_deletion': EventTypeArg._team_encryption_key_cancel_key_deletion_validator,
+    'team_encryption_key_create_key': EventTypeArg._team_encryption_key_create_key_validator,
+    'team_encryption_key_delete_key': EventTypeArg._team_encryption_key_delete_key_validator,
+    'team_encryption_key_disable_key': EventTypeArg._team_encryption_key_disable_key_validator,
+    'team_encryption_key_enable_key': EventTypeArg._team_encryption_key_enable_key_validator,
+    'team_encryption_key_rotate_key': EventTypeArg._team_encryption_key_rotate_key_validator,
+    'team_encryption_key_schedule_key_deletion': EventTypeArg._team_encryption_key_schedule_key_deletion_validator,
     'apply_naming_convention': EventTypeArg._apply_naming_convention_validator,
     'create_folder': EventTypeArg._create_folder_validator,
     'file_add': EventTypeArg._file_add_validator,
+    'file_add_from_automation': EventTypeArg._file_add_from_automation_validator,
     'file_copy': EventTypeArg._file_copy_validator,
     'file_delete': EventTypeArg._file_delete_validator,
     'file_download': EventTypeArg._file_download_validator,
@@ -77900,6 +80290,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'object_label_removed': EventTypeArg._object_label_removed_validator,
     'object_label_updated_value': EventTypeArg._object_label_updated_value_validator,
     'organize_folder_with_tidy': EventTypeArg._organize_folder_with_tidy_validator,
+    'replay_file_delete': EventTypeArg._replay_file_delete_validator,
     'rewind_folder': EventTypeArg._rewind_folder_validator,
     'undo_naming_convention': EventTypeArg._undo_naming_convention_validator,
     'undo_organize_folder_with_tidy': EventTypeArg._undo_organize_folder_with_tidy_validator,
@@ -77936,6 +80327,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'sign_in_as_session_end': EventTypeArg._sign_in_as_session_end_validator,
     'sign_in_as_session_start': EventTypeArg._sign_in_as_session_start_validator,
     'sso_error': EventTypeArg._sso_error_validator,
+    'backup_admin_invitation_sent': EventTypeArg._backup_admin_invitation_sent_validator,
+    'backup_invitation_opened': EventTypeArg._backup_invitation_opened_validator,
     'create_team_invite_link': EventTypeArg._create_team_invite_link_validator,
     'delete_team_invite_link': EventTypeArg._delete_team_invite_link_validator,
     'member_add_external_id': EventTypeArg._member_add_external_id_validator,
@@ -78031,6 +80424,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'outdated_link_view_create_report': EventTypeArg._outdated_link_view_create_report_validator,
     'outdated_link_view_report_failed': EventTypeArg._outdated_link_view_report_failed_validator,
     'paper_admin_export_start': EventTypeArg._paper_admin_export_start_validator,
+    'ransomware_alert_create_report': EventTypeArg._ransomware_alert_create_report_validator,
+    'ransomware_alert_create_report_failed': EventTypeArg._ransomware_alert_create_report_failed_validator,
     'smart_sync_create_admin_privilege_report': EventTypeArg._smart_sync_create_admin_privilege_report_validator,
     'team_activity_create_report': EventTypeArg._team_activity_create_report_validator,
     'team_activity_create_report_fail': EventTypeArg._team_activity_create_report_fail_validator,
@@ -78046,6 +80441,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'note_shared': EventTypeArg._note_shared_validator,
     'note_share_receive': EventTypeArg._note_share_receive_validator,
     'open_note_shared': EventTypeArg._open_note_shared_validator,
+    'replay_file_shared_link_created': EventTypeArg._replay_file_shared_link_created_validator,
+    'replay_file_shared_link_modified': EventTypeArg._replay_file_shared_link_modified_validator,
+    'replay_project_team_add': EventTypeArg._replay_project_team_add_validator,
+    'replay_project_team_delete': EventTypeArg._replay_project_team_delete_validator,
     'sf_add_group': EventTypeArg._sf_add_group_validator,
     'sf_allow_non_members_to_view_shared_links': EventTypeArg._sf_allow_non_members_to_view_shared_links_validator,
     'sf_external_invite_warn': EventTypeArg._sf_external_invite_warn_validator,
@@ -78294,6 +80693,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.admin_alerting_alert_state_changed = EventTypeArg('admin_alerting_alert_state_changed')
 EventTypeArg.admin_alerting_changed_alert_config = EventTypeArg('admin_alerting_changed_alert_config')
 EventTypeArg.admin_alerting_triggered_alert = EventTypeArg('admin_alerting_triggered_alert')
+EventTypeArg.ransomware_restore_process_completed = EventTypeArg('ransomware_restore_process_completed')
+EventTypeArg.ransomware_restore_process_started = EventTypeArg('ransomware_restore_process_started')
 EventTypeArg.app_blocked_by_permissions = EventTypeArg('app_blocked_by_permissions')
 EventTypeArg.app_link_team = EventTypeArg('app_link_team')
 EventTypeArg.app_link_user = EventTypeArg('app_link_user')
@@ -78363,9 +80764,17 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.domain_verification_add_domain_success = EventTypeArg('domain_verification_add_domain_success')
 EventTypeArg.domain_verification_remove_domain = EventTypeArg('domain_verification_remove_domain')
 EventTypeArg.enabled_domain_invites = EventTypeArg('enabled_domain_invites')
+EventTypeArg.team_encryption_key_cancel_key_deletion = EventTypeArg('team_encryption_key_cancel_key_deletion')
+EventTypeArg.team_encryption_key_create_key = EventTypeArg('team_encryption_key_create_key')
+EventTypeArg.team_encryption_key_delete_key = EventTypeArg('team_encryption_key_delete_key')
+EventTypeArg.team_encryption_key_disable_key = EventTypeArg('team_encryption_key_disable_key')
+EventTypeArg.team_encryption_key_enable_key = EventTypeArg('team_encryption_key_enable_key')
+EventTypeArg.team_encryption_key_rotate_key = EventTypeArg('team_encryption_key_rotate_key')
+EventTypeArg.team_encryption_key_schedule_key_deletion = EventTypeArg('team_encryption_key_schedule_key_deletion')
 EventTypeArg.apply_naming_convention = EventTypeArg('apply_naming_convention')
 EventTypeArg.create_folder = EventTypeArg('create_folder')
 EventTypeArg.file_add = EventTypeArg('file_add')
+EventTypeArg.file_add_from_automation = EventTypeArg('file_add_from_automation')
 EventTypeArg.file_copy = EventTypeArg('file_copy')
 EventTypeArg.file_delete = EventTypeArg('file_delete')
 EventTypeArg.file_download = EventTypeArg('file_download')
@@ -78387,6 +80796,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.object_label_removed = EventTypeArg('object_label_removed')
 EventTypeArg.object_label_updated_value = EventTypeArg('object_label_updated_value')
 EventTypeArg.organize_folder_with_tidy = EventTypeArg('organize_folder_with_tidy')
+EventTypeArg.replay_file_delete = EventTypeArg('replay_file_delete')
 EventTypeArg.rewind_folder = EventTypeArg('rewind_folder')
 EventTypeArg.undo_naming_convention = EventTypeArg('undo_naming_convention')
 EventTypeArg.undo_organize_folder_with_tidy = EventTypeArg('undo_organize_folder_with_tidy')
@@ -78423,6 +80833,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.sign_in_as_session_end = EventTypeArg('sign_in_as_session_end')
 EventTypeArg.sign_in_as_session_start = EventTypeArg('sign_in_as_session_start')
 EventTypeArg.sso_error = EventTypeArg('sso_error')
+EventTypeArg.backup_admin_invitation_sent = EventTypeArg('backup_admin_invitation_sent')
+EventTypeArg.backup_invitation_opened = EventTypeArg('backup_invitation_opened')
 EventTypeArg.create_team_invite_link = EventTypeArg('create_team_invite_link')
 EventTypeArg.delete_team_invite_link = EventTypeArg('delete_team_invite_link')
 EventTypeArg.member_add_external_id = EventTypeArg('member_add_external_id')
@@ -78518,6 +80930,8 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.outdated_link_view_create_report = EventTypeArg('outdated_link_view_create_report')
 EventTypeArg.outdated_link_view_report_failed = EventTypeArg('outdated_link_view_report_failed')
 EventTypeArg.paper_admin_export_start = EventTypeArg('paper_admin_export_start')
+EventTypeArg.ransomware_alert_create_report = EventTypeArg('ransomware_alert_create_report')
+EventTypeArg.ransomware_alert_create_report_failed = EventTypeArg('ransomware_alert_create_report_failed')
 EventTypeArg.smart_sync_create_admin_privilege_report = EventTypeArg('smart_sync_create_admin_privilege_report')
 EventTypeArg.team_activity_create_report = EventTypeArg('team_activity_create_report')
 EventTypeArg.team_activity_create_report_fail = EventTypeArg('team_activity_create_report_fail')
@@ -78533,6 +80947,10 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 EventTypeArg.note_shared = EventTypeArg('note_shared')
 EventTypeArg.note_share_receive = EventTypeArg('note_share_receive')
 EventTypeArg.open_note_shared = EventTypeArg('open_note_shared')
+EventTypeArg.replay_file_shared_link_created = EventTypeArg('replay_file_shared_link_created')
+EventTypeArg.replay_file_shared_link_modified = EventTypeArg('replay_file_shared_link_modified')
+EventTypeArg.replay_project_team_add = EventTypeArg('replay_project_team_add')
+EventTypeArg.replay_project_team_delete = EventTypeArg('replay_project_team_delete')
 EventTypeArg.sf_add_group = EventTypeArg('sf_add_group')
 EventTypeArg.sf_allow_non_members_to_view_shared_links = EventTypeArg('sf_allow_non_members_to_view_shared_links')
 EventTypeArg.sf_external_invite_warn = EventTypeArg('sf_external_invite_warn')
@@ -79041,6 +81459,13 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 FileAddDetails._all_field_names_ = set([])
 FileAddDetails._all_fields_ = []
 
+FileAddFromAutomationDetails._all_field_names_ = set([])
+FileAddFromAutomationDetails._all_fields_ = []
+
+FileAddFromAutomationType.description.validator = bv.String()
+FileAddFromAutomationType._all_field_names_ = set(['description'])
+FileAddFromAutomationType._all_fields_ = [('description', FileAddFromAutomationType.description.validator)]
+
 FileAddType.description.validator = bv.String()
 FileAddType._all_field_names_ = set(['description'])
 FileAddType._all_fields_ = [('description', FileAddType.description.validator)]
@@ -80654,6 +83079,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 LoginMethod._apple_oauth_validator = bv.Void()
 LoginMethod._first_party_token_exchange_validator = bv.Void()
 LoginMethod._google_oauth_validator = bv.Void()
+LoginMethod._lenovo_oauth_validator = bv.Void()
 LoginMethod._password_validator = bv.Void()
 LoginMethod._qr_code_validator = bv.Void()
 LoginMethod._saml_validator = bv.Void()
@@ -80664,6 +83090,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     'apple_oauth': LoginMethod._apple_oauth_validator,
     'first_party_token_exchange': LoginMethod._first_party_token_exchange_validator,
     'google_oauth': LoginMethod._google_oauth_validator,
+    'lenovo_oauth': LoginMethod._lenovo_oauth_validator,
     'password': LoginMethod._password_validator,
     'qr_code': LoginMethod._qr_code_validator,
     'saml': LoginMethod._saml_validator,
@@ -80675,6 +83102,7 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 LoginMethod.apple_oauth = LoginMethod('apple_oauth')
 LoginMethod.first_party_token_exchange = LoginMethod('first_party_token_exchange')
 LoginMethod.google_oauth = LoginMethod('google_oauth')
+LoginMethod.lenovo_oauth = LoginMethod('lenovo_oauth')
 LoginMethod.password = LoginMethod('password')
 LoginMethod.qr_code = LoginMethod('qr_code')
 LoginMethod.saml = LoginMethod('saml')
@@ -82299,6 +84727,47 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 QuickActionType.unlink_session = QuickActionType('unlink_session')
 QuickActionType.other = QuickActionType('other')
 
+RansomwareAlertCreateReportDetails._all_field_names_ = set([])
+RansomwareAlertCreateReportDetails._all_fields_ = []
+
+RansomwareAlertCreateReportFailedDetails.failure_reason.validator = team.TeamReportFailureReason_validator
+RansomwareAlertCreateReportFailedDetails._all_field_names_ = set(['failure_reason'])
+RansomwareAlertCreateReportFailedDetails._all_fields_ = [('failure_reason', RansomwareAlertCreateReportFailedDetails.failure_reason.validator)]
+
+RansomwareAlertCreateReportFailedType.description.validator = bv.String()
+RansomwareAlertCreateReportFailedType._all_field_names_ = set(['description'])
+RansomwareAlertCreateReportFailedType._all_fields_ = [('description', RansomwareAlertCreateReportFailedType.description.validator)]
+
+RansomwareAlertCreateReportType.description.validator = bv.String()
+RansomwareAlertCreateReportType._all_field_names_ = set(['description'])
+RansomwareAlertCreateReportType._all_fields_ = [('description', RansomwareAlertCreateReportType.description.validator)]
+
+RansomwareRestoreProcessCompletedDetails.status.validator = bv.String()
+RansomwareRestoreProcessCompletedDetails.restored_files_count.validator = bv.Int64()
+RansomwareRestoreProcessCompletedDetails.restored_files_failed_count.validator = bv.Int64()
+RansomwareRestoreProcessCompletedDetails._all_field_names_ = set([
+    'status',
+    'restored_files_count',
+    'restored_files_failed_count',
+])
+RansomwareRestoreProcessCompletedDetails._all_fields_ = [
+    ('status', RansomwareRestoreProcessCompletedDetails.status.validator),
+    ('restored_files_count', RansomwareRestoreProcessCompletedDetails.restored_files_count.validator),
+    ('restored_files_failed_count', RansomwareRestoreProcessCompletedDetails.restored_files_failed_count.validator),
+]
+
+RansomwareRestoreProcessCompletedType.description.validator = bv.String()
+RansomwareRestoreProcessCompletedType._all_field_names_ = set(['description'])
+RansomwareRestoreProcessCompletedType._all_fields_ = [('description', RansomwareRestoreProcessCompletedType.description.validator)]
+
+RansomwareRestoreProcessStartedDetails.extension.validator = bv.String()
+RansomwareRestoreProcessStartedDetails._all_field_names_ = set(['extension'])
+RansomwareRestoreProcessStartedDetails._all_fields_ = [('extension', RansomwareRestoreProcessStartedDetails.extension.validator)]
+
+RansomwareRestoreProcessStartedType.description.validator = bv.String()
+RansomwareRestoreProcessStartedType._all_field_names_ = set(['description'])
+RansomwareRestoreProcessStartedType._all_fields_ = [('description', RansomwareRestoreProcessStartedType.description.validator)]
+
 RecipientsConfiguration.recipient_setting_type.validator = bv.Nullable(AlertRecipientsSettingType_validator)
 RecipientsConfiguration.emails.validator = bv.Nullable(bv.List(EmailAddress_validator))
 RecipientsConfiguration.groups.validator = bv.Nullable(bv.List(bv.String()))
@@ -82324,6 +84793,41 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
     ('dest_asset_index', RelocateAssetReferencesLogInfo.dest_asset_index.validator),
 ]
 
+ReplayFileDeleteDetails._all_field_names_ = set([])
+ReplayFileDeleteDetails._all_fields_ = []
+
+ReplayFileDeleteType.description.validator = bv.String()
+ReplayFileDeleteType._all_field_names_ = set(['description'])
+ReplayFileDeleteType._all_fields_ = [('description', ReplayFileDeleteType.description.validator)]
+
+ReplayFileSharedLinkCreatedDetails._all_field_names_ = set([])
+ReplayFileSharedLinkCreatedDetails._all_fields_ = []
+
+ReplayFileSharedLinkCreatedType.description.validator = bv.String()
+ReplayFileSharedLinkCreatedType._all_field_names_ = set(['description'])
+ReplayFileSharedLinkCreatedType._all_fields_ = [('description', ReplayFileSharedLinkCreatedType.description.validator)]
+
+ReplayFileSharedLinkModifiedDetails._all_field_names_ = set([])
+ReplayFileSharedLinkModifiedDetails._all_fields_ = []
+
+ReplayFileSharedLinkModifiedType.description.validator = bv.String()
+ReplayFileSharedLinkModifiedType._all_field_names_ = set(['description'])
+ReplayFileSharedLinkModifiedType._all_fields_ = [('description', ReplayFileSharedLinkModifiedType.description.validator)]
+
+ReplayProjectTeamAddDetails._all_field_names_ = set([])
+ReplayProjectTeamAddDetails._all_fields_ = []
+
+ReplayProjectTeamAddType.description.validator = bv.String()
+ReplayProjectTeamAddType._all_field_names_ = set(['description'])
+ReplayProjectTeamAddType._all_fields_ = [('description', ReplayProjectTeamAddType.description.validator)]
+
+ReplayProjectTeamDeleteDetails._all_field_names_ = set([])
+ReplayProjectTeamDeleteDetails._all_fields_ = []
+
+ReplayProjectTeamDeleteType.description.validator = bv.String()
+ReplayProjectTeamDeleteType._all_field_names_ = set(['description'])
+ReplayProjectTeamDeleteType._all_fields_ = [('description', ReplayProjectTeamDeleteType.description.validator)]
+
 ResellerLogInfo.reseller_name.validator = bv.String()
 ResellerLogInfo.reseller_email.validator = EmailAddress_validator
 ResellerLogInfo._all_field_names_ = set([
@@ -84277,6 +86781,55 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 TeamDetails._all_field_names_ = set(['team'])
 TeamDetails._all_fields_ = [('team', TeamDetails.team.validator)]
 
+TeamEncryptionKeyCancelKeyDeletionDetails._all_field_names_ = set([])
+TeamEncryptionKeyCancelKeyDeletionDetails._all_fields_ = []
+
+TeamEncryptionKeyCancelKeyDeletionType.description.validator = bv.String()
+TeamEncryptionKeyCancelKeyDeletionType._all_field_names_ = set(['description'])
+TeamEncryptionKeyCancelKeyDeletionType._all_fields_ = [('description', TeamEncryptionKeyCancelKeyDeletionType.description.validator)]
+
+TeamEncryptionKeyCreateKeyDetails._all_field_names_ = set([])
+TeamEncryptionKeyCreateKeyDetails._all_fields_ = []
+
+TeamEncryptionKeyCreateKeyType.description.validator = bv.String()
+TeamEncryptionKeyCreateKeyType._all_field_names_ = set(['description'])
+TeamEncryptionKeyCreateKeyType._all_fields_ = [('description', TeamEncryptionKeyCreateKeyType.description.validator)]
+
+TeamEncryptionKeyDeleteKeyDetails._all_field_names_ = set([])
+TeamEncryptionKeyDeleteKeyDetails._all_fields_ = []
+
+TeamEncryptionKeyDeleteKeyType.description.validator = bv.String()
+TeamEncryptionKeyDeleteKeyType._all_field_names_ = set(['description'])
+TeamEncryptionKeyDeleteKeyType._all_fields_ = [('description', TeamEncryptionKeyDeleteKeyType.description.validator)]
+
+TeamEncryptionKeyDisableKeyDetails._all_field_names_ = set([])
+TeamEncryptionKeyDisableKeyDetails._all_fields_ = []
+
+TeamEncryptionKeyDisableKeyType.description.validator = bv.String()
+TeamEncryptionKeyDisableKeyType._all_field_names_ = set(['description'])
+TeamEncryptionKeyDisableKeyType._all_fields_ = [('description', TeamEncryptionKeyDisableKeyType.description.validator)]
+
+TeamEncryptionKeyEnableKeyDetails._all_field_names_ = set([])
+TeamEncryptionKeyEnableKeyDetails._all_fields_ = []
+
+TeamEncryptionKeyEnableKeyType.description.validator = bv.String()
+TeamEncryptionKeyEnableKeyType._all_field_names_ = set(['description'])
+TeamEncryptionKeyEnableKeyType._all_fields_ = [('description', TeamEncryptionKeyEnableKeyType.description.validator)]
+
+TeamEncryptionKeyRotateKeyDetails._all_field_names_ = set([])
+TeamEncryptionKeyRotateKeyDetails._all_fields_ = []
+
+TeamEncryptionKeyRotateKeyType.description.validator = bv.String()
+TeamEncryptionKeyRotateKeyType._all_field_names_ = set(['description'])
+TeamEncryptionKeyRotateKeyType._all_fields_ = [('description', TeamEncryptionKeyRotateKeyType.description.validator)]
+
+TeamEncryptionKeyScheduleKeyDeletionDetails._all_field_names_ = set([])
+TeamEncryptionKeyScheduleKeyDeletionDetails._all_fields_ = []
+
+TeamEncryptionKeyScheduleKeyDeletionType.description.validator = bv.String()
+TeamEncryptionKeyScheduleKeyDeletionType._all_field_names_ = set(['description'])
+TeamEncryptionKeyScheduleKeyDeletionType._all_fields_ = [('description', TeamEncryptionKeyScheduleKeyDeletionType.description.validator)]
+
 TeamEvent.timestamp.validator = common.DropboxTimestamp_validator
 TeamEvent.event_category.validator = EventCategory_validator
 TeamEvent.actor.validator = bv.Nullable(ActorLogInfo_validator)
diff --git a/dropbox/team_policies.py b/dropbox/team_policies.py
index c6b9fbeb..319c095a 100644
--- a/dropbox/team_policies.py
+++ b/dropbox/team_policies.py
@@ -796,6 +796,58 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 
 RolloutMethod_validator = bv.Union(RolloutMethod)
 
+class SharedFolderBlanketLinkRestrictionPolicy(bb.Union):
+    """
+    Policy governing whether shared folder membership is required to access
+    shared links.
+
+    This class acts as a tagged union. Only one of the ``is_*`` methods will
+    return true. To get the associated value of a tag (if one exists), use the
+    corresponding ``get_*`` method.
+
+    :ivar team_policies.SharedFolderBlanketLinkRestrictionPolicy.members: Only
+        members of shared folders can access folder content via shared link.
+    :ivar team_policies.SharedFolderBlanketLinkRestrictionPolicy.anyone: Anyone
+        can access folder content via shared link.
+    """
+
+    _catch_all = 'other'
+    # Attribute is overwritten below the class definition
+    members = None
+    # Attribute is overwritten below the class definition
+    anyone = None
+    # Attribute is overwritten below the class definition
+    other = None
+
+    def is_members(self):
+        """
+        Check if the union tag is ``members``.
+
+        :rtype: bool
+        """
+        return self._tag == 'members'
+
+    def is_anyone(self):
+        """
+        Check if the union tag is ``anyone``.
+
+        :rtype: bool
+        """
+        return self._tag == 'anyone'
+
+    def is_other(self):
+        """
+        Check if the union tag is ``other``.
+
+        :rtype: bool
+        """
+        return self._tag == 'other'
+
+    def _process_custom_annotations(self, annotation_type, field_path, processor):
+        super(SharedFolderBlanketLinkRestrictionPolicy, self)._process_custom_annotations(annotation_type, field_path, processor)
+
+SharedFolderBlanketLinkRestrictionPolicy_validator = bv.Union(SharedFolderBlanketLinkRestrictionPolicy)
+
 class SharedFolderJoinPolicy(bb.Union):
     """
     Policy governing which shared folders a team member can join.
@@ -1407,6 +1459,9 @@ class TeamSharingPolicies(bb.Struct):
         view shared links owned by team members.
     :ivar team_policies.TeamSharingPolicies.group_creation_policy: Who can
         create groups.
+    :ivar
+        team_policies.TeamSharingPolicies.shared_folder_link_restriction_policy:
+        Who can view links to content in shared folders.
     """
 
     __slots__ = [
@@ -1414,6 +1469,7 @@ class TeamSharingPolicies(bb.Struct):
         '_shared_folder_join_policy_value',
         '_shared_link_create_policy_value',
         '_group_creation_policy_value',
+        '_shared_folder_link_restriction_policy_value',
     ]
 
     _has_required_fields = True
@@ -1422,11 +1478,13 @@ def __init__(self,
                  shared_folder_member_policy=None,
                  shared_folder_join_policy=None,
                  shared_link_create_policy=None,
-                 group_creation_policy=None):
+                 group_creation_policy=None,
+                 shared_folder_link_restriction_policy=None):
         self._shared_folder_member_policy_value = bb.NOT_SET
         self._shared_folder_join_policy_value = bb.NOT_SET
         self._shared_link_create_policy_value = bb.NOT_SET
         self._group_creation_policy_value = bb.NOT_SET
+        self._shared_folder_link_restriction_policy_value = bb.NOT_SET
         if shared_folder_member_policy is not None:
             self.shared_folder_member_policy = shared_folder_member_policy
         if shared_folder_join_policy is not None:
@@ -1435,6 +1493,8 @@ def __init__(self,
             self.shared_link_create_policy = shared_link_create_policy
         if group_creation_policy is not None:
             self.group_creation_policy = group_creation_policy
+        if shared_folder_link_restriction_policy is not None:
+            self.shared_folder_link_restriction_policy = shared_folder_link_restriction_policy
 
     # Instance attribute type: SharedFolderMemberPolicy (validator is set below)
     shared_folder_member_policy = bb.Attribute("shared_folder_member_policy", user_defined=True)
@@ -1448,6 +1508,9 @@ def __init__(self,
     # Instance attribute type: GroupCreation (validator is set below)
     group_creation_policy = bb.Attribute("group_creation_policy", user_defined=True)
 
+    # Instance attribute type: SharedFolderBlanketLinkRestrictionPolicy (validator is set below)
+    shared_folder_link_restriction_policy = bb.Attribute("shared_folder_link_restriction_policy", user_defined=True)
+
     def _process_custom_annotations(self, annotation_type, field_path, processor):
         super(TeamSharingPolicies, self)._process_custom_annotations(annotation_type, field_path, processor)
 
@@ -1773,6 +1836,19 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 RolloutMethod.unlink_most_inactive = RolloutMethod('unlink_most_inactive')
 RolloutMethod.add_member_to_exceptions = RolloutMethod('add_member_to_exceptions')
 
+SharedFolderBlanketLinkRestrictionPolicy._members_validator = bv.Void()
+SharedFolderBlanketLinkRestrictionPolicy._anyone_validator = bv.Void()
+SharedFolderBlanketLinkRestrictionPolicy._other_validator = bv.Void()
+SharedFolderBlanketLinkRestrictionPolicy._tagmap = {
+    'members': SharedFolderBlanketLinkRestrictionPolicy._members_validator,
+    'anyone': SharedFolderBlanketLinkRestrictionPolicy._anyone_validator,
+    'other': SharedFolderBlanketLinkRestrictionPolicy._other_validator,
+}
+
+SharedFolderBlanketLinkRestrictionPolicy.members = SharedFolderBlanketLinkRestrictionPolicy('members')
+SharedFolderBlanketLinkRestrictionPolicy.anyone = SharedFolderBlanketLinkRestrictionPolicy('anyone')
+SharedFolderBlanketLinkRestrictionPolicy.other = SharedFolderBlanketLinkRestrictionPolicy('other')
+
 SharedFolderJoinPolicy._from_team_only_validator = bv.Void()
 SharedFolderJoinPolicy._from_anyone_validator = bv.Void()
 SharedFolderJoinPolicy._other_validator = bv.Void()
@@ -1933,17 +2009,20 @@ def _process_custom_annotations(self, annotation_type, field_path, processor):
 TeamSharingPolicies.shared_folder_join_policy.validator = SharedFolderJoinPolicy_validator
 TeamSharingPolicies.shared_link_create_policy.validator = SharedLinkCreatePolicy_validator
 TeamSharingPolicies.group_creation_policy.validator = GroupCreation_validator
+TeamSharingPolicies.shared_folder_link_restriction_policy.validator = SharedFolderBlanketLinkRestrictionPolicy_validator
 TeamSharingPolicies._all_field_names_ = set([
     'shared_folder_member_policy',
     'shared_folder_join_policy',
     'shared_link_create_policy',
     'group_creation_policy',
+    'shared_folder_link_restriction_policy',
 ])
 TeamSharingPolicies._all_fields_ = [
     ('shared_folder_member_policy', TeamSharingPolicies.shared_folder_member_policy.validator),
     ('shared_folder_join_policy', TeamSharingPolicies.shared_folder_join_policy.validator),
     ('shared_link_create_policy', TeamSharingPolicies.shared_link_create_policy.validator),
     ('group_creation_policy', TeamSharingPolicies.group_creation_policy.validator),
+    ('shared_folder_link_restriction_policy', TeamSharingPolicies.shared_folder_link_restriction_policy.validator),
 ]
 
 TwoStepVerificationPolicy._require_tfa_enable_validator = bv.Void()
diff --git a/spec b/spec
index 3d1080a0..c8364404 160000
--- a/spec
+++ b/spec
@@ -1 +1 @@
-Subproject commit 3d1080a021a67c335c52361d8f61ec558bb80606
+Subproject commit c8364404953d875801d496a81f786c5545f78223