files-com 1.6.2__tar.gz → 1.6.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of files-com might be problematic. Click here for more details.
- {files_com-1.6.2/files_com.egg-info → files_com-1.6.4}/PKG-INFO +1 -1
- files_com-1.6.4/_VERSION +1 -0
- {files_com-1.6.2 → files_com-1.6.4/files_com.egg-info}/PKG-INFO +1 -1
- {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/SOURCES.txt +2 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/__init__.py +3 -1
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/__init__.py +1 -0
- files_com-1.6.4/files_sdk/models/user_lifecycle_rule.py +300 -0
- {files_com-1.6.2 → files_com-1.6.4}/pyproject.toml +1 -1
- files_com-1.6.4/tests/test_user_lifecycle_rule.py +76 -0
- files_com-1.6.2/_VERSION +0 -1
- {files_com-1.6.2 → files_com-1.6.4}/LICENSE +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/README.md +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/dependency_links.txt +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/requires.txt +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/top_level.txt +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/api.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/api_client.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/error.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/list_obj.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/account_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action_notification_export.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action_notification_export_result.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/api_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/api_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/app.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_incoming_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_outgoing_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_partner.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_station.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/auto.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation_run.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bandwidth_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/behavior.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_download.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_notification.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_path.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_recipient.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_registration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/clickwrap.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/dns_record.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/email_incoming_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/email_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/errors.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/exavault_api_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/external_event.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_comment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_comment_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_migration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_migration_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_upload_part.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/folder.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/form_field.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/form_field_set.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/ftp_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/gpg_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/group.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/group_user.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history_export.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history_export_result.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/image.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_recipient.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_registration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_upload.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/invoice.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/invoice_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/ip_address.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/lock.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_comment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_comment_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/notification.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/outbound_connection_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/payment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/payment_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/permission.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/preview.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/priority.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/project.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_hosting_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_ip_address.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_bandwidth_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_server.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_server_configuration_file.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/request.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/restore.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/session.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/settings_change.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sftp_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sftp_host_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/share_group.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/share_group_member.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/siem_http_destination.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/site.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sso_strategy.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/status.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/style.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sync_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_by_top_level_dir.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_daily_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_cipher_use.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_request.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_sftp_client_use.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/web_dav_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/webhook_test.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/path_util.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/files_sdk/util.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/setup.cfg +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_account_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_action_notification_export.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_action_notification_export_result.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_errors.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_app.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_incoming_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_outgoing_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_partner.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_station.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_auto.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation_run.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bandwidth_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_behavior.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_download.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_notification.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_path.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_recipient.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_registration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_clickwrap.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_connection_adapter.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_dns_record.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_email_incoming_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_email_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_errors.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_exavault_api_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_external_event.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_action.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_comment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_comment_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_migration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_migration_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_upload_part.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_folder.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_form_field.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_form_field_set.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_ftp_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_gpg_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_group.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_group_user.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_history.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_history_export.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_history_export_result.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_image.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_recipient.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_registration.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_upload.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_invoice.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_invoice_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_ip_address.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_lock.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_message.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_comment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_comment_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_reaction.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_notification.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_outbound_connection_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_path_util.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_payment.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_payment_line_item.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_permission.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_preview.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_priority.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_project.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_hosting_request_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_ip_address.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_bandwidth_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_server.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_server_configuration_file.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_request.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_restore.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_session.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_settings_change.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_sftp_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_sftp_host_key.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_share_group.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_share_group_member.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_siem_http_destination.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_site.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_sso_strategy.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_status.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_style.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_sync_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_by_top_level_dir.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_daily_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_snapshot.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_user.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_cipher_use.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_request.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_sftp_client_use.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_web_dav_action_log.py +0 -0
- {files_com-1.6.2 → files_com-1.6.4}/tests/test_webhook_test.py +0 -0
files_com-1.6.4/_VERSION
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.6.4
|
|
@@ -110,6 +110,7 @@ files_sdk/models/usage_daily_snapshot.py
|
|
|
110
110
|
files_sdk/models/usage_snapshot.py
|
|
111
111
|
files_sdk/models/user.py
|
|
112
112
|
files_sdk/models/user_cipher_use.py
|
|
113
|
+
files_sdk/models/user_lifecycle_rule.py
|
|
113
114
|
files_sdk/models/user_request.py
|
|
114
115
|
files_sdk/models/user_sftp_client_use.py
|
|
115
116
|
files_sdk/models/web_dav_action_log.py
|
|
@@ -211,6 +212,7 @@ tests/test_usage_daily_snapshot.py
|
|
|
211
212
|
tests/test_usage_snapshot.py
|
|
212
213
|
tests/test_user.py
|
|
213
214
|
tests/test_user_cipher_use.py
|
|
215
|
+
tests/test_user_lifecycle_rule.py
|
|
214
216
|
tests/test_user_request.py
|
|
215
217
|
tests/test_user_sftp_client_use.py
|
|
216
218
|
tests/test_web_dav_action_log.py
|
|
@@ -93,6 +93,7 @@ import files_sdk.models.usage_daily_snapshot as usage_daily_snapshot
|
|
|
93
93
|
import files_sdk.models.usage_snapshot as usage_snapshot
|
|
94
94
|
import files_sdk.models.user as user
|
|
95
95
|
import files_sdk.models.user_cipher_use as user_cipher_use
|
|
96
|
+
import files_sdk.models.user_lifecycle_rule as user_lifecycle_rule
|
|
96
97
|
import files_sdk.models.user_request as user_request
|
|
97
98
|
import files_sdk.models.user_sftp_client_use as user_sftp_client_use
|
|
98
99
|
import files_sdk.models.web_dav_action_log as web_dav_action_log
|
|
@@ -198,6 +199,7 @@ from files_sdk.models.usage_daily_snapshot import UsageDailySnapshot
|
|
|
198
199
|
from files_sdk.models.usage_snapshot import UsageSnapshot
|
|
199
200
|
from files_sdk.models.user import User
|
|
200
201
|
from files_sdk.models.user_cipher_use import UserCipherUse
|
|
202
|
+
from files_sdk.models.user_lifecycle_rule import UserLifecycleRule
|
|
201
203
|
from files_sdk.models.user_request import UserRequest
|
|
202
204
|
from files_sdk.models.user_sftp_client_use import UserSftpClientUse
|
|
203
205
|
from files_sdk.models.web_dav_action_log import WebDavActionLog
|
|
@@ -213,7 +215,7 @@ session_id = None
|
|
|
213
215
|
source_ip = None
|
|
214
216
|
base_url = "https://app.files.com"
|
|
215
217
|
base_path = "api/rest/v1"
|
|
216
|
-
version = "1.6.
|
|
218
|
+
version = "1.6.4"
|
|
217
219
|
|
|
218
220
|
__version__ = version
|
|
219
221
|
|
|
@@ -98,6 +98,7 @@ from files_sdk.models.usage_daily_snapshot import UsageDailySnapshot
|
|
|
98
98
|
from files_sdk.models.usage_snapshot import UsageSnapshot
|
|
99
99
|
from files_sdk.models.user import User
|
|
100
100
|
from files_sdk.models.user_cipher_use import UserCipherUse
|
|
101
|
+
from files_sdk.models.user_lifecycle_rule import UserLifecycleRule
|
|
101
102
|
from files_sdk.models.user_request import UserRequest
|
|
102
103
|
from files_sdk.models.user_sftp_client_use import UserSftpClientUse
|
|
103
104
|
from files_sdk.models.web_dav_action_log import WebDavActionLog
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import builtins # noqa: F401
|
|
2
|
+
from files_sdk.api import Api # noqa: F401
|
|
3
|
+
from files_sdk.list_obj import ListObj
|
|
4
|
+
from files_sdk.error import ( # noqa: F401
|
|
5
|
+
InvalidParameterError,
|
|
6
|
+
MissingParameterError,
|
|
7
|
+
NotImplementedError,
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class UserLifecycleRule:
|
|
12
|
+
default_attributes = {
|
|
13
|
+
"id": None, # int64 - User Lifecycle Rule ID
|
|
14
|
+
"authentication_method": None, # string - User authentication method for the rule
|
|
15
|
+
"inactivity_days": None, # int64 - Number of days of inactivity before the rule applies
|
|
16
|
+
"include_folder_admins": None, # boolean - Include folder admins in the rule
|
|
17
|
+
"include_site_admins": None, # boolean - Include site admins in the rule
|
|
18
|
+
"action": None, # string - Action to take on inactive users (disable or delete)
|
|
19
|
+
"site_id": None, # int64 - Site ID
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
def __init__(self, attributes=None, options=None):
|
|
23
|
+
if not isinstance(attributes, dict):
|
|
24
|
+
attributes = {}
|
|
25
|
+
if not isinstance(options, dict):
|
|
26
|
+
options = {}
|
|
27
|
+
self.set_attributes(attributes)
|
|
28
|
+
self.options = options
|
|
29
|
+
|
|
30
|
+
def set_attributes(self, attributes):
|
|
31
|
+
for (
|
|
32
|
+
attribute,
|
|
33
|
+
default_value,
|
|
34
|
+
) in UserLifecycleRule.default_attributes.items():
|
|
35
|
+
setattr(self, attribute, attributes.get(attribute, default_value))
|
|
36
|
+
|
|
37
|
+
def get_attributes(self):
|
|
38
|
+
return {
|
|
39
|
+
k: getattr(self, k, None)
|
|
40
|
+
for k in UserLifecycleRule.default_attributes
|
|
41
|
+
if getattr(self, k, None) is not None
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
# Parameters:
|
|
45
|
+
# action (required) - string - Action to take on inactive users (disable or delete)
|
|
46
|
+
# authentication_method (required) - string - User authentication method for the rule
|
|
47
|
+
# inactivity_days (required) - int64 - Number of days of inactivity before the rule applies
|
|
48
|
+
# include_site_admins - boolean - Include site admins in the rule
|
|
49
|
+
# include_folder_admins - boolean - Include folder admins in the rule
|
|
50
|
+
def update(self, params=None):
|
|
51
|
+
if not isinstance(params, dict):
|
|
52
|
+
params = {}
|
|
53
|
+
|
|
54
|
+
if hasattr(self, "id") and self.id:
|
|
55
|
+
params["id"] = self.id
|
|
56
|
+
else:
|
|
57
|
+
raise MissingParameterError("Current object doesn't have a id")
|
|
58
|
+
if "id" not in params:
|
|
59
|
+
raise MissingParameterError("Parameter missing: id")
|
|
60
|
+
if "action" not in params:
|
|
61
|
+
raise MissingParameterError("Parameter missing: action")
|
|
62
|
+
if "authentication_method" not in params:
|
|
63
|
+
raise MissingParameterError(
|
|
64
|
+
"Parameter missing: authentication_method"
|
|
65
|
+
)
|
|
66
|
+
if "inactivity_days" not in params:
|
|
67
|
+
raise MissingParameterError("Parameter missing: inactivity_days")
|
|
68
|
+
if "id" in params and not isinstance(params["id"], int):
|
|
69
|
+
raise InvalidParameterError("Bad parameter: id must be an int")
|
|
70
|
+
if "action" in params and not isinstance(params["action"], str):
|
|
71
|
+
raise InvalidParameterError("Bad parameter: action must be an str")
|
|
72
|
+
if "authentication_method" in params and not isinstance(
|
|
73
|
+
params["authentication_method"], str
|
|
74
|
+
):
|
|
75
|
+
raise InvalidParameterError(
|
|
76
|
+
"Bad parameter: authentication_method must be an str"
|
|
77
|
+
)
|
|
78
|
+
if "inactivity_days" in params and not isinstance(
|
|
79
|
+
params["inactivity_days"], int
|
|
80
|
+
):
|
|
81
|
+
raise InvalidParameterError(
|
|
82
|
+
"Bad parameter: inactivity_days must be an int"
|
|
83
|
+
)
|
|
84
|
+
response, _options = Api.send_request(
|
|
85
|
+
"PATCH",
|
|
86
|
+
"/user_lifecycle_rules/{id}".format(id=params["id"]),
|
|
87
|
+
params,
|
|
88
|
+
self.options,
|
|
89
|
+
)
|
|
90
|
+
return response.data
|
|
91
|
+
|
|
92
|
+
def delete(self, params=None):
|
|
93
|
+
if not isinstance(params, dict):
|
|
94
|
+
params = {}
|
|
95
|
+
|
|
96
|
+
if hasattr(self, "id") and self.id:
|
|
97
|
+
params["id"] = self.id
|
|
98
|
+
else:
|
|
99
|
+
raise MissingParameterError("Current object doesn't have a id")
|
|
100
|
+
if "id" not in params:
|
|
101
|
+
raise MissingParameterError("Parameter missing: id")
|
|
102
|
+
if "id" in params and not isinstance(params["id"], int):
|
|
103
|
+
raise InvalidParameterError("Bad parameter: id must be an int")
|
|
104
|
+
Api.send_request(
|
|
105
|
+
"DELETE",
|
|
106
|
+
"/user_lifecycle_rules/{id}".format(id=params["id"]),
|
|
107
|
+
params,
|
|
108
|
+
self.options,
|
|
109
|
+
)
|
|
110
|
+
|
|
111
|
+
def destroy(self, params=None):
|
|
112
|
+
self.delete(params)
|
|
113
|
+
|
|
114
|
+
def save(self):
|
|
115
|
+
if hasattr(self, "id") and self.id:
|
|
116
|
+
new_obj = self.update(self.get_attributes())
|
|
117
|
+
self.set_attributes(new_obj.get_attributes())
|
|
118
|
+
return True
|
|
119
|
+
else:
|
|
120
|
+
new_obj = create(self.get_attributes(), self.options)
|
|
121
|
+
self.set_attributes(new_obj.get_attributes())
|
|
122
|
+
return True
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
# Parameters:
|
|
126
|
+
# cursor - string - Used for pagination. When a list request has more records available, cursors are provided in the response headers `X-Files-Cursor-Next` and `X-Files-Cursor-Prev`. Send one of those cursor value here to resume an existing list from the next available record. Note: many of our SDKs have iterator methods that will automatically handle cursor-based pagination.
|
|
127
|
+
# per_page - int64 - Number of records to show per page. (Max: 10,000, 1,000 or less is recommended).
|
|
128
|
+
def list(params=None, options=None):
|
|
129
|
+
if not isinstance(params, dict):
|
|
130
|
+
params = {}
|
|
131
|
+
if not isinstance(options, dict):
|
|
132
|
+
options = {}
|
|
133
|
+
if "cursor" in params and not isinstance(params["cursor"], str):
|
|
134
|
+
raise InvalidParameterError("Bad parameter: cursor must be an str")
|
|
135
|
+
if "per_page" in params and not isinstance(params["per_page"], int):
|
|
136
|
+
raise InvalidParameterError("Bad parameter: per_page must be an int")
|
|
137
|
+
return ListObj(
|
|
138
|
+
UserLifecycleRule, "GET", "/user_lifecycle_rules", params, options
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
|
|
142
|
+
def all(params=None, options=None):
|
|
143
|
+
list(params, options)
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
# Parameters:
|
|
147
|
+
# id (required) - int64 - User Lifecycle Rule ID.
|
|
148
|
+
def find(id, params=None, options=None):
|
|
149
|
+
if not isinstance(params, dict):
|
|
150
|
+
params = {}
|
|
151
|
+
if not isinstance(options, dict):
|
|
152
|
+
options = {}
|
|
153
|
+
params["id"] = id
|
|
154
|
+
if "id" in params and not isinstance(params["id"], int):
|
|
155
|
+
raise InvalidParameterError("Bad parameter: id must be an int")
|
|
156
|
+
if "id" not in params:
|
|
157
|
+
raise MissingParameterError("Parameter missing: id")
|
|
158
|
+
response, options = Api.send_request(
|
|
159
|
+
"GET",
|
|
160
|
+
"/user_lifecycle_rules/{id}".format(id=params["id"]),
|
|
161
|
+
params,
|
|
162
|
+
options,
|
|
163
|
+
)
|
|
164
|
+
return UserLifecycleRule(response.data, options)
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
def get(id, params=None, options=None):
|
|
168
|
+
find(id, params, options)
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
# Parameters:
|
|
172
|
+
# action (required) - string - Action to take on inactive users (disable or delete)
|
|
173
|
+
# authentication_method (required) - string - User authentication method for the rule
|
|
174
|
+
# inactivity_days (required) - int64 - Number of days of inactivity before the rule applies
|
|
175
|
+
# include_site_admins - boolean - Include site admins in the rule
|
|
176
|
+
# include_folder_admins - boolean - Include folder admins in the rule
|
|
177
|
+
def create(params=None, options=None):
|
|
178
|
+
if not isinstance(params, dict):
|
|
179
|
+
params = {}
|
|
180
|
+
if not isinstance(options, dict):
|
|
181
|
+
options = {}
|
|
182
|
+
if "action" in params and not isinstance(params["action"], str):
|
|
183
|
+
raise InvalidParameterError("Bad parameter: action must be an str")
|
|
184
|
+
if "authentication_method" in params and not isinstance(
|
|
185
|
+
params["authentication_method"], str
|
|
186
|
+
):
|
|
187
|
+
raise InvalidParameterError(
|
|
188
|
+
"Bad parameter: authentication_method must be an str"
|
|
189
|
+
)
|
|
190
|
+
if "inactivity_days" in params and not isinstance(
|
|
191
|
+
params["inactivity_days"], int
|
|
192
|
+
):
|
|
193
|
+
raise InvalidParameterError(
|
|
194
|
+
"Bad parameter: inactivity_days must be an int"
|
|
195
|
+
)
|
|
196
|
+
if "include_site_admins" in params and not isinstance(
|
|
197
|
+
params["include_site_admins"], bool
|
|
198
|
+
):
|
|
199
|
+
raise InvalidParameterError(
|
|
200
|
+
"Bad parameter: include_site_admins must be an bool"
|
|
201
|
+
)
|
|
202
|
+
if "include_folder_admins" in params and not isinstance(
|
|
203
|
+
params["include_folder_admins"], bool
|
|
204
|
+
):
|
|
205
|
+
raise InvalidParameterError(
|
|
206
|
+
"Bad parameter: include_folder_admins must be an bool"
|
|
207
|
+
)
|
|
208
|
+
if "action" not in params:
|
|
209
|
+
raise MissingParameterError("Parameter missing: action")
|
|
210
|
+
if "authentication_method" not in params:
|
|
211
|
+
raise MissingParameterError("Parameter missing: authentication_method")
|
|
212
|
+
if "inactivity_days" not in params:
|
|
213
|
+
raise MissingParameterError("Parameter missing: inactivity_days")
|
|
214
|
+
response, options = Api.send_request(
|
|
215
|
+
"POST", "/user_lifecycle_rules", params, options
|
|
216
|
+
)
|
|
217
|
+
return UserLifecycleRule(response.data, options)
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
# Parameters:
|
|
221
|
+
# action (required) - string - Action to take on inactive users (disable or delete)
|
|
222
|
+
# authentication_method (required) - string - User authentication method for the rule
|
|
223
|
+
# inactivity_days (required) - int64 - Number of days of inactivity before the rule applies
|
|
224
|
+
# include_site_admins - boolean - Include site admins in the rule
|
|
225
|
+
# include_folder_admins - boolean - Include folder admins in the rule
|
|
226
|
+
def update(id, params=None, options=None):
|
|
227
|
+
if not isinstance(params, dict):
|
|
228
|
+
params = {}
|
|
229
|
+
if not isinstance(options, dict):
|
|
230
|
+
options = {}
|
|
231
|
+
params["id"] = id
|
|
232
|
+
if "id" in params and not isinstance(params["id"], int):
|
|
233
|
+
raise InvalidParameterError("Bad parameter: id must be an int")
|
|
234
|
+
if "action" in params and not isinstance(params["action"], str):
|
|
235
|
+
raise InvalidParameterError("Bad parameter: action must be an str")
|
|
236
|
+
if "authentication_method" in params and not isinstance(
|
|
237
|
+
params["authentication_method"], str
|
|
238
|
+
):
|
|
239
|
+
raise InvalidParameterError(
|
|
240
|
+
"Bad parameter: authentication_method must be an str"
|
|
241
|
+
)
|
|
242
|
+
if "inactivity_days" in params and not isinstance(
|
|
243
|
+
params["inactivity_days"], int
|
|
244
|
+
):
|
|
245
|
+
raise InvalidParameterError(
|
|
246
|
+
"Bad parameter: inactivity_days must be an int"
|
|
247
|
+
)
|
|
248
|
+
if "include_site_admins" in params and not isinstance(
|
|
249
|
+
params["include_site_admins"], bool
|
|
250
|
+
):
|
|
251
|
+
raise InvalidParameterError(
|
|
252
|
+
"Bad parameter: include_site_admins must be an bool"
|
|
253
|
+
)
|
|
254
|
+
if "include_folder_admins" in params and not isinstance(
|
|
255
|
+
params["include_folder_admins"], bool
|
|
256
|
+
):
|
|
257
|
+
raise InvalidParameterError(
|
|
258
|
+
"Bad parameter: include_folder_admins must be an bool"
|
|
259
|
+
)
|
|
260
|
+
if "id" not in params:
|
|
261
|
+
raise MissingParameterError("Parameter missing: id")
|
|
262
|
+
if "action" not in params:
|
|
263
|
+
raise MissingParameterError("Parameter missing: action")
|
|
264
|
+
if "authentication_method" not in params:
|
|
265
|
+
raise MissingParameterError("Parameter missing: authentication_method")
|
|
266
|
+
if "inactivity_days" not in params:
|
|
267
|
+
raise MissingParameterError("Parameter missing: inactivity_days")
|
|
268
|
+
response, options = Api.send_request(
|
|
269
|
+
"PATCH",
|
|
270
|
+
"/user_lifecycle_rules/{id}".format(id=params["id"]),
|
|
271
|
+
params,
|
|
272
|
+
options,
|
|
273
|
+
)
|
|
274
|
+
return UserLifecycleRule(response.data, options)
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
def delete(id, params=None, options=None):
|
|
278
|
+
if not isinstance(params, dict):
|
|
279
|
+
params = {}
|
|
280
|
+
if not isinstance(options, dict):
|
|
281
|
+
options = {}
|
|
282
|
+
params["id"] = id
|
|
283
|
+
if "id" in params and not isinstance(params["id"], int):
|
|
284
|
+
raise InvalidParameterError("Bad parameter: id must be an int")
|
|
285
|
+
if "id" not in params:
|
|
286
|
+
raise MissingParameterError("Parameter missing: id")
|
|
287
|
+
Api.send_request(
|
|
288
|
+
"DELETE",
|
|
289
|
+
"/user_lifecycle_rules/{id}".format(id=params["id"]),
|
|
290
|
+
params,
|
|
291
|
+
options,
|
|
292
|
+
)
|
|
293
|
+
|
|
294
|
+
|
|
295
|
+
def destroy(id, params=None, options=None):
|
|
296
|
+
delete(id, params, options)
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
def new(*args, **kwargs):
|
|
300
|
+
return UserLifecycleRule(*args, **kwargs)
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import unittest
|
|
2
|
+
import inspect
|
|
3
|
+
import files_sdk
|
|
4
|
+
from tests.base import TestBase
|
|
5
|
+
from files_sdk.models import UserLifecycleRule
|
|
6
|
+
from files_sdk import user_lifecycle_rule
|
|
7
|
+
|
|
8
|
+
class UserLifecycleRuleTest(TestBase):
|
|
9
|
+
pass
|
|
10
|
+
# Instance Methods
|
|
11
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("PATCH", "/user_lifecycle_rules/{id}"), "Mock path does not exist")
|
|
12
|
+
def test_update(self):
|
|
13
|
+
params = {
|
|
14
|
+
"id" : 12345,
|
|
15
|
+
"action" : "foo",
|
|
16
|
+
"authentication_method" : "foo",
|
|
17
|
+
"inactivity_days" : 12345,
|
|
18
|
+
}
|
|
19
|
+
user_lifecycle_rule = UserLifecycleRule(params)
|
|
20
|
+
user_lifecycle_rule.update(params)
|
|
21
|
+
|
|
22
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("DELETE", "/user_lifecycle_rules/{id}"), "Mock path does not exist")
|
|
23
|
+
def test_delete(self):
|
|
24
|
+
params = {
|
|
25
|
+
"id" : 12345,
|
|
26
|
+
}
|
|
27
|
+
user_lifecycle_rule = UserLifecycleRule(params)
|
|
28
|
+
user_lifecycle_rule.delete(params)
|
|
29
|
+
|
|
30
|
+
# Alias of delete
|
|
31
|
+
def test_destroy(self):
|
|
32
|
+
pass
|
|
33
|
+
|
|
34
|
+
# Static Methods
|
|
35
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("GET", "/user_lifecycle_rules"), "Mock path does not exist")
|
|
36
|
+
def test_list(self):
|
|
37
|
+
resp = user_lifecycle_rule.list()
|
|
38
|
+
|
|
39
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("GET", "/user_lifecycle_rules/{id}"), "Mock path does not exist")
|
|
40
|
+
def test_find(self):
|
|
41
|
+
id = 12345
|
|
42
|
+
params = {
|
|
43
|
+
"id" : 12345,
|
|
44
|
+
}
|
|
45
|
+
user_lifecycle_rule.find(id, params)
|
|
46
|
+
|
|
47
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("POST", "/user_lifecycle_rules"), "Mock path does not exist")
|
|
48
|
+
def test_create(self):
|
|
49
|
+
params = {
|
|
50
|
+
"action" : "foo",
|
|
51
|
+
"authentication_method" : "foo",
|
|
52
|
+
"inactivity_days" : 12345,
|
|
53
|
+
}
|
|
54
|
+
user_lifecycle_rule.create(params)
|
|
55
|
+
|
|
56
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("PATCH", "/user_lifecycle_rules/{id}"), "Mock path does not exist")
|
|
57
|
+
def test_update(self):
|
|
58
|
+
id = 12345
|
|
59
|
+
params = {
|
|
60
|
+
"id" : 12345,
|
|
61
|
+
"action" : "foo",
|
|
62
|
+
"authentication_method" : "foo",
|
|
63
|
+
"inactivity_days" : 12345,
|
|
64
|
+
}
|
|
65
|
+
user_lifecycle_rule.update(id, params)
|
|
66
|
+
|
|
67
|
+
@unittest.skipUnless(TestBase.mock_server_path_exists("DELETE", "/user_lifecycle_rules/{id}"), "Mock path does not exist")
|
|
68
|
+
def test_delete(self):
|
|
69
|
+
id = 12345
|
|
70
|
+
params = {
|
|
71
|
+
"id" : 12345,
|
|
72
|
+
}
|
|
73
|
+
user_lifecycle_rule.delete(id, params)
|
|
74
|
+
|
|
75
|
+
if __name__ == '__main__':
|
|
76
|
+
unittest.main()
|
files_com-1.6.2/_VERSION
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.6.2
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|