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 changed (221) hide show
  1. {files_com-1.6.2/files_com.egg-info → files_com-1.6.4}/PKG-INFO +1 -1
  2. files_com-1.6.4/_VERSION +1 -0
  3. {files_com-1.6.2 → files_com-1.6.4/files_com.egg-info}/PKG-INFO +1 -1
  4. {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/SOURCES.txt +2 -0
  5. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/__init__.py +3 -1
  6. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/__init__.py +1 -0
  7. files_com-1.6.4/files_sdk/models/user_lifecycle_rule.py +300 -0
  8. {files_com-1.6.2 → files_com-1.6.4}/pyproject.toml +1 -1
  9. files_com-1.6.4/tests/test_user_lifecycle_rule.py +76 -0
  10. files_com-1.6.2/_VERSION +0 -1
  11. {files_com-1.6.2 → files_com-1.6.4}/LICENSE +0 -0
  12. {files_com-1.6.2 → files_com-1.6.4}/README.md +0 -0
  13. {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/dependency_links.txt +0 -0
  14. {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/requires.txt +0 -0
  15. {files_com-1.6.2 → files_com-1.6.4}/files_com.egg-info/top_level.txt +0 -0
  16. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/api.py +0 -0
  17. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/api_client.py +0 -0
  18. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/error.py +0 -0
  19. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/list_obj.py +0 -0
  20. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/account_line_item.py +0 -0
  21. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action.py +0 -0
  22. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action_notification_export.py +0 -0
  23. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/action_notification_export_result.py +0 -0
  24. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/api_key.py +0 -0
  25. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/api_request_log.py +0 -0
  26. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/app.py +0 -0
  27. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_incoming_message.py +0 -0
  28. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_outgoing_message.py +0 -0
  29. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_partner.py +0 -0
  30. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/as2_station.py +0 -0
  31. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/auto.py +0 -0
  32. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation.py +0 -0
  33. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation_log.py +0 -0
  34. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/automation_run.py +0 -0
  35. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bandwidth_snapshot.py +0 -0
  36. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/behavior.py +0 -0
  37. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle.py +0 -0
  38. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_action.py +0 -0
  39. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_download.py +0 -0
  40. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_notification.py +0 -0
  41. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_path.py +0 -0
  42. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_recipient.py +0 -0
  43. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/bundle_registration.py +0 -0
  44. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/clickwrap.py +0 -0
  45. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/dns_record.py +0 -0
  46. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/email_incoming_message.py +0 -0
  47. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/email_log.py +0 -0
  48. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/errors.py +0 -0
  49. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/exavault_api_request_log.py +0 -0
  50. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/external_event.py +0 -0
  51. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file.py +0 -0
  52. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_action.py +0 -0
  53. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_comment.py +0 -0
  54. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_comment_reaction.py +0 -0
  55. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_migration.py +0 -0
  56. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_migration_log.py +0 -0
  57. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/file_upload_part.py +0 -0
  58. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/folder.py +0 -0
  59. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/form_field.py +0 -0
  60. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/form_field_set.py +0 -0
  61. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/ftp_action_log.py +0 -0
  62. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/gpg_key.py +0 -0
  63. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/group.py +0 -0
  64. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/group_user.py +0 -0
  65. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history.py +0 -0
  66. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history_export.py +0 -0
  67. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/history_export_result.py +0 -0
  68. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/image.py +0 -0
  69. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_recipient.py +0 -0
  70. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_registration.py +0 -0
  71. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/inbox_upload.py +0 -0
  72. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/invoice.py +0 -0
  73. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/invoice_line_item.py +0 -0
  74. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/ip_address.py +0 -0
  75. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/lock.py +0 -0
  76. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message.py +0 -0
  77. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_comment.py +0 -0
  78. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_comment_reaction.py +0 -0
  79. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/message_reaction.py +0 -0
  80. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/notification.py +0 -0
  81. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/outbound_connection_log.py +0 -0
  82. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/payment.py +0 -0
  83. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/payment_line_item.py +0 -0
  84. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/permission.py +0 -0
  85. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/preview.py +0 -0
  86. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/priority.py +0 -0
  87. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/project.py +0 -0
  88. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_hosting_request_log.py +0 -0
  89. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_ip_address.py +0 -0
  90. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/public_key.py +0 -0
  91. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_bandwidth_snapshot.py +0 -0
  92. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_server.py +0 -0
  93. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/remote_server_configuration_file.py +0 -0
  94. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/request.py +0 -0
  95. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/restore.py +0 -0
  96. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/session.py +0 -0
  97. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/settings_change.py +0 -0
  98. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sftp_action_log.py +0 -0
  99. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sftp_host_key.py +0 -0
  100. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/share_group.py +0 -0
  101. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/share_group_member.py +0 -0
  102. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/siem_http_destination.py +0 -0
  103. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/site.py +0 -0
  104. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/snapshot.py +0 -0
  105. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sso_strategy.py +0 -0
  106. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/status.py +0 -0
  107. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/style.py +0 -0
  108. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/sync_log.py +0 -0
  109. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_by_top_level_dir.py +0 -0
  110. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_daily_snapshot.py +0 -0
  111. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/usage_snapshot.py +0 -0
  112. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user.py +0 -0
  113. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_cipher_use.py +0 -0
  114. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_request.py +0 -0
  115. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/user_sftp_client_use.py +0 -0
  116. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/web_dav_action_log.py +0 -0
  117. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/models/webhook_test.py +0 -0
  118. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/path_util.py +0 -0
  119. {files_com-1.6.2 → files_com-1.6.4}/files_sdk/util.py +0 -0
  120. {files_com-1.6.2 → files_com-1.6.4}/setup.cfg +0 -0
  121. {files_com-1.6.2 → files_com-1.6.4}/tests/test_account_line_item.py +0 -0
  122. {files_com-1.6.2 → files_com-1.6.4}/tests/test_action.py +0 -0
  123. {files_com-1.6.2 → files_com-1.6.4}/tests/test_action_notification_export.py +0 -0
  124. {files_com-1.6.2 → files_com-1.6.4}/tests/test_action_notification_export_result.py +0 -0
  125. {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_errors.py +0 -0
  126. {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_key.py +0 -0
  127. {files_com-1.6.2 → files_com-1.6.4}/tests/test_api_request_log.py +0 -0
  128. {files_com-1.6.2 → files_com-1.6.4}/tests/test_app.py +0 -0
  129. {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_incoming_message.py +0 -0
  130. {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_outgoing_message.py +0 -0
  131. {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_partner.py +0 -0
  132. {files_com-1.6.2 → files_com-1.6.4}/tests/test_as2_station.py +0 -0
  133. {files_com-1.6.2 → files_com-1.6.4}/tests/test_auto.py +0 -0
  134. {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation.py +0 -0
  135. {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation_log.py +0 -0
  136. {files_com-1.6.2 → files_com-1.6.4}/tests/test_automation_run.py +0 -0
  137. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bandwidth_snapshot.py +0 -0
  138. {files_com-1.6.2 → files_com-1.6.4}/tests/test_behavior.py +0 -0
  139. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle.py +0 -0
  140. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_action.py +0 -0
  141. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_download.py +0 -0
  142. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_notification.py +0 -0
  143. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_path.py +0 -0
  144. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_recipient.py +0 -0
  145. {files_com-1.6.2 → files_com-1.6.4}/tests/test_bundle_registration.py +0 -0
  146. {files_com-1.6.2 → files_com-1.6.4}/tests/test_clickwrap.py +0 -0
  147. {files_com-1.6.2 → files_com-1.6.4}/tests/test_connection_adapter.py +0 -0
  148. {files_com-1.6.2 → files_com-1.6.4}/tests/test_dns_record.py +0 -0
  149. {files_com-1.6.2 → files_com-1.6.4}/tests/test_email_incoming_message.py +0 -0
  150. {files_com-1.6.2 → files_com-1.6.4}/tests/test_email_log.py +0 -0
  151. {files_com-1.6.2 → files_com-1.6.4}/tests/test_errors.py +0 -0
  152. {files_com-1.6.2 → files_com-1.6.4}/tests/test_exavault_api_request_log.py +0 -0
  153. {files_com-1.6.2 → files_com-1.6.4}/tests/test_external_event.py +0 -0
  154. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file.py +0 -0
  155. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_action.py +0 -0
  156. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_comment.py +0 -0
  157. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_comment_reaction.py +0 -0
  158. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_migration.py +0 -0
  159. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_migration_log.py +0 -0
  160. {files_com-1.6.2 → files_com-1.6.4}/tests/test_file_upload_part.py +0 -0
  161. {files_com-1.6.2 → files_com-1.6.4}/tests/test_folder.py +0 -0
  162. {files_com-1.6.2 → files_com-1.6.4}/tests/test_form_field.py +0 -0
  163. {files_com-1.6.2 → files_com-1.6.4}/tests/test_form_field_set.py +0 -0
  164. {files_com-1.6.2 → files_com-1.6.4}/tests/test_ftp_action_log.py +0 -0
  165. {files_com-1.6.2 → files_com-1.6.4}/tests/test_gpg_key.py +0 -0
  166. {files_com-1.6.2 → files_com-1.6.4}/tests/test_group.py +0 -0
  167. {files_com-1.6.2 → files_com-1.6.4}/tests/test_group_user.py +0 -0
  168. {files_com-1.6.2 → files_com-1.6.4}/tests/test_history.py +0 -0
  169. {files_com-1.6.2 → files_com-1.6.4}/tests/test_history_export.py +0 -0
  170. {files_com-1.6.2 → files_com-1.6.4}/tests/test_history_export_result.py +0 -0
  171. {files_com-1.6.2 → files_com-1.6.4}/tests/test_image.py +0 -0
  172. {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_recipient.py +0 -0
  173. {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_registration.py +0 -0
  174. {files_com-1.6.2 → files_com-1.6.4}/tests/test_inbox_upload.py +0 -0
  175. {files_com-1.6.2 → files_com-1.6.4}/tests/test_invoice.py +0 -0
  176. {files_com-1.6.2 → files_com-1.6.4}/tests/test_invoice_line_item.py +0 -0
  177. {files_com-1.6.2 → files_com-1.6.4}/tests/test_ip_address.py +0 -0
  178. {files_com-1.6.2 → files_com-1.6.4}/tests/test_lock.py +0 -0
  179. {files_com-1.6.2 → files_com-1.6.4}/tests/test_message.py +0 -0
  180. {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_comment.py +0 -0
  181. {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_comment_reaction.py +0 -0
  182. {files_com-1.6.2 → files_com-1.6.4}/tests/test_message_reaction.py +0 -0
  183. {files_com-1.6.2 → files_com-1.6.4}/tests/test_notification.py +0 -0
  184. {files_com-1.6.2 → files_com-1.6.4}/tests/test_outbound_connection_log.py +0 -0
  185. {files_com-1.6.2 → files_com-1.6.4}/tests/test_path_util.py +0 -0
  186. {files_com-1.6.2 → files_com-1.6.4}/tests/test_payment.py +0 -0
  187. {files_com-1.6.2 → files_com-1.6.4}/tests/test_payment_line_item.py +0 -0
  188. {files_com-1.6.2 → files_com-1.6.4}/tests/test_permission.py +0 -0
  189. {files_com-1.6.2 → files_com-1.6.4}/tests/test_preview.py +0 -0
  190. {files_com-1.6.2 → files_com-1.6.4}/tests/test_priority.py +0 -0
  191. {files_com-1.6.2 → files_com-1.6.4}/tests/test_project.py +0 -0
  192. {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_hosting_request_log.py +0 -0
  193. {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_ip_address.py +0 -0
  194. {files_com-1.6.2 → files_com-1.6.4}/tests/test_public_key.py +0 -0
  195. {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_bandwidth_snapshot.py +0 -0
  196. {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_server.py +0 -0
  197. {files_com-1.6.2 → files_com-1.6.4}/tests/test_remote_server_configuration_file.py +0 -0
  198. {files_com-1.6.2 → files_com-1.6.4}/tests/test_request.py +0 -0
  199. {files_com-1.6.2 → files_com-1.6.4}/tests/test_restore.py +0 -0
  200. {files_com-1.6.2 → files_com-1.6.4}/tests/test_session.py +0 -0
  201. {files_com-1.6.2 → files_com-1.6.4}/tests/test_settings_change.py +0 -0
  202. {files_com-1.6.2 → files_com-1.6.4}/tests/test_sftp_action_log.py +0 -0
  203. {files_com-1.6.2 → files_com-1.6.4}/tests/test_sftp_host_key.py +0 -0
  204. {files_com-1.6.2 → files_com-1.6.4}/tests/test_share_group.py +0 -0
  205. {files_com-1.6.2 → files_com-1.6.4}/tests/test_share_group_member.py +0 -0
  206. {files_com-1.6.2 → files_com-1.6.4}/tests/test_siem_http_destination.py +0 -0
  207. {files_com-1.6.2 → files_com-1.6.4}/tests/test_site.py +0 -0
  208. {files_com-1.6.2 → files_com-1.6.4}/tests/test_snapshot.py +0 -0
  209. {files_com-1.6.2 → files_com-1.6.4}/tests/test_sso_strategy.py +0 -0
  210. {files_com-1.6.2 → files_com-1.6.4}/tests/test_status.py +0 -0
  211. {files_com-1.6.2 → files_com-1.6.4}/tests/test_style.py +0 -0
  212. {files_com-1.6.2 → files_com-1.6.4}/tests/test_sync_log.py +0 -0
  213. {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_by_top_level_dir.py +0 -0
  214. {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_daily_snapshot.py +0 -0
  215. {files_com-1.6.2 → files_com-1.6.4}/tests/test_usage_snapshot.py +0 -0
  216. {files_com-1.6.2 → files_com-1.6.4}/tests/test_user.py +0 -0
  217. {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_cipher_use.py +0 -0
  218. {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_request.py +0 -0
  219. {files_com-1.6.2 → files_com-1.6.4}/tests/test_user_sftp_client_use.py +0 -0
  220. {files_com-1.6.2 → files_com-1.6.4}/tests/test_web_dav_action_log.py +0 -0
  221. {files_com-1.6.2 → files_com-1.6.4}/tests/test_webhook_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: files_com
3
- Version: 1.6.2
3
+ Version: 1.6.4
4
4
  Summary: Python bindings for the Files.com API
5
5
  License: MIT
6
6
  Requires-Python: >=3.5
@@ -0,0 +1 @@
1
+ 1.6.4
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: files_com
3
- Version: 1.6.2
3
+ Version: 1.6.4
4
4
  Summary: Python bindings for the Files.com API
5
5
  License: MIT
6
6
  Requires-Python: >=3.5
@@ -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.2"
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)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "files_com"
7
- version = "1.6.2"
7
+ version = "1.6.4"
8
8
  description = "Python bindings for the Files.com API"
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
@@ -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